From d5b361c70b16e74e91d601aae90e66e03a7d6c84 Mon Sep 17 00:00:00 2001 From: Pavel Tatarskiy Date: Fri, 5 Jan 2024 14:31:11 +0300 Subject: [PATCH] migrate analytics --- .nvmrc | 1 + ..._0ffc2a56.c8a5d568b3002b296cb0.bundle.css} | 0 ...fc2a56.c8a5d568b3002b296cb0.bundle.css.gz} | Bin ...n_0ffc2a56.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...ffc2a56.c8a5d568b3002b296cb0.bundle.js.gz} | Bin 24297 -> 24296 bytes ...fc2a56.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...2a56.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 41261 bytes ...2a56.dc63956c75681b023819.bundle.js.map.gz | Bin 41261 -> 0 bytes ...n_357f8768.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...57f8768.c8a5d568b3002b296cb0.bundle.js.gz} | Bin 39832 -> 39830 bytes ...7f8768.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...768.c8a5d568b3002b296cb0.bundle.js.map.gz} | Bin 110656 -> 110655 bytes ..._493df0b3.c8a5d568b3002b296cb0.bundle.css} | 0 ...3df0b3.c8a5d568b3002b296cb0.bundle.css.gz} | Bin ...n_493df0b3.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...493df0b3.c8a5d568b3002b296cb0.bundle.js.gz | Bin 0 -> 13335 bytes ...3df0b3.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...f0b3.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 42001 bytes ...493df0b3.dc63956c75681b023819.bundle.js.gz | Bin 13335 -> 0 bytes ...f0b3.dc63956c75681b023819.bundle.js.map.gz | Bin 42001 -> 0 bytes ..._7a2bfe28.c8a5d568b3002b296cb0.bundle.css} | 2 +- ...2bfe28.c8a5d568b3002b296cb0.bundle.css.gz} | Bin 25190 -> 25185 bytes ...n_7a2bfe28.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...2bfe28.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ..._c1202e2b.c8a5d568b3002b296cb0.bundle.css} | 2 +- ...202e2b.c8a5d568b3002b296cb0.bundle.css.gz} | Bin 23511 -> 23506 bytes ...in_c1202e2b.c8a5d568b3002b296cb0.bundle.js | 2 + ...c1202e2b.c8a5d568b3002b296cb0.bundle.js.gz | Bin 0 -> 21639 bytes ...1202e2b.c8a5d568b3002b296cb0.bundle.js.map | 1 + ...2e2b.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 58781 bytes ...in_c1202e2b.dc63956c75681b023819.bundle.js | 2 - ...c1202e2b.dc63956c75681b023819.bundle.js.gz | Bin 21479 -> 0 bytes ...1202e2b.dc63956c75681b023819.bundle.js.map | 1 - ...2e2b.dc63956c75681b023819.bundle.js.map.gz | Bin 58578 -> 0 bytes ..._c98f95f3.c8a5d568b3002b296cb0.bundle.css} | 0 ...8f95f3.c8a5d568b3002b296cb0.bundle.css.gz} | Bin ...n_c98f95f3.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...c98f95f3.c8a5d568b3002b296cb0.bundle.js.gz | Bin 0 -> 16096 bytes ...8f95f3.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...95f3.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 42875 bytes ...c98f95f3.dc63956c75681b023819.bundle.js.gz | Bin 16097 -> 0 bytes ...95f3.dc63956c75681b023819.bundle.js.map.gz | Bin 42876 -> 0 bytes ...r_38c0ef19.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...8c0ef19.c8a5d568b3002b296cb0.bundle.js.gz} | Bin 42057 -> 42057 bytes ...c0ef19.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...ef19.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 118624 bytes ...ef19.dc63956c75681b023819.bundle.js.map.gz | Bin 118623 -> 0 bytes ...r_60a20123.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...60a20123.c8a5d568b3002b296cb0.bundle.js.gz | Bin 0 -> 23386 bytes ...a20123.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...0123.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 107196 bytes ...60a20123.dc63956c75681b023819.bundle.js.gz | Bin 23389 -> 0 bytes ...0123.dc63956c75681b023819.bundle.js.map.gz | Bin 107196 -> 0 bytes ...r_7274e1de.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...274e1de.c8a5d568b3002b296cb0.bundle.js.gz} | Bin 44466 -> 44466 bytes ...74e1de.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...e1de.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 161241 bytes ...e1de.dc63956c75681b023819.bundle.js.map.gz | Bin 161241 -> 0 bytes ..._9c5b28f6.c8a5d568b3002b296cb0.bundle.css} | 0 ...5b28f6.c8a5d568b3002b296cb0.bundle.css.gz} | Bin ...r_9c5b28f6.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...c5b28f6.c8a5d568b3002b296cb0.bundle.js.gz} | Bin 46564 -> 46563 bytes ...5b28f6.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...28f6.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 177576 bytes ...28f6.dc63956c75681b023819.bundle.js.map.gz | Bin 177576 -> 0 bytes ...r_b93726d7.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...93726d7.c8a5d568b3002b296cb0.bundle.js.gz} | Bin 46899 -> 46898 bytes ...3726d7.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...6d7.c8a5d568b3002b296cb0.bundle.js.map.gz} | Bin 104220 -> 104219 bytes ..._cfbf0a2e.c8a5d568b3002b296cb0.bundle.css} | 0 ...bf0a2e.c8a5d568b3002b296cb0.bundle.css.gz} | Bin ...r_cfbf0a2e.c8a5d568b3002b296cb0.bundle.js} | 12 +- ...cfbf0a2e.c8a5d568b3002b296cb0.bundle.js.gz | Bin 0 -> 34898 bytes ...fbf0a2e.c8a5d568b3002b296cb0.bundle.js.map | 1 + ...0a2e.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 131710 bytes ...cfbf0a2e.dc63956c75681b023819.bundle.js.gz | Bin 36760 -> 0 bytes ...fbf0a2e.dc63956c75681b023819.bundle.js.map | 1 - ...0a2e.dc63956c75681b023819.bundle.js.map.gz | Bin 138085 -> 0 bytes ...r_d939e436.c8a5d568b3002b296cb0.bundle.js} | 2 +- ...939e436.c8a5d568b3002b296cb0.bundle.js.gz} | Bin 45208 -> 45209 bytes ...39e436.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...e436.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 138014 bytes ...e436.dc63956c75681b023819.bundle.js.map.gz | Bin 138014 -> 0 bytes ui/dist/index.html | 2 - ui/dist/index.html.gz | Bin 1357 -> 1355 bytes ..._d0ae3f07.c8a5d568b3002b296cb0.bundle.css} | 0 ...ae3f07.c8a5d568b3002b296cb0.bundle.css.gz} | Bin ...n_d0ae3f07.c8a5d568b3002b296cb0.bundle.js} | 4 +- ...d0ae3f07.c8a5d568b3002b296cb0.bundle.js.gz | Bin 0 -> 4466 bytes ...ae3f07.c8a5d568b3002b296cb0.bundle.js.map} | 2 +- ...3f07.c8a5d568b3002b296cb0.bundle.js.map.gz | Bin 0 -> 15063 bytes ...d0ae3f07.dc63956c75681b023819.bundle.js.gz | Bin 4467 -> 0 bytes ...3f07.dc63956c75681b023819.bundle.js.map.gz | Bin 15064 -> 0 bytes ui/dist/vue-ssr-client-manifest.json | 189 +++++++++--------- ui/dist/vue-ssr-server-bundle.json | 6 +- ui/src/lib/analytics.js | 24 +-- .../mediaelement-plugins/advancedtracks.js | 3 +- ui/src/templates/ssr.ejs | 15 -- yarn.lock | 6 +- 99 files changed, 148 insertions(+), 172 deletions(-) create mode 100644 .nvmrc rename ui/dist/{async_main_0ffc2a56.dc63956c75681b023819.bundle.css => async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.css} (100%) rename ui/dist/{async_main_0ffc2a56.dc63956c75681b023819.bundle.css.gz => async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.css.gz} (100%) rename ui/dist/{async_main_0ffc2a56.dc63956c75681b023819.bundle.js => async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.js} (99%) rename ui/dist/{async_main_0ffc2a56.dc63956c75681b023819.bundle.js.gz => async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.js.gz} (99%) rename ui/dist/{async_main_0ffc2a56.dc63956c75681b023819.bundle.js.map => async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.js.map} (99%) create mode 100644 ui/dist/async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/async_main_0ffc2a56.dc63956c75681b023819.bundle.js.map.gz rename ui/dist/{async_main_357f8768.dc63956c75681b023819.bundle.js => async_main_357f8768.c8a5d568b3002b296cb0.bundle.js} (99%) rename ui/dist/{async_main_357f8768.dc63956c75681b023819.bundle.js.gz => async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.gz} (66%) rename ui/dist/{async_main_357f8768.dc63956c75681b023819.bundle.js.map => async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.map} (99%) rename ui/dist/{async_main_357f8768.dc63956c75681b023819.bundle.js.map.gz => async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.map.gz} (52%) rename ui/dist/{async_main_493df0b3.dc63956c75681b023819.bundle.css => async_main_493df0b3.c8a5d568b3002b296cb0.bundle.css} (100%) rename ui/dist/{async_main_493df0b3.dc63956c75681b023819.bundle.css.gz => async_main_493df0b3.c8a5d568b3002b296cb0.bundle.css.gz} (100%) rename ui/dist/{async_main_493df0b3.dc63956c75681b023819.bundle.js => async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js} (99%) create mode 100644 ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js.gz rename ui/dist/{async_main_493df0b3.dc63956c75681b023819.bundle.js.map => async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js.map} (99%) create mode 100644 ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.js.gz delete mode 100644 ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.js.map.gz rename ui/dist/{async_main_7a2bfe28.dc63956c75681b023819.bundle.css => async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.css} (65%) rename ui/dist/{async_main_7a2bfe28.dc63956c75681b023819.bundle.css.gz => async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.css.gz} (68%) rename ui/dist/{async_main_7a2bfe28.dc63956c75681b023819.bundle.js => async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.js} (53%) rename ui/dist/{async_main_7a2bfe28.dc63956c75681b023819.bundle.js.map => async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.js.map} (50%) rename ui/dist/{async_main_c1202e2b.dc63956c75681b023819.bundle.css => async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.css} (68%) rename ui/dist/{async_main_c1202e2b.dc63956c75681b023819.bundle.css.gz => async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.css.gz} (68%) create mode 100644 ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js create mode 100644 ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js.gz create mode 100644 ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js.map create mode 100644 ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.js delete mode 100644 ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.js.gz delete mode 100644 ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.js.map delete mode 100644 ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.js.map.gz rename ui/dist/{async_main_c98f95f3.dc63956c75681b023819.bundle.css => async_main_c98f95f3.c8a5d568b3002b296cb0.bundle.css} (100%) rename ui/dist/{async_main_c98f95f3.dc63956c75681b023819.bundle.css.gz => async_main_c98f95f3.c8a5d568b3002b296cb0.bundle.css.gz} (100%) rename ui/dist/{async_main_c98f95f3.dc63956c75681b023819.bundle.js => async_main_c98f95f3.c8a5d568b3002b296cb0.bundle.js} (99%) create mode 100644 ui/dist/async_main_c98f95f3.c8a5d568b3002b296cb0.bundle.js.gz rename ui/dist/{async_main_c98f95f3.dc63956c75681b023819.bundle.js.map => async_main_c98f95f3.c8a5d568b3002b296cb0.bundle.js.map} (99%) create mode 100644 ui/dist/async_main_c98f95f3.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/async_main_c98f95f3.dc63956c75681b023819.bundle.js.gz delete mode 100644 ui/dist/async_main_c98f95f3.dc63956c75681b023819.bundle.js.map.gz rename ui/dist/{async_vendor_38c0ef19.dc63956c75681b023819.bundle.js => async_vendor_38c0ef19.c8a5d568b3002b296cb0.bundle.js} (99%) rename ui/dist/{async_vendor_38c0ef19.dc63956c75681b023819.bundle.js.gz => async_vendor_38c0ef19.c8a5d568b3002b296cb0.bundle.js.gz} (99%) rename ui/dist/{async_vendor_38c0ef19.dc63956c75681b023819.bundle.js.map => async_vendor_38c0ef19.c8a5d568b3002b296cb0.bundle.js.map} (99%) create mode 100644 ui/dist/async_vendor_38c0ef19.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/async_vendor_38c0ef19.dc63956c75681b023819.bundle.js.map.gz rename ui/dist/{async_vendor_60a20123.dc63956c75681b023819.bundle.js => async_vendor_60a20123.c8a5d568b3002b296cb0.bundle.js} (99%) create mode 100644 ui/dist/async_vendor_60a20123.c8a5d568b3002b296cb0.bundle.js.gz rename ui/dist/{async_vendor_60a20123.dc63956c75681b023819.bundle.js.map => async_vendor_60a20123.c8a5d568b3002b296cb0.bundle.js.map} (99%) create mode 100644 ui/dist/async_vendor_60a20123.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/async_vendor_60a20123.dc63956c75681b023819.bundle.js.gz delete mode 100644 ui/dist/async_vendor_60a20123.dc63956c75681b023819.bundle.js.map.gz rename ui/dist/{async_vendor_7274e1de.dc63956c75681b023819.bundle.js => async_vendor_7274e1de.c8a5d568b3002b296cb0.bundle.js} (99%) rename ui/dist/{async_vendor_7274e1de.dc63956c75681b023819.bundle.js.gz => async_vendor_7274e1de.c8a5d568b3002b296cb0.bundle.js.gz} (58%) rename ui/dist/{async_vendor_7274e1de.dc63956c75681b023819.bundle.js.map => async_vendor_7274e1de.c8a5d568b3002b296cb0.bundle.js.map} (99%) create mode 100644 ui/dist/async_vendor_7274e1de.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/async_vendor_7274e1de.dc63956c75681b023819.bundle.js.map.gz rename ui/dist/{async_vendor_9c5b28f6.dc63956c75681b023819.bundle.css => async_vendor_9c5b28f6.c8a5d568b3002b296cb0.bundle.css} (100%) rename ui/dist/{async_vendor_9c5b28f6.dc63956c75681b023819.bundle.css.gz => async_vendor_9c5b28f6.c8a5d568b3002b296cb0.bundle.css.gz} (100%) rename ui/dist/{async_vendor_9c5b28f6.dc63956c75681b023819.bundle.js => async_vendor_9c5b28f6.c8a5d568b3002b296cb0.bundle.js} (99%) rename ui/dist/{async_vendor_9c5b28f6.dc63956c75681b023819.bundle.js.gz => async_vendor_9c5b28f6.c8a5d568b3002b296cb0.bundle.js.gz} (99%) rename ui/dist/{async_vendor_9c5b28f6.dc63956c75681b023819.bundle.js.map => async_vendor_9c5b28f6.c8a5d568b3002b296cb0.bundle.js.map} (99%) create mode 100644 ui/dist/async_vendor_9c5b28f6.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/async_vendor_9c5b28f6.dc63956c75681b023819.bundle.js.map.gz rename ui/dist/{async_vendor_b93726d7.dc63956c75681b023819.bundle.js => async_vendor_b93726d7.c8a5d568b3002b296cb0.bundle.js} (99%) rename ui/dist/{async_vendor_b93726d7.dc63956c75681b023819.bundle.js.gz => async_vendor_b93726d7.c8a5d568b3002b296cb0.bundle.js.gz} (99%) rename ui/dist/{async_vendor_b93726d7.dc63956c75681b023819.bundle.js.map => async_vendor_b93726d7.c8a5d568b3002b296cb0.bundle.js.map} (99%) rename ui/dist/{async_vendor_b93726d7.dc63956c75681b023819.bundle.js.map.gz => async_vendor_b93726d7.c8a5d568b3002b296cb0.bundle.js.map.gz} (99%) rename ui/dist/{async_vendor_cfbf0a2e.dc63956c75681b023819.bundle.css => async_vendor_cfbf0a2e.c8a5d568b3002b296cb0.bundle.css} (100%) rename ui/dist/{async_vendor_cfbf0a2e.dc63956c75681b023819.bundle.css.gz => async_vendor_cfbf0a2e.c8a5d568b3002b296cb0.bundle.css.gz} (100%) rename ui/dist/{async_vendor_cfbf0a2e.dc63956c75681b023819.bundle.js => async_vendor_cfbf0a2e.c8a5d568b3002b296cb0.bundle.js} (55%) create mode 100644 ui/dist/async_vendor_cfbf0a2e.c8a5d568b3002b296cb0.bundle.js.gz create mode 100644 ui/dist/async_vendor_cfbf0a2e.c8a5d568b3002b296cb0.bundle.js.map create mode 100644 ui/dist/async_vendor_cfbf0a2e.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/async_vendor_cfbf0a2e.dc63956c75681b023819.bundle.js.gz delete mode 100644 ui/dist/async_vendor_cfbf0a2e.dc63956c75681b023819.bundle.js.map delete mode 100644 ui/dist/async_vendor_cfbf0a2e.dc63956c75681b023819.bundle.js.map.gz rename ui/dist/{async_vendor_d939e436.dc63956c75681b023819.bundle.js => async_vendor_d939e436.c8a5d568b3002b296cb0.bundle.js} (99%) rename ui/dist/{async_vendor_d939e436.dc63956c75681b023819.bundle.js.gz => async_vendor_d939e436.c8a5d568b3002b296cb0.bundle.js.gz} (53%) rename ui/dist/{async_vendor_d939e436.dc63956c75681b023819.bundle.js.map => async_vendor_d939e436.c8a5d568b3002b296cb0.bundle.js.map} (99%) create mode 100644 ui/dist/async_vendor_d939e436.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/async_vendor_d939e436.dc63956c75681b023819.bundle.js.map.gz rename ui/dist/{main_d0ae3f07.dc63956c75681b023819.bundle.css => main_d0ae3f07.c8a5d568b3002b296cb0.bundle.css} (100%) rename ui/dist/{main_d0ae3f07.dc63956c75681b023819.bundle.css.gz => main_d0ae3f07.c8a5d568b3002b296cb0.bundle.css.gz} (100%) rename ui/dist/{main_d0ae3f07.dc63956c75681b023819.bundle.js => main_d0ae3f07.c8a5d568b3002b296cb0.bundle.js} (98%) create mode 100644 ui/dist/main_d0ae3f07.c8a5d568b3002b296cb0.bundle.js.gz rename ui/dist/{main_d0ae3f07.dc63956c75681b023819.bundle.js.map => main_d0ae3f07.c8a5d568b3002b296cb0.bundle.js.map} (99%) create mode 100644 ui/dist/main_d0ae3f07.c8a5d568b3002b296cb0.bundle.js.map.gz delete mode 100644 ui/dist/main_d0ae3f07.dc63956c75681b023819.bundle.js.gz delete mode 100644 ui/dist/main_d0ae3f07.dc63956c75681b023819.bundle.js.map.gz diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..48082f7 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +12 diff --git a/ui/dist/async_main_0ffc2a56.dc63956c75681b023819.bundle.css b/ui/dist/async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.css similarity index 100% rename from ui/dist/async_main_0ffc2a56.dc63956c75681b023819.bundle.css rename to ui/dist/async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.css diff --git a/ui/dist/async_main_0ffc2a56.dc63956c75681b023819.bundle.css.gz b/ui/dist/async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.css.gz similarity index 100% rename from ui/dist/async_main_0ffc2a56.dc63956c75681b023819.bundle.css.gz rename to ui/dist/async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.css.gz diff --git a/ui/dist/async_main_0ffc2a56.dc63956c75681b023819.bundle.js b/ui/dist/async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.js similarity index 99% rename from ui/dist/async_main_0ffc2a56.dc63956c75681b023819.bundle.js rename to ui/dist/async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.js index e88ed7f..5b6acc5 100644 --- a/ui/dist/async_main_0ffc2a56.dc63956c75681b023819.bundle.js +++ b/ui/dist/async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.js @@ -1,2 +1,2 @@ (window.webpackJsonp=window.webpackJsonp||[]).push([[0],{"+auJ":function(e,t,r){"use strict";var s=r("L2JU"),n=r("f+XQ"),o=r.n(n),i={computed:{...Object(s.c)({url:e=>e.playerSourceUrl})},methods:{async onCopy(){o.a.copy(this.url),this.$emit("close")},onBack(){this.$emit("close")}}};t.a=i},"/0XI":function(e,t,r){"use strict";var s=r("EYsV");r.n(s).a},"/8wu":function(e,t,r){"use strict";var s={props:["item"],computed:{friendlyName(){return this.item.friendlyName},friendlyNameCutted(){return this.item.friendlyName.length<=15?this.friendlyName:this.item.friendlyName.substring(0,15)+"..."},name(){return this.item.name},disabled(){return this.$store.state.file==this.name}},methods:{async onClick(){await this.$store.dispatch("open",this.name)}}};t.a=s},"/kDs":function(e,t,r){"use strict";var s=r("I/es");r.n(s).a},"07oU":function(e){e.exports=JSON.parse('{"osdb":{"reference":"Subtiltes brought to you by [OpenSubtitles.org](https://opensubtitles.org)"},"nav":{"blog":"blog","backers":"backers","support":"support","technology":"technology","dmca":"DMCA"},"form":{"common":{"success":"Request sent successfully!","error":"Request failed!","submitting":"Request is submitting...","button":{"submit":"Submit","reset":"Clear","close":"Close","add":"Add"}},"support":{"header":"Support","field":{"subject":{"label":"Subject:","placeholder":"Enter request subject..."},"description":{"label":"Description:","placeholder":"Enter problem description..."},"infohash":{"label":"Torrent-file infohash:","placeholder":"Enter infohash of torrent-file...","error":"Torrent infohash looks like f63b6c45b75197ce22d4602f91c738082ffad8c5"},"filename":{"label":"Filename:","placeholder":"Enter filename..."},"email":{"label":"Email:","placeholder":"Enter email..."},"cause":{"label":"Cause:","option":{"none":"Select one...","illegal":"Illegal content","malware":"Malware","error":"Site error","question":"Question/Suggestion"}},"work":{"label":"Work:","placeholder":"Enter work name of infringed work..."}},"error":{"exists":"Request with the same torrent infohash already exists and will be processed soon!"}}},"common":{"player sdk":"See [player-sdk-js](https://github.com/webtor-io/player-sdk-js) for advanced usage","donate":"Donate","default":"Default","episode":"Episode","previous":"Previous","next":"Next","browse":"Browse","size":"Size","attached":"Attached","upload":"Upload","nosubs":"No subtitles","nothing found":"Nothing found...","share":"Share","zip":"Download as ZIP-archive","wait download":"Download will start soon...","download":"Download","direct download":"Direct download","torrent download":"Download .torrent file","loading":"Loading...","loading torrent":"Magnetizing torrent-file...","sponsor":"Sponsor","sponsor login":"Already a Sponsor? Login here!","greeting":"Hello","not you":"Not you?","loading mediainfo":"Retriving mediainfo...","prepare to play":"Preparing Video Stream... Please Wait...","open torrent":"Open","latest torrents":"Your recent torrents","open demo torrent":"Watch Demo","copy link":"Copy link","copy":"Copy","lang":"en","apply":"Apply","back":"Back","audio":"Audio","track":"Track","subtitles":"Subtitles","subtitle":"Subtitle","num":"#","continueFrom":"Continue watching from","restart":"Start from the begining","copy hls":"Copy stream url","paste magnet url":"Paste magnet or infohash here...","no recent torrents":"There will be your recent torrents...","offer":["Resource **webtor.io** is a fully automated platform,","that makes it possbile for the users to stream content online,","transmitted through the **BitTorrent** protocol. Resource **webtor.io**","doesn\'t introduce any content changes during transmission, and it\'s storing","is carried out only for the caching purpose for a short period of time.","Uploading of the torrent-files, magnet-urls, content-transmitting, and also sharing links to the resource","**webtor.io** is initiated by the user. Resource **webtor.io**","is not responsible for the content that was transmitted by users, and also for","the possible harm that might be made. In case where facts of transmitting","of harmful or illegal content with the use of the resource **webtor.io**","are found please use our support feedback form for it\'s immediate blocking."],"mode":"mode","light":"light","dark":"dark","share link":"Share","magnet uri":"Magnet"},"stat":{"transcoding":"Transcoding","completed":"Completed","seeding":"Seeding","restoring":"Restoring state","initialization":"Fetching torrent","waiting":"Client initialization","waiting for peers":"Waiting for peers","idle":"Idle","terminated":"Terminated","from":"from","peer":"no peers | {n} peer | {n} peers"},"actions":{"download":"Download will start immediately..."},"errors":{"api unreachable":"API is unreachable. Please turn off your AntiMalware software for domain \\"{{apiDomain}}\\" and refresh the page to be able to use the service.","unknown error":"Unknow error","no peers for transcoding":"Not enough peers, transcoding aborted","hevc codec is not supported":"HEVC codec is not supported","resoulution over 1080p is not supported":"Resoulution over 1080p is not supported","network error":"Network error","hd video transcoding not supported":"HD-video transcoding not supported","disconnect":"Connection **unexpectedly** broken","wrong torrent file":"You have to upload **torrent**-file!","load":"Unable to load torrent-file! Try to load torrent-file with \\"Open torrent online button\\"","load embedded":"Video not available right now...Please try again later...","timeout":"Timeout occured. No more peers. Try again later.","transcoding error":"Transcoding error occured","large files not supported":"Large file are not supported yet (max size **{{maxFileSize}}**).","abused":"Content access restricted upon request of the Rightholder. Sorry.","adblock":"🍰 After disabling AdBlock you will gain additional download speed and will support my project!","win zip":["Use [7-Zip](https://www.7-zip.org/) under Windows to unpack this archive and ignore all CRC32 errors.","Archive is not corrupted, it just doesn\'t have CRC32 check sums, because it is generated on-the-fly."]},"video":{"ad wait":"You can skip this ad when video will be ready to play","skip":"Skip"},"magnet to torrent":{"lead":"Convert your magnet uri to torrent file online"},"torrent to ddl":{"lead":"Convert your torrent to direct download link","features":{"no file size restrictions":"No file size restrictions","no registration required":"No registration required","no software required":"No software required","absolutely free":"Absolutely free"}},"intro":{"header":"Download and play torrents","header2":"with free online torrent web player and downloader","faq":"Frequently asked questions","lead":["Just paste the magnet link or open the torrent file and start downloading or watching torrent content [safely and anonymously](https://blog.webtor.io/en/anonymous-and-secure/) through your web browser.","Works instantly without client and registration!"],"blog welcome":"Welcome to our new blog. You will find there informaton about new improvements and usefull guides!","sponsor welcome":"Don\'t forget to support the project! **SPONSOR GAINS ADDITIONAL SPEED AND DOESN\'T SEE ADS ANYMORE!**","extension":{"header":"Chrome Extension","body":"[Install extension for Google Chrome](https://chrome.google.com/webstore/detail/webtorio-watch-torrents-o/ngkpdaefpmokglfnmienfiaioffjodam) and **Webtor** will open all downloaded torrents and magnet-links in a new tab."},"cast":{"header":"On a big screen","body":["**Webtor** can cast video to your TV screen.","TV box with Google Cast support required."]},"instant streaming":{"header":"Instant streaming","body":["You don\'t have to wait while the whole file loads.","**Webtor** will start streaming from the first byte.","You don\'t have to think where to download torrents and spend your hard drive space anymore."]},"download zip":{"header":"Download everything as ZIP-archive","body":["**Webtor** easily converts your torrent to ZIP-archive on-the-fly preserving original directory structure.","Don\'t need full torrent? Just go to the required folder and push **\\"Download as ZIP-archive\\"** there!"]},"on-the-fly transcoding":{"header":"On-the-fly transcoding","body":["**Webtor** automatically converts audio and video to the desired playback format suitable for your browser.","**Webtor** supports video in AVI and MKV formats and lossless FLAC audio."]},"multiplatform":{"header":"Cross-platform","body":["You do not need additional extensions and plug-ins.","**Webtor** streams torrent-files on any device where the Chrome browser starts, whether it\'s Windows, Mac or Linux."]},"free":{"header":"Absolutely free without registration","body":["**Webtor** doesn\'t require to purchase paid subscriptions and it is absolutely free for everyone.","We do not track your activity and do not store any data about you.","Your visit is absolutely anonymous."]},"subtitles":{"header":"🎉 Subtitles","body":["**Webtor** automatically loads all available subtitles from [OpenSubtitles.org](https://www.opensubtitles.org/) for your preffered language.","All subtitles are available under player\'s **CC** button."]},"player":{"header":"🚀 Place the webtor-player on your site","body":["With the [SDK](https://github.com/webtor-io/embed-sdk-js) you can provide your users with the ability","to watch torrent-videos online on your website. Popular videos are cached and converted to various formats","for optimal playback on mobile devices!"]},"safe":{"header":"Do I need to turn on my VPN when using Webtor? Will my ISP see what I\'m downloading?","body":["For an ISP, using Webtor is no different from using any other site such as YouTube or Google.","All information between the user and Webtor is transmitted only over the secure HTTPS protocol, which excludes the possibility of interception.","The user\'s IP address is not broadcast to the BitTorrent network, since downloads from the BitTorrent network are only handled by Webtor servers.","Thus, the use of Webtor is anonymous and safe without any additional measures."]},"donate":{"header":"Can I remove ads when using Webtor?","body":["In order to remove ads, you just need to [start helping the project](https://www.patreon.com/bePatron?u=24145874).","In addition to removing ads, you will also be able to get faster loading speed and a heart icon in the interface!"]},"mobile":{"header":"Can I use Webtor on my mobile phone or tablet?","body":["Yes! You can use Webtor to download and stream torrents on any mobile device,","without having to install separate apps."]}}}')},"0JRs":function(e,t,r){var s={"./common.json":"itzk","./en.json":"07oU","./ru.json":"kgqA"};function n(e){var t=o(e);return r(t)}function o(e){if(!r.o(s,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return s[e]}n.keys=function(){return Object.keys(s)},n.resolve=o,e.exports=n,n.id="0JRs"},"0gJc":function(e,t,r){"use strict";var s=r("bx/L"),n=r("KIux"),o={components:{Layout:s.a,Magnet:n.a}};t.a=o},"0mPm":function(e,t,r){},"0x/m":function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",[0==e.tracks.length?r("div",[e._v(e._s(e.$t("common.nothing found")))]):e._e(),e._v(" "),r("b-form-group",[r("b-form-radio-group",{attrs:{options:e.options},on:{change:e.onChange},model:{value:e.selected,callback:function(t){e.selected=t},expression:"selected"}})],1),e._v(" "),r("b-button",{staticClass:"add-button",attrs:{variant:"outline-light",size:"sm"},on:{click:e.onAdd}},[e._v(e._s(e.$t("form.common.button.add")))])],1)},n=[];s._withStripped=!0},"18A7":function(e,t,r){"use strict";var s=r("s1CO");r.n(s).a},"1xot":function(e,t,r){},"21nL":function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this.$createElement,t=this._self._c||e;return t("label",{staticClass:"btn btn-primary btn-lg",attrs:{role:"button"},on:{click:this.onClick}},[t("span",{staticClass:"heart"},[this._v("❤️")]),t("span",{staticClass:"text"},[this._v(this._s(this.$tm("common.donate")))])])},n=[];s._withStripped=!0},"2Elr":function(e,t,r){"use strict";r.r(t);var s=r("AewB"),n=r("HNhU"),o=r("KHd+"),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"49b73412",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("49b73412")?a.reload("49b73412",i.options):a.createRecord("49b73412",i.options),e.hot.accept("AewB",function(e){s=r("AewB"),a.rerender("49b73412",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Tools/Torrent2DDL.vue",t.default=i.exports},"2Wtq":function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this.$createElement,t=this._self._c||e;return this.error?t("div",[this._v(this._s(this.$t("errors."+this.error.toLowerCase())))]):this._e()},n=[];s._withStripped=!0},"3Kio":function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this.$createElement,t=this._self._c||e;return this.isTranscode?t("span",{class:this.className,style:this.style}):this._e()},n=[];s._withStripped=!0},"4jiK":function(e,t,r){},"4nS2":function(e,t,r){"use strict";var s=r("wLxc"),n=r("h9rW"),o=(r("/kDs"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"21652083",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("21652083")?a.reload("21652083",i.options):a.createRecord("21652083",i.options),e.hot.accept("wLxc",function(e){s=r("wLxc"),a.rerender("21652083",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/Player/MediaElement/Continue.vue",t.a=i.exports},"55JJ":function(e,t,r){"use strict";var s=r("R5K/"),n=r("sDkP"),o=(r("s/KE"),r("AcVn"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"c1da0b94",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("c1da0b94")?a.reload("c1da0b94",i.options):a.createRecord("c1da0b94",i.options),e.hot.accept("R5K/",function(e){s=r("R5K/"),a.rerender("c1da0b94",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/ShareLink.vue",t.a=i.exports},"5r3R":function(e,t,r){"use strict";var s=r("4jiK");r.n(s).a},"61Tf":function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("layout",{scopedSlots:e._u([{key:"header",fn:function(){return[e._v(e._s(e.$t("nav.magnet to torrent")))]},proxy:!0},{key:"lead",fn:function(){return[e._v(e._s(e.$t("magnet to torrent.lead")))]},proxy:!0}])},[e._v(" "),e._v(" "),[r("magnet",{attrs:{size:"lg"}})]],2)},n=[];s._withStripped=!0},"804R":function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{staticClass:"container"},[r("b-button-group",e._l(e.buttons,(function(t,s){return r("b-button",{key:s,attrs:{pressed:s==e.selected,variant:"outline-light"},on:{click:function(t){return e.select(s)}}},[e._v(e._s(t.caption))])})),1),e._v(" "),r("div",{staticClass:"overflow-auto"},[r("keep-alive",[r(e.buttons[e.selected].component,{tag:"component"})],1)],1),e._v(" "),r("b-button",{staticClass:"track-close",attrs:{variant:"outline-light"},on:{click:e.onClose}},[e._v(e._s(e.$t("form.common.button.close")))]),e._v(" "),r("size",{staticClass:"track-size"})],1)},n=[];s._withStripped=!0},AEQ6:function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this.$createElement,t=this._self._c||e;return this.source&&!this.server?t(this.currentView,{tag:"component"}):this._e()},n=[];s._withStripped=!0},AcVn:function(e,t,r){"use strict";var s=r("MYWT");r.n(s).a},AewB:function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("layout",{scopedSlots:e._u([{key:"header",fn:function(){return[e._v(e._s(e.$t("nav.torrent to ddl")))]},proxy:!0},{key:"lead",fn:function(){return[e._v(e._s(e.$t("torrent to ddl.lead")))]},proxy:!0},{key:"features",fn:function(){return[r("ul",[r("li",[e._v(e._s(e.$t("torrent to ddl.features.no file size restrictions")))]),e._v(" "),r("li",[e._v(e._s(e.$t("torrent to ddl.features.no registration required")))]),e._v(" "),r("li",[e._v(e._s(e.$t("torrent to ddl.features.no software required")))]),e._v(" "),r("li",[e._v(e._s(e.$t("torrent to ddl.features.absolutely free")))])])]},proxy:!0}])},[e._v(" "),e._v(" "),e._v(" "),[r("send")]],2)},n=[];s._withStripped=!0},BiX8:function(e,t,r){"use strict";var s=r("DbVi"),n=r("/8wu"),o=(r("18A7"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"4144dc7b",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("4144dc7b")?a.reload("4144dc7b",i.options):a.createRecord("4144dc7b",i.options),e.hot.accept("DbVi",function(e){s=r("DbVi"),a.rerender("4144dc7b",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/Player/MediaElement/Browse/List/Item.vue",t.a=i.exports},C9vN:function(e,t,r){"use strict";var s=r("OtR4");r.n(s).a},CGcK:function(e,t,r){"use strict";var s=r("w/UF"),n=r("qRZh"),o=(r("C9vN"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"fadc06c8",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("fadc06c8")?a.reload("fadc06c8",i.options):a.createRecord("fadc06c8",i.options),e.hot.accept("w/UF",function(e){s=r("w/UF"),a.rerender("fadc06c8",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/Player/MediaElement/Tracks/Size.vue",t.a=i.exports},CtwN:function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",[r("div",{ref:"container",class:e.className}),e._v(" "),r("transition",{attrs:{name:"slide-fade"}},[r("div",{directives:[{name:"show",rawName:"v-show",value:e.showAdWithDelay&&!e.adClosed,expression:"showAdWithDelay && !adClosed"}],staticClass:"ad"},[r("span",{staticClass:"close",attrs:{href:"#"},on:{click:function(t){return t.preventDefault(),t.stopPropagation(),e.closeAd(t)}}}),e._v(" "),r("span",{staticClass:"ad-label"},[e._v("[ad]")]),e._v(" "),r("adsense-ad",{ref:"adsense",attrs:{"ad-name":"player","ad-style":"display:inline-block;width:300px;height:250px"}})],1)])],1)},n=[];s._withStripped=!0},DFv5:function(e,t,r){"use strict";var s=r("U6a7"),n=r("tBVs"),o=(r("thuj"),r("nDHN"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"65e74adf",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("65e74adf")?a.reload("65e74adf",i.options):a.createRecord("65e74adf",i.options),e.hot.accept("U6a7",function(e){s=r("U6a7"),a.rerender("65e74adf",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/MagnetURI.vue",t.a=i.exports},"DZD/":function(e,t,r){"use strict";var s=r("N9g/"),n=r("sbly"),o=r("L2JU"),i={computed:{...Object(o.c)({file:e=>e.file,src:e=>e.source.sources[0].src}),...Object(o.b)(["filePath"])},methods:{loaded(){this.$store.commit(s.P,this.filePath),this.$store.commit(s.T,n.a);const{dispatch:e}=this.$store;e("updateFileState",this.file),e("firstPlay")}},mounted(){this.$el.complete?this.loaded():this.$el.addEventListener("load",this.loaded)}};t.a=i},DbVi:function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this.$createElement;return(this._self._c||e)("b-button",{attrs:{disabled:this.disabled,variant:"outline-light"},on:{click:this.onClick}},[this._v(this._s(this.friendlyNameCutted))])},n=[];s._withStripped=!0},EYsV:function(e,t,r){},FfOD:function(e,t,r){"use strict";var s={data:()=>({selected:null,options:[],loading:!0,empty:!1,tracks:[]}),computed:{hasTracks(){return this.tracks.length},initSelected(){const e=this.$store.state.player.subtitle;return e&&e.hash&&"openSubtitles"==e.source?e.hash:null}},watch:{initSelected(){this.selected=this.initSelected}},methods:{onChange(e){let t=null;if(null!=e)for(const r of this.tracks)if(r.hash==e){t=r,t.source="openSubtitles";break}this.$store.dispatch("player/setSubtitle",t)}},async created(){const e=[];e.push({value:null,text:this.$t("common.nosubs")});const t=await this.$store.getters.openSubtitlesTracks;for(const r of t){const t=r.label,s=r.hash;e.push({value:s,text:t})}0==e.length&&(this.empty=!0),this.options=e,this.loading=!1,this.selected=this.initSelected,this.tracks=t}};t.a=s},GUEG:function(e,t,r){"use strict";var s=r("L2JU"),n={props:["options"],computed:{...Object(s.b)(["deliveryType"]),...Object(s.c)({duration:e=>e.player.duration,availableDuration:e=>e.player.availableDuration}),isTranscode(){return"transcode"==this.deliveryType},progress(){return this.isTranscode&&this.duration&&this.availableDuration?this.availableDuration/this.duration:0},style(){return`transform: scaleX(${this.progress});`},className(){return this.options.classPrefix+"time-available"}}};t.a=n},GnWK:function(e,t,r){"use strict";var s=r("21nL"),n=r("f+V6"),o=(r("m7p2"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"5e003d3b",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("5e003d3b")?a.reload("5e003d3b",i.options):a.createRecord("5e003d3b",i.options),e.hot.accept("21nL",function(e){s=r("21nL"),a.rerender("5e003d3b",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Sponsor.vue",t.a=i.exports},HNhU:function(e,t,r){"use strict";var s=r("bx/L"),n=r("U3uR"),o={components:{Layout:s.a,Send:n.a}};t.a=o},Hxnv:function(e,t,r){"use strict";var s=r("zLEy");r.n(s).a},"I/es":function(e,t,r){},IST1:function(e,t,r){"use strict";var s={components:{Layout:r("8wLX").a}};t.a=s},IhQc:function(e,t,r){"use strict";var s=r("L2JU");const n=r("aCH8");var o={data:()=>({tracks:[],selected:null,options:[]}),methods:{onChange(e){let t=null;if(null!=e)for(const r of this.tracks)if(r.hash==e){t=r,t.source="upload";break}this.$store.dispatch("player/setSubtitle",t)},getText:e=>new Promise((function(t,r){var s=new FileReader;s.readAsText(e),s.onloadend=function(){t(s.result)},s.onerror=function(e){r(e)}})),b64EncodeUnicode:e=>btoa(encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(function(e,t){return String.fromCharCode("0x"+t)}))),onAdd(){const e=this,t=document.createElement("input");t.type="file",this.iOS||(t.accept=".srt,.vtt",t.multiple=!0);const r=new MouseEvent("click",{bubbles:!0,cancelable:!0,view:window});t.dispatchEvent(r);t.onchange=async function(t){if(0!=this.files.length){0==e.options.length&&e.options.push({value:null,text:e.$t("common.nosubs")});for(const t of this.files)await e.addTrack(t);1==e.tracks.length&&(e.selected=e.tracks[0].hash,e.onChange(e.tracks[0].hash))}}},async addTrack(e){const t=await this.getText(e),r={kind:"subtitles"};r.label=e.name,r.srclang="en";const s=this.$store.getters.sdk,o="data:text/plain;base64,"+this.b64EncodeUnicode(t);r.src=await s.ext.streamUrl(o,{},{fileName:e.name}),r.hash=n(t),this.tracks.push(r),this.options.push({text:r.label,value:r.hash})},async processDrops(){if(0!=this.drops.length){0==this.options.length&&this.options.push({value:null,text:this.$t("common.nosubs")});for(const e of this.drops)this.addTrack(e);1==this.tracks.length&&(this.selected=this.tracks[0].hash,this.onChange(this.tracks[0].hash)),this.$store.dispatch("player/clearSubtitleDrops")}}},watch:{initSelected(){this.selected=this.initSelected},drops(){this.processDrops()}},computed:{...Object(s.c)({drops:e=>e.player.dropSubtitles}),...Object(s.b)(["iOS"]),initSelected(){const e=this.$store.state.player.subtitle;return e&&e.hash&&"upload"==e.source?e.hash:null}},async created(){const e=this.$store.state.player.subtitle;e&&e.hash&&"upload"==e.source&&(this.options.push({value:null,text:this.$t("common.nosubs")}),this.tracks.push(e),this.options.push({text:e.label,value:e.hash}),this.selected=e.hash)},async mounted(){this.processDrops()}};t.a=o},JLMZ:function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{class:e.className},[r("div",{staticClass:"pieces-container"},[r("svg",{staticClass:"pieces",attrs:{viewBox:"0 0 "+this.progressLength+" 100",xmlns:"http://www.w3.org/2000/svg"}},[r("rect",{attrs:{x:"0",y:"0",width:this.progressLength,height:"100",opacity:"0.3"}}),e._v(" "),e._l(this.highPrioritySegments,(function(e){return r("rect",{attrs:{x:e.start,y:"0",width:e.end-e.start,height:"100",opacity:"0.3"}})})),e._v(" "),e._l(this.completedSegments,(function(e){return r("rect",{attrs:{x:e.start,y:"0",width:e.end-e.start,height:"100"}})}))],2)]),e._v(" "),r("div",{staticClass:"web-seeder"},[e._v("\n "+e._s(e.webSeederMessage)+"\n ")]),e._v(" "),e.showTranscoderMessage&&!e.download?r("div",{staticClass:"transcoder"},[e._v("\n "+e._s(e.transcoderMessage)+"\n ")]):e._e()])},n=[];s._withStripped=!0},Jdbt:function(e,t,r){"use strict";var s=r("bEhR");r.n(s).a},"K4+X":function(e,t,r){"use strict";var s=r("vmc1");r.n(s).a},KVsd:function(e,t,r){"use strict";var s=r("iW2a"),n=r("fCZz"),o=r("KHd+"),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,null,null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("26f8bce4")?a.reload("26f8bce4",i.options):a.createRecord("26f8bce4",i.options),e.hot.accept("iW2a",function(e){s=r("iW2a"),a.rerender("26f8bce4",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/AudioTracks.vue",t.a=i.exports},L2Oj:function(e,t,r){"use strict";var s=r("T5iv"),n=r("W5EO"),o=(r("fB++"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,null,null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("30324068")?a.reload("30324068",i.options):a.createRecord("30324068",i.options),e.hot.accept("T5iv",function(e){s=r("T5iv"),a.rerender("30324068",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/Player/MediaElement/Tracks/Captions.vue",t.a=i.exports},Lrxn:function(e,t,r){},MYWT:function(e,t,r){},N83T:function(e,t,r){"use strict";var s=r("ZEd4"),n=r("hDGO"),o=(r("5r3R"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"7ae051e6",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("7ae051e6")?a.reload("7ae051e6",i.options):a.createRecord("7ae051e6",i.options),e.hot.accept("ZEd4",function(e){s=r("ZEd4"),a.rerender("7ae051e6",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/Player/MediaElement/Browse.vue",t.a=i.exports},NpxQ:function(e,t,r){"use strict";var s=r("f6Pc");r.n(s).a},O4yw:function(e,t,r){},OOij:function(e,t,r){},OtR4:function(e,t,r){},"R5K/":function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("a",{directives:[{name:"b-modal",rawName:"v-b-modal.share-link-modal",modifiers:{"share-link-modal":!0}}],staticClass:"btn share-link my-btn-link",attrs:{href:e.shareLink},on:{click:function(e){e.preventDefault(),e.stopPropagation()}}},[r("span",{staticClass:"icon-wrapper"},[r("icon",{attrs:{name:"share"}})],1),e._v(e._s(e.$tm("common.share link"))+"\n "),r("b-modal",{attrs:{id:"share-link-modal",centered:"","no-fade":"",title:e.$tm("common.share link")},scopedSlots:e._u([{key:"modal-footer",fn:function(t){var s=t.ok;return[r("b-button",{attrs:{variant:"primary"},on:{click:function(t){e.copyUrl(),s()}}},[e._v(e._s(e.$tm("common.copy link")))])]}}])},[r("b-input",{ref:"input",attrs:{readonly:"",value:e.shareLink}})],1)],1)},n=[];s._withStripped=!0},"S5+s":function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",[r("b-form-group",{attrs:{label:e.$t("common.subtitles")}},[r("b-form-radio-group",{attrs:{options:e.options},on:{change:e.onChange},model:{value:e.selected,callback:function(t){e.selected=t},expression:"selected"}})],1)],1)},n=[];s._withStripped=!0},T5iv:function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this.$createElement,t=this._self._c||e;return t("span",{class:this.className},[t("span",{staticClass:"container"},[t("span",{staticClass:"resizer",style:this.style},[t("span",{domProps:{innerHTML:this._s(this.caption)}})])])])},n=[];s._withStripped=!0},TWcO:function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this.$createElement,t=this._self._c||e;return t("layout",[t("h1",[this._v("Torrent to Magnet")])])},n=[];s._withStripped=!0},TgRi:function(e,t,r){"use strict";var s=r("0x/m"),n=r("IhQc"),o=r("KHd+"),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"55e2d448",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("55e2d448")?a.reload("55e2d448",i.options):a.createRecord("55e2d448",i.options),e.hot.accept("0x/m",function(e){s=r("0x/m"),a.rerender("55e2d448",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/Player/MediaElement/Tracks/Upload.vue",t.a=i.exports},U6a7:function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("a",{directives:[{name:"b-modal",rawName:"v-b-modal.magnet-uri-modal",modifiers:{"magnet-uri-modal":!0}}],staticClass:"btn magnet-uri my-btn-link",attrs:{href:e.magnetURI},on:{click:function(e){e.preventDefault(),e.stopPropagation()}}},[r("span",{staticClass:"icon-wrapper"},[r("icon",{attrs:{name:"magnet"}})],1),e._v(e._s(e.$tm("common.magnet uri"))+"\n "),r("b-modal",{attrs:{id:"magnet-uri-modal",centered:"","no-fade":"",title:e.$tm("common.magnet uri")},scopedSlots:e._u([{key:"modal-footer",fn:function(t){var s=t.ok;return[r("b-button",{attrs:{variant:"primary"},on:{click:function(t){e.copyUrl(),s()}}},[e._v(e._s(e.$tm("common.copy link")))])]}}])},[r("b-form-textarea",{ref:"input",attrs:{rows:"3","max-rows":"15",readonly:"",value:e.magnetURI}})],1)],1)},n=[];s._withStripped=!0},UEvZ:function(e,t,r){"use strict";var s=r("3Kio"),n=r("GUEG"),o=(r("vUtA"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"14ae74be",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("14ae74be")?a.reload("14ae74be",i.options):a.createRecord("14ae74be",i.options),e.hot.accept("3Kio",function(e){s=r("3Kio"),a.rerender("14ae74be",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/Player/MediaElement/AvailabeProgress.vue",t.a=i.exports},UmmU:function(e,t,r){"use strict";var s=r("VQ79"),n=r("+auJ"),o=(r("Hxnv"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"6e2a91ff",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("6e2a91ff")?a.reload("6e2a91ff",i.options):a.createRecord("6e2a91ff",i.options),e.hot.accept("VQ79",function(e){s=r("VQ79"),a.rerender("6e2a91ff",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/Player/MediaElement/Settings.vue",t.a=i.exports},"V+t5":function(e,t,r){"use strict";var s={computed:{error(){return this.$store.state.player.error}}};t.a=s},"VI+y":function(e,t,r){},VQ79:function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{staticClass:"container"},[r("div",{staticClass:"overflow-auto"},[r("div",{staticClass:"text-center"},[r("b-button",{staticClass:"copy",attrs:{variant:"outline-light"},on:{click:e.onCopy}},[e._v(e._s(e.$t("common.copy hls")))])],1)]),e._v(" "),r("b-button",{staticClass:"back",attrs:{variant:"outline-light"},on:{click:e.onBack}},[e._v(e._s(e.$t("common.back")))])],1)},n=[];s._withStripped=!0},W159:function(e,t,r){"use strict";r.r(t);var s=r("61Tf"),n=r("0gJc"),o=r("KHd+"),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"8fca792a",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("8fca792a")?a.reload("8fca792a",i.options):a.createRecord("8fca792a",i.options),e.hot.accept("61Tf",function(e){s=r("61Tf"),a.rerender("8fca792a",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Tools/Magnet2Torrent.vue",t.default=i.exports},W5EO:function(e,t,r){"use strict";var s=r("ZjLY"),n={computed:{style(){return{"font-size":100+10*this.$store.state.captionSize+"%"}},className(){let e="caption";return this.$store.state.playerControlsShown&&(e+=" caption-with-controls"),this.$store.state.playerFullScreen&&(e+=" caption-fullscreen"),e},caption(){const e=this.$store.state.caption;if(!e)return;let t=Object(s.b)(e.text).split(/(?:\r\n|\r|\n)/g);return t=t.map(e=>''+e+""),t.join("
")}}};t.a=n},WToM:function(e,t,r){"use strict";var s=r("2Wtq"),n=r("V+t5"),o=r("KHd+"),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,null,null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("72b22a5c")?a.reload("72b22a5c",i.options):a.createRecord("72b22a5c",i.options),e.hot.accept("2Wtq",function(e){s=r("2Wtq"),a.rerender("72b22a5c",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/Player/MediaElement/Error.vue",t.a=i.exports},"WcM+":function(e,t,r){"use strict";var s=r("JLMZ"),n=r("vPrv"),o=(r("smCh"),r("KHd+")),i=Object(o.a)(n.a,s.render,s.staticRenderFns,!1,null,"30983632",null),a=r("ZDXL");a.install(r("Kw5r")),a.compatible&&(e.hot.accept(),a.isRecorded("30983632")?a.reload("30983632",i.options):a.createRecord("30983632",i.options),e.hot.accept("JLMZ",function(e){s=r("JLMZ"),a.rerender("30983632",{render:s.render,staticRenderFns:s.staticRenderFns})}.bind(this))),i.options.__file="ui/src/components/App/Show/List/Item/Stat.vue",t.a=i.exports},"X/jv":function(e,t,r){"use strict";r.r(t),r.d(t,"render",(function(){return s})),r.d(t,"staticRenderFns",(function(){return n}));var s=function(){var e=this.$createElement,t=this._self._c||e;return t("div",[t("subtitles"),this._v(" "),t("audio-tracks")],1)},n=[];s._withStripped=!0},Xavy:function(e,t,r){"use strict";var s=r("f+XQ"),n=r.n(s),o={computed:{snippet(){return`\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../node_modules/svg-transform-loader/encode-query.js!../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Support.vue?vue&type=style&index=0&id=8dcff120&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../node_modules/svg-transform-loader/encode-query.js!../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Support.vue?vue&type=style&index=0&id=8dcff120&lang=scss&scoped=true&\"","\n\n","import mod from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Continue.vue?vue&type=style&index=0&id=21652083&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Continue.vue?vue&type=style&index=0&id=21652083&lang=scss&scoped=true&\"","var map = {\n\t\"./common.json\": \"itzk\",\n\t\"./en.json\": \"07oU\",\n\t\"./ru.json\": \"kgqA\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"0JRs\";","\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Magnet2Torrent.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Magnet2Torrent.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n _vm.tracks.length == 0\n ? _c(\"div\", [_vm._v(_vm._s(_vm.$t(\"common.nothing found\")))])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n [\n _c(\"b-form-radio-group\", {\n attrs: { options: _vm.options },\n on: { change: _vm.onChange },\n model: {\n value: _vm.selected,\n callback: function($$v) {\n _vm.selected = $$v\n },\n expression: \"selected\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"add-button\",\n attrs: { variant: \"outline-light\", size: \"sm\" },\n on: { click: _vm.onAdd }\n },\n [_vm._v(_vm._s(_vm.$t(\"form.common.button.add\")))]\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=style&index=0&id=4144dc7b&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=style&index=0&id=4144dc7b&lang=scss&scoped=true&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"btn btn-primary btn-lg\",\n attrs: { role: \"button\" },\n on: { click: _vm.onClick }\n },\n [\n _c(\"span\", { staticClass: \"heart\" }, [_vm._v(\"❤️\")]),\n _c(\"span\", { staticClass: \"text\" }, [\n _vm._v(_vm._s(_vm.$tm(\"common.donate\")))\n ])\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Torrent2DDL.vue?vue&type=template&id=49b73412&scoped=true&\"\nimport script from \"./Torrent2DDL.vue?vue&type=script&lang=js&\"\nexport * from \"./Torrent2DDL.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"49b73412\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('49b73412')) {\n api.createRecord('49b73412', component.options)\n } else {\n api.reload('49b73412', component.options)\n }\n module.hot.accept(\"./Torrent2DDL.vue?vue&type=template&id=49b73412&scoped=true&\", function () {\n api.rerender('49b73412', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Tools/Torrent2DDL.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.error\n ? _c(\"div\", [_vm._v(_vm._s(_vm.$t(\"errors.\" + _vm.error.toLowerCase())))])\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.isTranscode\n ? _c(\"span\", { class: _vm.className, style: _vm.style })\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Continue.vue?vue&type=template&id=21652083&scoped=true&\"\nimport script from \"./Continue.vue?vue&type=script&lang=js&\"\nexport * from \"./Continue.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Continue.vue?vue&type=style&index=0&id=21652083&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"21652083\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('21652083')) {\n api.createRecord('21652083', component.options)\n } else {\n api.reload('21652083', component.options)\n }\n module.hot.accept(\"./Continue.vue?vue&type=template&id=21652083&scoped=true&\", function () {\n api.rerender('21652083', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Continue.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./ShareLink.vue?vue&type=template&id=c1da0b94&scoped=true&\"\nimport script from \"./ShareLink.vue?vue&type=script&lang=js&\"\nexport * from \"./ShareLink.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ShareLink.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./ShareLink.vue?vue&type=style&index=1&id=c1da0b94&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c1da0b94\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('c1da0b94')) {\n api.createRecord('c1da0b94', component.options)\n } else {\n api.reload('c1da0b94', component.options)\n }\n module.hot.accept(\"./ShareLink.vue?vue&type=template&id=c1da0b94&scoped=true&\", function () {\n api.rerender('c1da0b94', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/ShareLink.vue\"\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browse.vue?vue&type=style&index=0&id=7ae051e6&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browse.vue?vue&type=style&index=0&id=7ae051e6&lang=scss&scoped=true&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"layout\",\n {\n scopedSlots: _vm._u([\n {\n key: \"header\",\n fn: function() {\n return [_vm._v(_vm._s(_vm.$t(\"nav.magnet to torrent\")))]\n },\n proxy: true\n },\n {\n key: \"lead\",\n fn: function() {\n return [_vm._v(_vm._s(_vm.$t(\"magnet to torrent.lead\")))]\n },\n proxy: true\n }\n ])\n },\n [_vm._v(\" \"), _vm._v(\" \"), [_c(\"magnet\", { attrs: { size: \"lg\" } })]],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"container\" },\n [\n _c(\n \"b-button-group\",\n _vm._l(_vm.buttons, function(btn, name) {\n return _c(\n \"b-button\",\n {\n key: name,\n attrs: {\n pressed: name == _vm.selected,\n variant: \"outline-light\"\n },\n on: {\n click: function($event) {\n return _vm.select(name)\n }\n }\n },\n [_vm._v(_vm._s(btn.caption))]\n )\n }),\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"overflow-auto\" },\n [\n _c(\n \"keep-alive\",\n [_c(_vm.buttons[_vm.selected].component, { tag: \"component\" })],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"track-close\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onClose }\n },\n [_vm._v(_vm._s(_vm.$t(\"form.common.button.close\")))]\n ),\n _vm._v(\" \"),\n _c(\"size\", { staticClass: \"track-size\" })\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.source && !_vm.server\n ? _c(_vm.currentView, { tag: \"component\" })\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=style&index=1&id=c1da0b94&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=style&index=1&id=c1da0b94&lang=scss&scoped=true&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"layout\",\n {\n scopedSlots: _vm._u([\n {\n key: \"header\",\n fn: function() {\n return [_vm._v(_vm._s(_vm.$t(\"nav.torrent to ddl\")))]\n },\n proxy: true\n },\n {\n key: \"lead\",\n fn: function() {\n return [_vm._v(_vm._s(_vm.$t(\"torrent to ddl.lead\")))]\n },\n proxy: true\n },\n {\n key: \"features\",\n fn: function() {\n return [\n _c(\"ul\", [\n _c(\"li\", [\n _vm._v(\n _vm._s(\n _vm.$t(\n \"torrent to ddl.features.no file size restrictions\"\n )\n )\n )\n ]),\n _vm._v(\" \"),\n _c(\"li\", [\n _vm._v(\n _vm._s(\n _vm.$t(\"torrent to ddl.features.no registration required\")\n )\n )\n ]),\n _vm._v(\" \"),\n _c(\"li\", [\n _vm._v(\n _vm._s(\n _vm.$t(\"torrent to ddl.features.no software required\")\n )\n )\n ]),\n _vm._v(\" \"),\n _c(\"li\", [\n _vm._v(\n _vm._s(_vm.$t(\"torrent to ddl.features.absolutely free\"))\n )\n ])\n ])\n ]\n },\n proxy: true\n }\n ])\n },\n [_vm._v(\" \"), _vm._v(\" \"), _vm._v(\" \"), [_c(\"send\")]],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Item.vue?vue&type=template&id=4144dc7b&scoped=true&\"\nimport script from \"./Item.vue?vue&type=script&lang=js&\"\nexport * from \"./Item.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Item.vue?vue&type=style&index=0&id=4144dc7b&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4144dc7b\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('4144dc7b')) {\n api.createRecord('4144dc7b', component.options)\n } else {\n api.reload('4144dc7b', component.options)\n }\n module.hot.accept(\"./Item.vue?vue&type=template&id=4144dc7b&scoped=true&\", function () {\n api.rerender('4144dc7b', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Browse/List/Item.vue\"\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Size.vue?vue&type=style&index=0&id=fadc06c8&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Size.vue?vue&type=style&index=0&id=fadc06c8&lang=scss&scoped=true&\"","import { render, staticRenderFns } from \"./Size.vue?vue&type=template&id=fadc06c8&scoped=true&\"\nimport script from \"./Size.vue?vue&type=script&lang=js&\"\nexport * from \"./Size.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Size.vue?vue&type=style&index=0&id=fadc06c8&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fadc06c8\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('fadc06c8')) {\n api.createRecord('fadc06c8', component.options)\n } else {\n api.reload('fadc06c8', component.options)\n }\n module.hot.accept(\"./Size.vue?vue&type=template&id=fadc06c8&scoped=true&\", function () {\n api.rerender('fadc06c8', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Size.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n _c(\"div\", { ref: \"container\", class: _vm.className }),\n _vm._v(\" \"),\n _c(\"transition\", { attrs: { name: \"slide-fade\" } }, [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.showAdWithDelay && !_vm.adClosed,\n expression: \"showAdWithDelay && !adClosed\"\n }\n ],\n staticClass: \"ad\"\n },\n [\n _c(\"span\", {\n staticClass: \"close\",\n attrs: { href: \"#\" },\n on: {\n click: function($event) {\n $event.preventDefault()\n $event.stopPropagation()\n return _vm.closeAd($event)\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", { staticClass: \"ad-label\" }, [_vm._v(\"[ad]\")]),\n _vm._v(\" \"),\n _c(\"adsense-ad\", {\n ref: \"adsense\",\n attrs: {\n \"ad-name\": \"player\",\n \"ad-style\": \"display:inline-block;width:300px;height:250px\"\n }\n })\n ],\n 1\n )\n ])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./MagnetURI.vue?vue&type=template&id=65e74adf&scoped=true&\"\nimport script from \"./MagnetURI.vue?vue&type=script&lang=js&\"\nexport * from \"./MagnetURI.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MagnetURI.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./MagnetURI.vue?vue&type=style&index=1&id=65e74adf&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"65e74adf\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('65e74adf')) {\n api.createRecord('65e74adf', component.options)\n } else {\n api.reload('65e74adf', component.options)\n }\n module.hot.accept(\"./MagnetURI.vue?vue&type=template&id=65e74adf&scoped=true&\", function () {\n api.rerender('65e74adf', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/MagnetURI.vue\"\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Image.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Image.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"b-button\",\n {\n attrs: { disabled: _vm.disabled, variant: \"outline-light\" },\n on: { click: _vm.onClick }\n },\n [_vm._v(_vm._s(_vm.friendlyNameCutted))]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenSubtitles.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenSubtitles.vue?vue&type=script&lang=js&\"","\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailabeProgress.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailabeProgress.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Sponsor.vue?vue&type=template&id=5e003d3b&scoped=true&\"\nimport script from \"./Sponsor.vue?vue&type=script&lang=js&\"\nexport * from \"./Sponsor.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Sponsor.vue?vue&type=style&index=0&id=5e003d3b&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5e003d3b\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('5e003d3b')) {\n api.createRecord('5e003d3b', component.options)\n } else {\n api.reload('5e003d3b', component.options)\n }\n module.hot.accept(\"./Sponsor.vue?vue&type=template&id=5e003d3b&scoped=true&\", function () {\n api.rerender('5e003d3b', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Sponsor.vue\"\nexport default component.exports","\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Torrent2DDL.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Torrent2DDL.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=6e2a91ff&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=6e2a91ff&lang=scss&scoped=true&\"","\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Torrent2Magnet.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Torrent2Magnet.vue?vue&type=script&lang=js&\"","\n\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { class: _vm.className }, [\n _c(\"div\", { staticClass: \"pieces-container\" }, [\n _c(\n \"svg\",\n {\n staticClass: \"pieces\",\n attrs: {\n viewBox: \"0 0 \" + this.progressLength + \" 100\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }\n },\n [\n _c(\"rect\", {\n attrs: {\n x: \"0\",\n y: \"0\",\n width: this.progressLength,\n height: \"100\",\n opacity: \"0.3\"\n }\n }),\n _vm._v(\" \"),\n _vm._l(this.highPrioritySegments, function(s) {\n return _c(\"rect\", {\n attrs: {\n x: s.start,\n y: \"0\",\n width: s.end - s.start,\n height: \"100\",\n opacity: \"0.3\"\n }\n })\n }),\n _vm._v(\" \"),\n _vm._l(this.completedSegments, function(s) {\n return _c(\"rect\", {\n attrs: {\n x: s.start,\n y: \"0\",\n width: s.end - s.start,\n height: \"100\"\n }\n })\n })\n ],\n 2\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"web-seeder\" }, [\n _vm._v(\"\\n \" + _vm._s(_vm.webSeederMessage) + \"\\n \")\n ]),\n _vm._v(\" \"),\n _vm.showTranscoderMessage && !_vm.download\n ? _c(\"div\", { staticClass: \"transcoder\" }, [\n _vm._v(\"\\n \" + _vm._s(_vm.transcoderMessage) + \"\\n \")\n ])\n : _vm._e()\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../node_modules/css-loader/index.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaElement.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../node_modules/css-loader/index.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaElement.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenSubtitles.vue?vue&type=style&index=0&id=0d5ea726&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenSubtitles.vue?vue&type=style&index=0&id=0d5ea726&lang=scss&scoped=true&\"","import { render, staticRenderFns } from \"./AudioTracks.vue?vue&type=template&id=26f8bce4&\"\nimport script from \"./AudioTracks.vue?vue&type=script&lang=js&\"\nexport * from \"./AudioTracks.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('26f8bce4')) {\n api.createRecord('26f8bce4', component.options)\n } else {\n api.reload('26f8bce4', component.options)\n }\n module.hot.accept(\"./AudioTracks.vue?vue&type=template&id=26f8bce4&\", function () {\n api.rerender('26f8bce4', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/AudioTracks.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Captions.vue?vue&type=template&id=30324068&\"\nimport script from \"./Captions.vue?vue&type=script&lang=js&\"\nexport * from \"./Captions.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Captions.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('30324068')) {\n api.createRecord('30324068', component.options)\n } else {\n api.reload('30324068', component.options)\n }\n module.hot.accept(\"./Captions.vue?vue&type=template&id=30324068&\", function () {\n api.rerender('30324068', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Captions.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Browse.vue?vue&type=template&id=7ae051e6&scoped=true&\"\nimport script from \"./Browse.vue?vue&type=script&lang=js&\"\nexport * from \"./Browse.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Browse.vue?vue&type=style&index=0&id=7ae051e6&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7ae051e6\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('7ae051e6')) {\n api.createRecord('7ae051e6', component.options)\n } else {\n api.reload('7ae051e6', component.options)\n }\n module.hot.accept(\"./Browse.vue?vue&type=template&id=7ae051e6&scoped=true&\", function () {\n api.rerender('7ae051e6', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Browse.vue\"\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tracks.vue?vue&type=style&index=0&id=6a489638&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tracks.vue?vue&type=style&index=0&id=6a489638&lang=scss&scoped=true&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"a\",\n {\n directives: [\n {\n name: \"b-modal\",\n rawName: \"v-b-modal.share-link-modal\",\n modifiers: { \"share-link-modal\": true }\n }\n ],\n staticClass: \"btn share-link my-btn-link\",\n attrs: { href: _vm.shareLink },\n on: {\n click: function($event) {\n $event.preventDefault()\n $event.stopPropagation()\n }\n }\n },\n [\n _c(\n \"span\",\n { staticClass: \"icon-wrapper\" },\n [_c(\"icon\", { attrs: { name: \"share\" } })],\n 1\n ),\n _vm._v(_vm._s(_vm.$tm(\"common.share link\")) + \"\\n \"),\n _c(\n \"b-modal\",\n {\n attrs: {\n id: \"share-link-modal\",\n centered: \"\",\n \"no-fade\": \"\",\n title: _vm.$tm(\"common.share link\")\n },\n scopedSlots: _vm._u([\n {\n key: \"modal-footer\",\n fn: function(ref) {\n var ok = ref.ok\n return [\n _c(\n \"b-button\",\n {\n attrs: { variant: \"primary\" },\n on: {\n click: function($event) {\n _vm.copyUrl()\n ok()\n }\n }\n },\n [_vm._v(_vm._s(_vm.$tm(\"common.copy link\")))]\n )\n ]\n }\n }\n ])\n },\n [\n _c(\"b-input\", {\n ref: \"input\",\n attrs: { readonly: \"\", value: _vm.shareLink }\n })\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n _c(\n \"b-form-group\",\n { attrs: { label: _vm.$t(\"common.subtitles\") } },\n [\n _c(\"b-form-radio-group\", {\n attrs: { options: _vm.options },\n on: { change: _vm.onChange },\n model: {\n value: _vm.selected,\n callback: function($$v) {\n _vm.selected = $$v\n },\n expression: \"selected\"\n }\n })\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"span\", { class: _vm.className }, [\n _c(\"span\", { staticClass: \"container\" }, [\n _c(\"span\", { staticClass: \"resizer\", style: _vm.style }, [\n _c(\"span\", { domProps: { innerHTML: _vm._s(_vm.caption) } })\n ])\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"layout\", [_c(\"h1\", [_vm._v(\"Torrent to Magnet\")])])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Upload.vue?vue&type=template&id=55e2d448&scoped=true&\"\nimport script from \"./Upload.vue?vue&type=script&lang=js&\"\nexport * from \"./Upload.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"55e2d448\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('55e2d448')) {\n api.createRecord('55e2d448', component.options)\n } else {\n api.reload('55e2d448', component.options)\n }\n module.hot.accept(\"./Upload.vue?vue&type=template&id=55e2d448&scoped=true&\", function () {\n api.rerender('55e2d448', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Upload.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"a\",\n {\n directives: [\n {\n name: \"b-modal\",\n rawName: \"v-b-modal.magnet-uri-modal\",\n modifiers: { \"magnet-uri-modal\": true }\n }\n ],\n staticClass: \"btn magnet-uri my-btn-link\",\n attrs: { href: _vm.magnetURI },\n on: {\n click: function($event) {\n $event.preventDefault()\n $event.stopPropagation()\n }\n }\n },\n [\n _c(\n \"span\",\n { staticClass: \"icon-wrapper\" },\n [_c(\"icon\", { attrs: { name: \"magnet\" } })],\n 1\n ),\n _vm._v(_vm._s(_vm.$tm(\"common.magnet uri\")) + \"\\n \"),\n _c(\n \"b-modal\",\n {\n attrs: {\n id: \"magnet-uri-modal\",\n centered: \"\",\n \"no-fade\": \"\",\n title: _vm.$tm(\"common.magnet uri\")\n },\n scopedSlots: _vm._u([\n {\n key: \"modal-footer\",\n fn: function(ref) {\n var ok = ref.ok\n return [\n _c(\n \"b-button\",\n {\n attrs: { variant: \"primary\" },\n on: {\n click: function($event) {\n _vm.copyUrl()\n ok()\n }\n }\n },\n [_vm._v(_vm._s(_vm.$tm(\"common.copy link\")))]\n )\n ]\n }\n }\n ])\n },\n [\n _c(\"b-form-textarea\", {\n ref: \"input\",\n attrs: {\n rows: \"3\",\n \"max-rows\": \"15\",\n readonly: \"\",\n value: _vm.magnetURI\n }\n })\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./AvailabeProgress.vue?vue&type=template&id=14ae74be&scoped=true&\"\nimport script from \"./AvailabeProgress.vue?vue&type=script&lang=js&\"\nexport * from \"./AvailabeProgress.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AvailabeProgress.vue?vue&type=style&index=0&id=14ae74be&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"14ae74be\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('14ae74be')) {\n api.createRecord('14ae74be', component.options)\n } else {\n api.reload('14ae74be', component.options)\n }\n module.hot.accept(\"./AvailabeProgress.vue?vue&type=template&id=14ae74be&scoped=true&\", function () {\n api.rerender('14ae74be', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/AvailabeProgress.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Settings.vue?vue&type=template&id=6e2a91ff&scoped=true&\"\nimport script from \"./Settings.vue?vue&type=script&lang=js&\"\nexport * from \"./Settings.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Settings.vue?vue&type=style&index=0&id=6e2a91ff&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6e2a91ff\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('6e2a91ff')) {\n api.createRecord('6e2a91ff', component.options)\n } else {\n api.reload('6e2a91ff', component.options)\n }\n module.hot.accept(\"./Settings.vue?vue&type=template&id=6e2a91ff&scoped=true&\", function () {\n api.rerender('6e2a91ff', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Settings.vue\"\nexport default component.exports","\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Error.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Error.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"container\" },\n [\n _c(\"div\", { staticClass: \"overflow-auto\" }, [\n _c(\n \"div\",\n { staticClass: \"text-center\" },\n [\n _c(\n \"b-button\",\n {\n staticClass: \"copy\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onCopy }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.copy hls\")))]\n )\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"back\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onBack }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.back\")))]\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Magnet2Torrent.vue?vue&type=template&id=8fca792a&scoped=true&\"\nimport script from \"./Magnet2Torrent.vue?vue&type=script&lang=js&\"\nexport * from \"./Magnet2Torrent.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8fca792a\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('8fca792a')) {\n api.createRecord('8fca792a', component.options)\n } else {\n api.reload('8fca792a', component.options)\n }\n module.hot.accept(\"./Magnet2Torrent.vue?vue&type=template&id=8fca792a&scoped=true&\", function () {\n api.rerender('8fca792a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Tools/Magnet2Torrent.vue\"\nexport default component.exports","\n\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Error.vue?vue&type=template&id=72b22a5c&\"\nimport script from \"./Error.vue?vue&type=script&lang=js&\"\nexport * from \"./Error.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('72b22a5c')) {\n api.createRecord('72b22a5c', component.options)\n } else {\n api.reload('72b22a5c', component.options)\n }\n module.hot.accept(\"./Error.vue?vue&type=template&id=72b22a5c&\", function () {\n api.rerender('72b22a5c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Error.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Stat.vue?vue&type=template&id=30983632&scoped=true&\"\nimport script from \"./Stat.vue?vue&type=script&lang=js&\"\nexport * from \"./Stat.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Stat.vue?vue&type=style&index=0&id=30983632&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"30983632\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('30983632')) {\n api.createRecord('30983632', component.options)\n } else {\n api.reload('30983632', component.options)\n }\n module.hot.accept(\"./Stat.vue?vue&type=template&id=30983632&scoped=true&\", function () {\n api.rerender('30983632', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/List/Item/Stat.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", [_c(\"subtitles\"), _vm._v(\" \"), _c(\"audio-tracks\")], 1)\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Embed.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Embed.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"layout\",\n [\n _c(\n \"b-alert\",\n { attrs: { show: this.status == \"success\", variant: \"success\" } },\n [_vm._v(_vm._s(_vm.$tm(\"form.common.success\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"b-alert\",\n { attrs: { show: this.status == \"error\", variant: \"danger\" } },\n [_vm._v(_vm._s(_vm.$tm(\"form.common.error\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"b-alert\",\n { attrs: { show: this.status == \"exists\", variant: \"warning\" } },\n [_vm._v(_vm._s(_vm.$tm(\"form.support.error.exists\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"b-alert\",\n { attrs: { show: this.status == \"submitting\", variant: \"info\" } },\n [_vm._v(_vm._s(_vm.$tm(\"form.common.submitting\")))]\n ),\n _vm._v(\" \"),\n _vm.show\n ? _c(\n \"b-form\",\n {\n on: {\n submit: function($event) {\n $event.stopPropagation()\n $event.preventDefault()\n return _vm.onSubmit($event)\n },\n reset: function($event) {\n $event.stopPropagation()\n $event.preventDefault()\n return _vm.onReset($event)\n }\n }\n },\n [\n _c(\"h1\", [_vm._v(_vm._s(_vm.$tm(\"form.support.header\")))]),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"cause\",\n label: _vm.$tm(\"form.support.field.cause.label\"),\n \"label-for\": \"cause\"\n }\n },\n [\n _c(\"b-form-select\", {\n attrs: { id: \"cause\", options: _vm.cause, required: \"\" },\n model: {\n value: _vm.form.cause,\n callback: function($$v) {\n _vm.$set(_vm.form, \"cause\", $$v)\n },\n expression: \"form.cause\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"subject-group\",\n label: _vm.$tm(\"form.support.field.subject.label\"),\n \"label-for\": \"subject\"\n }\n },\n [\n _c(\"b-form-input\", {\n attrs: {\n id: \"subject\",\n required: \"\",\n placeholder: _vm.$tm(\n \"form.support.field.subject.placeholder\"\n )\n },\n model: {\n value: _vm.form.subject,\n callback: function($$v) {\n _vm.$set(_vm.form, \"subject\", $$v)\n },\n expression: \"form.subject\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"description-group\",\n label: _vm.$tm(\"form.support.field.description.label\"),\n \"label-for\": \"description\"\n }\n },\n [\n _c(\"b-form-textarea\", {\n attrs: {\n id: \"description\",\n placeholder: _vm.$tm(\n \"form.support.field.description.placeholder\"\n ),\n rows: \"3\",\n \"max-rows\": \"6\",\n required: \"\"\n },\n model: {\n value: _vm.form.description,\n callback: function($$v) {\n _vm.$set(_vm.form, \"description\", $$v)\n },\n expression: \"form.description\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n !_vm.isQuestion && _vm.hasCause\n ? _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"infohash-group\",\n label: _vm.$tm(\"form.support.field.infohash.label\"),\n \"label-for\": \"infohash\"\n }\n },\n [\n _c(\"b-form-input\", {\n attrs: {\n id: \"infohash\",\n required: \"\",\n state: this.infohashState,\n placeholder: _vm.$tm(\n \"form.support.field.infohash.placeholder\"\n ),\n formatter: _vm.infohashFormatter\n },\n model: {\n value: _vm.form.infohash,\n callback: function($$v) {\n _vm.$set(_vm.form, \"infohash\", $$v)\n },\n expression: \"form.infohash\"\n }\n }),\n _vm._v(\" \"),\n _c(\n \"b-form-invalid-feedback\",\n { attrs: { id: \"infohash-feedback\" } },\n [\n _vm._v(\n \"\\n \" +\n _vm._s(\n _vm.$tm(\"form.support.field.infohash.error\")\n ) +\n \"\\n \"\n )\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n !_vm.isQuestion && _vm.hasCause\n ? _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"filename-group\",\n label: _vm.$tm(\"form.support.field.filename.label\"),\n \"label-for\": \"filename\"\n }\n },\n [\n _c(\"b-form-input\", {\n attrs: {\n id: \"filename\",\n placeholder: _vm.$tm(\n \"form.support.field.filename.placeholder\"\n )\n },\n model: {\n value: _vm.form.filename,\n callback: function($$v) {\n _vm.$set(_vm.form, \"filename\", $$v)\n },\n expression: \"form.filename\"\n }\n })\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"email-group\",\n label: _vm.$tm(\"form.support.field.email.label\"),\n \"label-for\": \"email\"\n }\n },\n [\n _c(\"b-form-input\", {\n attrs: {\n id: \"email\",\n type: \"email\",\n required: \"\",\n placeholder: _vm.$tm(\n \"form.support.field.email.placeholder\"\n )\n },\n model: {\n value: _vm.form.email,\n callback: function($$v) {\n _vm.$set(_vm.form, \"email\", $$v)\n },\n expression: \"form.email\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.isIllegal\n ? _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"work-group\",\n label: _vm.$tm(\"form.support.field.work.label\"),\n \"label-for\": \"work\"\n }\n },\n [\n _c(\"b-form-input\", {\n attrs: {\n id: \"work\",\n required: \"\",\n placeholder: _vm.$tm(\n \"form.support.field.work.placeholder\"\n )\n },\n model: {\n value: _vm.form.work,\n callback: function($$v) {\n _vm.$set(_vm.form, \"work\", $$v)\n },\n expression: \"form.work\"\n }\n })\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"buttons\" },\n [\n _c(\n \"b-button\",\n {\n attrs: {\n type: \"submit\",\n disabled: _vm.isSubmitting,\n variant: \"primary\"\n }\n },\n [_vm._v(_vm._s(_vm.$tm(\"form.common.button.submit\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n { attrs: { type: \"reset\", variant: \"danger\" } },\n [_vm._v(_vm._s(_vm.$tm(\"form.common.button.reset\")))]\n )\n ],\n 1\n )\n ],\n 1\n )\n : _vm._e()\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"container\" }, [\n _c(\n \"div\",\n {\n staticClass: \"current\",\n on: {\n click: function($event) {\n $event.preventDefault()\n $event.stopPropagation()\n }\n }\n },\n [\n _c(\n \"keep-alive\",\n [_c(_vm.current, { tag: \"component\", on: { list: _vm.onList } })],\n 1\n )\n ],\n 1\n )\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n _vm.loading\n ? _c(\"div\", [_vm._v(_vm._s(_vm.$t(\"common.loading\")))])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.empty\n ? _c(\"div\", [_vm._v(_vm._s(_vm.$t(\"common.nothing found\")))])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n [\n _c(\"b-form-radio-group\", {\n attrs: { options: _vm.options },\n on: { change: _vm.onChange },\n model: {\n value: _vm.selected,\n callback: function($$v) {\n _vm.selected = $$v\n },\n expression: \"selected\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.hasTracks\n ? _c(\"div\", {\n staticClass: \"osdb\",\n domProps: { innerHTML: _vm._s(_vm.$tm(\"osdb.reference\")) }\n })\n : _vm._e()\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Subtitles.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Subtitles.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MediaElement.vue?vue&type=template&id=3411b403&\"\nimport script from \"./MediaElement.vue?vue&type=script&lang=js&\"\nexport * from \"./MediaElement.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MediaElement.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3411b403')) {\n api.createRecord('3411b403', component.options)\n } else {\n api.reload('3411b403', component.options)\n }\n module.hot.accept(\"./MediaElement.vue?vue&type=template&id=3411b403&\", function () {\n api.rerender('3411b403', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./List.vue?vue&type=template&id=3f0a6af7&scoped=true&\"\nimport script from \"./List.vue?vue&type=script&lang=js&\"\nexport * from \"./List.vue?vue&type=script&lang=js&\"\nimport style0 from \"./List.vue?vue&type=style&index=0&id=3f0a6af7&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3f0a6af7\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3f0a6af7')) {\n api.createRecord('3f0a6af7', component.options)\n } else {\n api.reload('3f0a6af7', component.options)\n }\n module.hot.accept(\"./List.vue?vue&type=template&id=3f0a6af7&scoped=true&\", function () {\n api.rerender('3f0a6af7', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Browse/List.vue\"\nexport default component.exports","\n\n\n\n","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"buttons\" },\n [\n _vm.hasPrev\n ? _c(\n \"b-button\",\n {\n staticClass: \"play-prev\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onPrev }\n },\n [_vm._v(\"← \" + _vm._s(_vm.$t(\"common.previous\")))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.hasBrowse\n ? _c(\n \"b-button\",\n {\n staticClass: \"browse\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onBrowse }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.browse\")))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.hasNext\n ? _c(\n \"b-button\",\n {\n staticClass: \"play-next\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onNext }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.next\")) + \" →\")]\n )\n : _vm._e()\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Image.vue?vue&type=template&id=7c3232e0&scoped=true&\"\nimport script from \"./Image.vue?vue&type=script&lang=js&\"\nexport * from \"./Image.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Image.vue?vue&type=style&index=0&id=7c3232e0&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7c3232e0\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('7c3232e0')) {\n api.createRecord('7c3232e0', component.options)\n } else {\n api.reload('7c3232e0', component.options)\n }\n module.hot.accept(\"./Image.vue?vue&type=template&id=7c3232e0&scoped=true&\", function () {\n api.rerender('7c3232e0', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/Image.vue\"\nexport default component.exports","\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Support.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Support.vue?vue&type=script&lang=js&\"","\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sponsor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sponsor.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captions.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captions.vue?vue&type=style&index=0&lang=scss&\"","\n\n","import mod from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AudioTracks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AudioTracks.vue?vue&type=script&lang=js&\"","\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tracks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tracks.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"img\", { attrs: { src: _vm.src } })\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Tracks.vue?vue&type=template&id=6a489638&scoped=true&\"\nimport script from \"./Tracks.vue?vue&type=script&lang=js&\"\nexport * from \"./Tracks.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tracks.vue?vue&type=style&index=0&id=6a489638&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6a489638\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('6a489638')) {\n api.createRecord('6a489638', component.options)\n } else {\n api.reload('6a489638', component.options)\n }\n module.hot.accept(\"./Tracks.vue?vue&type=template&id=6a489638&scoped=true&\", function () {\n api.rerender('6a489638', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Player.vue?vue&type=template&id=e40c4118&\"\nimport script from \"./Player.vue?vue&type=script&lang=js&\"\nexport * from \"./Player.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('e40c4118')) {\n api.createRecord('e40c4118', component.options)\n } else {\n api.reload('e40c4118', component.options)\n }\n module.hot.accept(\"./Player.vue?vue&type=template&id=e40c4118&\", function () {\n api.rerender('e40c4118', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player.vue\"\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Continue.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Continue.vue?vue&type=script&lang=js&\"","\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browse.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browse.vue?vue&type=script&lang=js&\"","\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrevNext.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrevNext.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n _c(\n \"b-form-group\",\n { attrs: { label: _vm.$t(\"common.audio\") } },\n [\n _c(\"b-form-radio-group\", {\n attrs: { options: _vm.options },\n on: { change: _vm.onChange },\n model: {\n value: _vm.selected,\n callback: function($$v) {\n _vm.selected = $$v\n },\n expression: \"selected\"\n }\n })\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"buttons\" },\n [\n _vm.hasPrev\n ? _c(\n \"b-button\",\n {\n staticClass: \"play-prev\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onPrev }\n },\n [_vm._v(\"← \" + _vm._s(_vm.$t(\"common.previous\")))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm._l(_vm.pageItems, function(item, index) {\n return _c(\"item\", {\n key: item.name,\n attrs: { item: item, index: index }\n })\n }),\n _vm._v(\" \"),\n _vm.hasNext\n ? _c(\n \"b-button\",\n {\n staticClass: \"play-next\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onNext }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.next\")) + \" →\")]\n )\n : _vm._e()\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=style&index=0&id=3f0a6af7&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=style&index=0&id=3f0a6af7&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../node_modules/svg-transform-loader/encode-query.js!../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sponsor.vue?vue&type=style&index=0&id=5e003d3b&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../node_modules/svg-transform-loader/encode-query.js!../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sponsor.vue?vue&type=style&index=0&id=5e003d3b&lang=scss&scoped=true&\"","import { render, staticRenderFns } from \"./Support.vue?vue&type=template&id=8dcff120&scoped=true&\"\nimport script from \"./Support.vue?vue&type=script&lang=js&\"\nexport * from \"./Support.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Support.vue?vue&type=style&index=0&id=8dcff120&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8dcff120\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('8dcff120')) {\n api.createRecord('8dcff120', component.options)\n } else {\n api.reload('8dcff120', component.options)\n }\n module.hot.accept(\"./Support.vue?vue&type=template&id=8dcff120&scoped=true&\", function () {\n api.rerender('8dcff120', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Support.vue\"\nexport default component.exports","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=style&index=1&id=65e74adf&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=style&index=1&id=65e74adf&lang=scss&scoped=true&\"","import { render, staticRenderFns } from \"./Torrent2Magnet.vue?vue&type=template&id=44322aaf&\"\nimport script from \"./Torrent2Magnet.vue?vue&type=script&lang=js&\"\nexport * from \"./Torrent2Magnet.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('44322aaf')) {\n api.createRecord('44322aaf', component.options)\n } else {\n api.reload('44322aaf', component.options)\n }\n module.hot.accept(\"./Torrent2Magnet.vue?vue&type=template&id=44322aaf&\", function () {\n api.rerender('44322aaf', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Tools/Torrent2Magnet.vue\"\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrevNext.vue?vue&type=style&index=0&id=3397ed9f&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrevNext.vue?vue&type=style&index=0&id=3397ed9f&lang=scss&scoped=true&\"","import { render, staticRenderFns } from \"./Embed.vue?vue&type=template&id=0b12d6ad&scoped=true&\"\nimport script from \"./Embed.vue?vue&type=script&lang=js&\"\nexport * from \"./Embed.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Embed.vue?vue&type=style&index=0&id=0b12d6ad&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0b12d6ad\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('0b12d6ad')) {\n api.createRecord('0b12d6ad', component.options)\n } else {\n api.reload('0b12d6ad', component.options)\n }\n module.hot.accept(\"./Embed.vue?vue&type=template&id=0b12d6ad&scoped=true&\", function () {\n api.rerender('0b12d6ad', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Embed.vue\"\nexport default component.exports","\n\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Size.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Size.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaElement.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaElement.vue?vue&type=script&lang=js&\"","\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Attached.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Attached.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=style&index=0&lang=scss&\"","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Stat.vue?vue&type=style&index=0&id=30983632&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Stat.vue?vue&type=style&index=0&id=30983632&lang=scss&scoped=true&\"","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=script&lang=js&\"","\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Player.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Player.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=style&index=0&lang=scss&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"container\" },\n [\n _c(\"b-form-textarea\", {\n ref: \"input\",\n attrs: { rows: \"3\", readonly: \"\", value: _vm.snippet },\n on: { click: _vm.select }\n }),\n _vm._v(\" \"),\n _c(\"div\", {\n staticClass: \"ref text-center\",\n domProps: { innerHTML: _vm._s(_vm.$tm(\"common.player sdk\")) }\n }),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"copy\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onCopy }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.copy\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"back\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onBack }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.back\")))]\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Stat.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Stat.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailabeProgress.vue?vue&type=style&index=0&id=14ae74be&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailabeProgress.vue?vue&type=style&index=0&id=14ae74be&lang=scss&scoped=true&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Embed.vue?vue&type=style&index=0&id=0b12d6ad&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Embed.vue?vue&type=style&index=0&id=0b12d6ad&lang=scss&scoped=true&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"b-form\",\n { attrs: { inline: \"\" } },\n [\n _c(\"label\", { staticClass: \"mr-sm-2\" }, [\n _vm._v(_vm._s(_vm.$t(\"common.size\")) + \":\")\n ]),\n _vm._v(\" \"),\n _c(\"b-input\", {\n staticClass: \"mb-2 mr-sm-2 mb-sm-0 caption-size\",\n attrs: { readonly: \"\", disabled: \"\" },\n model: {\n value: _vm.size,\n callback: function($$v) {\n _vm.size = $$v\n },\n expression: \"size\"\n }\n }),\n _vm._v(\" \"),\n _c(\n \"b-button-group\",\n [\n _c(\n \"b-button\",\n { attrs: { variant: \"outline-light\" }, on: { click: _vm.smaller } },\n [_vm._v(\"–\")]\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n { attrs: { variant: \"outline-light\" }, on: { click: _vm.bigger } },\n [_vm._v(\"+\")]\n )\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"container\" },\n [\n _c(\n \"b-button\",\n {\n staticClass: \"continue\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onContinue }\n },\n [\n _vm._v(\n _vm._s(_vm.$t(\"common.continueFrom\")) +\n \" \" +\n _vm._s(_vm.time.toString().toHHMMSS())\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"restart\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onRestart }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.restart\")))]\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Attached.vue?vue&type=template&id=0c18173f&\"\nimport script from \"./Attached.vue?vue&type=script&lang=js&\"\nexport * from \"./Attached.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('0c18173f')) {\n api.createRecord('0c18173f', component.options)\n } else {\n api.reload('0c18173f', component.options)\n }\n module.hot.accept(\"./Attached.vue?vue&type=template&id=0c18173f&\", function () {\n api.rerender('0c18173f', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Attached.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./PrevNext.vue?vue&type=template&id=3397ed9f&scoped=true&\"\nimport script from \"./PrevNext.vue?vue&type=script&lang=js&\"\nexport * from \"./PrevNext.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PrevNext.vue?vue&type=style&index=0&id=3397ed9f&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3397ed9f\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3397ed9f')) {\n api.createRecord('3397ed9f', component.options)\n } else {\n api.reload('3397ed9f', component.options)\n }\n module.hot.accept(\"./PrevNext.vue?vue&type=template&id=3397ed9f&scoped=true&\", function () {\n api.rerender('3397ed9f', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Browse/PrevNext.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./OpenSubtitles.vue?vue&type=template&id=0d5ea726&scoped=true&\"\nimport script from \"./OpenSubtitles.vue?vue&type=script&lang=js&\"\nexport * from \"./OpenSubtitles.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OpenSubtitles.vue?vue&type=style&index=0&id=0d5ea726&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0d5ea726\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('0d5ea726')) {\n api.createRecord('0d5ea726', component.options)\n } else {\n api.reload('0d5ea726', component.options)\n }\n module.hot.accept(\"./OpenSubtitles.vue?vue&type=template&id=0d5ea726&scoped=true&\", function () {\n api.rerender('0d5ea726', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/OpenSubtitles.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Subtitles.vue?vue&type=template&id=1cfbf86b&\"\nimport script from \"./Subtitles.vue?vue&type=script&lang=js&\"\nexport * from \"./Subtitles.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1cfbf86b')) {\n api.createRecord('1cfbf86b', component.options)\n } else {\n api.reload('1cfbf86b', component.options)\n }\n module.hot.accept(\"./Subtitles.vue?vue&type=template&id=1cfbf86b&\", function () {\n api.rerender('1cfbf86b', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/Subtitles.vue\"\nexport default component.exports","import mod from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../node_modules/css-loader/index.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Image.vue?vue&type=style&index=0&id=7c3232e0&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../node_modules/css-loader/index.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Image.vue?vue&type=style&index=0&id=7c3232e0&scoped=true&lang=scss&\""],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///ui/src/components/App/Show/Player/MediaElement/Settings.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Settings.vue?4d8b","webpack:///./ui/src/components/App/Support.vue?6c9c","webpack:///ui/src/components/App/Show/Player/MediaElement/Browse/List/Item.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/List/Item.vue?9b89","webpack:///./ui/src/components/App/Show/Player/MediaElement/Continue.vue?4036","webpack:///./ui/src/i18n sync ^\\.\\/.*\\.json$","webpack:///ui/src/components/App/Tools/Magnet2Torrent.vue","webpack:///./ui/src/components/App/Tools/Magnet2Torrent.vue?7400","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Upload.vue?e8a3","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/List/Item.vue?45dd","webpack:///./ui/src/components/App/Sponsor.vue?90df","webpack:///./ui/src/components/App/Tools/Torrent2DDL.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Error.vue?1abc","webpack:///./ui/src/components/App/Show/Player/MediaElement/AvailabeProgress.vue?3eaf","webpack:///./ui/src/components/App/Show/Player/MediaElement/Continue.vue","webpack:///./ui/src/components/App/Show/ShareLink.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse.vue?eccd","webpack:///./ui/src/components/App/Tools/Magnet2Torrent.vue?def4","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks.vue?3164","webpack:///./ui/src/components/App/Show/Player.vue?4364","webpack:///./ui/src/components/App/Show/ShareLink.vue?4492","webpack:///./ui/src/components/App/Tools/Torrent2DDL.vue?5dfb","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/List/Item.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Size.vue?24f2","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Size.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement.vue?2277","webpack:///./ui/src/components/App/Show/MagnetURI.vue","webpack:///ui/src/components/App/Show/Player/Image.vue","webpack:///./ui/src/components/App/Show/Player/Image.vue?77d1","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/List/Item.vue?5a48","webpack:///ui/src/components/App/Show/Player/MediaElement/Tracks/OpenSubtitles.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/OpenSubtitles.vue?c5ca","webpack:///ui/src/components/App/Show/Player/MediaElement/AvailabeProgress.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/AvailabeProgress.vue?dcb9","webpack:///./ui/src/components/App/Sponsor.vue","webpack:///ui/src/components/App/Tools/Torrent2DDL.vue","webpack:///./ui/src/components/App/Tools/Torrent2DDL.vue?117a","webpack:///./ui/src/components/App/Show/Player/MediaElement/Settings.vue?9fc1","webpack:///ui/src/components/App/Tools/Torrent2Magnet.vue","webpack:///./ui/src/components/App/Tools/Torrent2Magnet.vue?b510","webpack:///ui/src/components/App/Show/Player/MediaElement/Tracks/Upload.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Upload.vue?4185","webpack:///./ui/src/components/App/Show/List/Item/Stat.vue?1bc5","webpack:///./ui/src/components/App/Show/Player/MediaElement.vue?6513","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/OpenSubtitles.vue?8433","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/AudioTracks.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Captions.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks.vue?8572","webpack:///./ui/src/components/App/Show/ShareLink.vue?5f7f","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/Subtitles.vue?4f16","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Captions.vue?9efb","webpack:///./ui/src/components/App/Tools/Torrent2Magnet.vue?7de5","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Upload.vue","webpack:///./ui/src/components/App/Show/MagnetURI.vue?7244","webpack:///./ui/src/components/App/Show/Player/MediaElement/AvailabeProgress.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Settings.vue","webpack:///ui/src/components/App/Show/Player/MediaElement/Error.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Error.vue?4530","webpack:///./ui/src/components/App/Show/Player/MediaElement/Settings.vue?8616","webpack:///./ui/src/components/App/Tools/Magnet2Torrent.vue","webpack:///ui/src/components/App/Show/Player/MediaElement/Tracks/Captions.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Captions.vue?2501","webpack:///./ui/src/components/App/Show/Player/MediaElement/Error.vue","webpack:///./ui/src/components/App/Show/List/Item/Stat.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Attached.vue?0ff2","webpack:///ui/src/components/App/Show/Player/MediaElement/Embed.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Embed.vue?a2f2","webpack:///./ui/src/components/App/Support.vue?ed87","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse.vue?eaf7","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/OpenSubtitles.vue?8901","webpack:///ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/Subtitles.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/Subtitles.vue?185a","webpack:///./ui/src/components/App/Show/Player/MediaElement.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/List.vue","webpack:///ui/src/components/App/Show/Player/MediaElement.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/PrevNext.vue?35bf","webpack:///ui/src/components/App/Show/Player/MediaElement/Browse/List.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/List.vue?cdf9","webpack:///./ui/src/components/App/Show/Player/Image.vue","webpack:///ui/src/components/App/Support.vue","webpack:///./ui/src/components/App/Support.vue?843f","webpack:///ui/src/components/App/Sponsor.vue","webpack:///./ui/src/components/App/Sponsor.vue?4bca","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Captions.vue?2c12","webpack:///ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/AudioTracks.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/AudioTracks.vue?d5b0","webpack:///ui/src/components/App/Show/Player/MediaElement/Tracks.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks.vue?3381","webpack:///./ui/src/components/App/Show/Player/Image.vue?adec","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks.vue","webpack:///./ui/src/components/App/Show/Player.vue","webpack:///ui/src/components/App/Show/Player/MediaElement/Continue.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Continue.vue?71fa","webpack:///ui/src/components/App/Show/Player/MediaElement/Browse.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse.vue?9615","webpack:///ui/src/components/App/Show/Player/MediaElement/Browse/PrevNext.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/PrevNext.vue?752f","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/AudioTracks.vue?07c4","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/List.vue?8657","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/List.vue?463f","webpack:///./ui/src/components/App/Sponsor.vue?26bc","webpack:///./ui/src/components/App/Support.vue","webpack:///./ui/src/components/App/Show/MagnetURI.vue?a522","webpack:///./ui/src/components/App/Tools/Torrent2Magnet.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/PrevNext.vue?d254","webpack:///./ui/src/components/App/Show/Player/MediaElement/Embed.vue","webpack:///ui/src/components/App/Show/Player/MediaElement/Tracks/Size.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Size.vue?f263","webpack:///./ui/src/components/App/Show/Player/MediaElement.vue?0e40","webpack:///ui/src/components/App/Show/Player/MediaElement/Tracks/Attached.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Attached.vue?e593","webpack:///./ui/src/components/App/Show/ShareLink.vue?175e","webpack:///ui/src/components/App/Show/ShareLink.vue","webpack:///./ui/src/components/App/Show/ShareLink.vue?c0e1","webpack:///./ui/src/components/App/Show/List/Item/Stat.vue?8d5b","webpack:///ui/src/components/App/Show/MagnetURI.vue","webpack:///./ui/src/components/App/Show/MagnetURI.vue?3312","webpack:///ui/src/components/App/Show/Player.vue","webpack:///./ui/src/components/App/Show/Player.vue?ec3e","webpack:///./ui/src/components/App/Show/MagnetURI.vue?9f0b","webpack:///./ui/src/components/App/Show/Player/MediaElement/Embed.vue?9d7f","webpack:///ui/src/components/App/Show/List/Item/Stat.vue","webpack:///./ui/src/components/App/Show/List/Item/Stat.vue?f5fd","webpack:///./ui/src/components/App/Show/Player/MediaElement/AvailabeProgress.vue?31f7","webpack:///./ui/src/components/App/Show/Player/MediaElement/Embed.vue?6f78","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Size.vue?3707","webpack:///./ui/src/components/App/Show/Player/MediaElement/Continue.vue?bf37","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Attached.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Browse/PrevNext.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/OpenSubtitles.vue","webpack:///./ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/Subtitles.vue","webpack:///./ui/src/components/App/Show/Player/Image.vue?b8c6"],"names":["props","computed","methods","map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","render","_vm","this","_h","$createElement","_c","_self","tracks","length","_v","_s","$t","_e","attrs","options","on","change","onChange","model","value","selected","callback","$$v","expression","staticClass","variant","size","click","onAdd","staticRenderFns","_withStripped","role","onClick","$tm","component","api","install","compatible","hot","accept","isRecorded","reload","createRecord","rerender","__file","error","toLowerCase","isTranscode","class","className","style","scopedSlots","_u","key","fn","proxy","_l","buttons","btn","name","pressed","$event","select","caption","tag","onClose","source","server","currentView","ref","directives","rawName","showAdWithDelay","adClosed","href","preventDefault","stopPropagation","closeAd","file","src","$store","commit","dispatch","$el","complete","loaded","addEventListener","disabled","friendlyNameCutted","md5","viewBox","progressLength","xmlns","x","y","width","height","opacity","highPrioritySegments","s","start","end","completedSegments","webSeederMessage","showTranscoderMessage","download","transcoderMessage","modifiers","shareLink","centered","title","ok","copyUrl","readonly","label","domProps","innerHTML","magnetURI","rows","onCopy","onBack","show","status","submit","onSubmit","reset","onReset","cause","required","form","$set","placeholder","subject","description","isQuestion","hasCause","state","infohashState","formatter","infohashFormatter","infohash","filename","type","email","isIllegal","work","isSubmitting","current","list","onList","loading","empty","hasTracks","debug","loadScript","Url","mejs","i18n","ru","cursorHidden","cursorTimeout","timerId","components","data","currentState","adDelayLock","adCloseLock","firstPlay","globalFirstPlay","torrent","lang","format","multibitrate","sources","cached","vastURL","time","playerFilePath","playerSourceUrl","completedPieces","features","newPosition","seeder","subtitle","audio","nativeSubtitles","displayAdsense","playerStatus","showAd","c","playerControlsShown","playerNativeFullScreen","playerFullScreen","created","window","mouseMove","watch","a","b","$refs","adsense","refresh","$player","currentTime","setSubtitle","setAudio","currentStatus","self","el","querySelectorAll","remove","hlsPlayer","subtitleTrack","default","v","dropTracks","appendTrack","audioTrack","open","underPlayerBanner","targetURL","clearTimeout","cursor","setTimeout","hideCursor","duration","client","destroy","d","paused","pause","t","tel","document","createElement","setAttribute","kind","srclang","appendChild","autoplay","preload","poster","stretching","sel","language","filePath","playpause","push","timeline","chromecast","volume","settings","fullscreen","subtitles","continue","captions","embed","browse","getters","isEmbedded","displayAds","Hls","MyLoader","DefaultConfig","loader","config","super","load","bind","async","context","callbacks","url","frag","fname","pathname","match","segmentUrl","metadata","resolveLoader","loaderPromise","Promise","origLoad","prototype","call","updateAvailableDuration","updateDuration","MediaElementPlayer","store","route","$route","autoRewind","mediaInfo","parseFloat","defaultSeekBackwardInterval","defaultSeekForwardInterval","hls","startPosition","path","autoStartLoad","manifestLoadingTimeOut","manifestLoadingMaxRetry","manifestLoadingMaxRetryTimeout","capLevelToPlayerSize","capLevelOnFPSDrop","progressive","testBandwidth","media","Events","MANIFEST_PARSED","event","levels","startLevel","ERROR","fatal","ErrorTypes","NETWORK_ERROR","startLoad","MEDIA_ERROR","recoverMediaError","setInterval","getDuration","isNaN","SUBTITLE_TRACKS_UPDATED","groups","textGroupIds","subtitleTracks","filter","includes","groupId","player","AUDIO_TRACKS_UPDATED","audioGroupIds","audioTracks","currentPositionSetted","updateStatus","updateTime","loadLevel","container","play","sourceUrl","drop","initEl","initPlayer","dropPlayer","dropClient","init","hasPrev","onPrev","hasBrowse","onBrowse","hasNext","onNext","evt","isValid","$nextTick","dragDrop","String","toHHMMSS","pageItems","item","index","MediaEl","ImageEl","snippet","numeral","cl","isCompleted","completed","total","$tc","peers","availableDuration","stat","mediaType","deliveryType","downloadStat","statusName","replace","l","f","files","startsWith","offset","pieces","position","torrentPos","prioritized","piecesList","sp","priority","p","effectiveLength","pieceLength","torrentCompletedPieces","cachedPieces","isCached","reduce","inline","smaller","bigger","onContinue","toString","onRestart"],"mappings":"kIAsCA,GACE,SAAF,IACA,aACM,IAAN,wBAGE,QAAF,CACI,eACE,EAAN,iBACM,KAAN,gBAEI,SACE,KAAN,kBClD8N,O,oCCA9N,uBAA8hB,G,oCCI9hB,OACEA,MAAO,CAAC,QACRC,SAAU,CACR,eACE,OAAN,wBAEI,qBACE,OAAN,kCACA,kBAEA,8CAGI,OACE,OAAN,gBAEI,WACE,OAAN,oCAGEC,QAAS,CACP,sBACJ,0CC1BsO,O,oCCAtO,uBAA8lB,G,olTCA9lB,IAAIC,EAAM,CACT,gBAAiB,OACjB,YAAa,OACb,YAAa,QAId,SAASC,EAAeC,GACvB,IAAIC,EAAKC,EAAsBF,GAC/B,OAAOG,EAAoBF,GAE5B,SAASC,EAAsBF,GAC9B,IAAIG,EAAoBC,EAAEN,EAAKE,GAAM,CACpC,IAAIK,EAAI,IAAIC,MAAM,uBAAyBN,EAAM,KAEjD,MADAK,EAAEE,KAAO,mBACHF,EAEP,OAAOP,EAAIE,GAEZD,EAAeS,KAAO,WACrB,OAAOC,OAAOD,KAAKV,IAEpBC,EAAeW,QAAUR,EACzBS,EAAOC,QAAUb,EACjBA,EAAeE,GAAK,Q,gECXpB,GACE,WAAF,CAAI,OAAJ,IAAI,OAAJ,MCdwN,O,2JCAxN,IAAIY,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CACuB,GAArBJ,EAAIM,OAAOC,OACPH,EAAG,MAAO,CAACJ,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,4BAChCV,EAAIW,KACRX,EAAIQ,GAAG,KACPJ,EACE,eACA,CACEA,EAAG,qBAAsB,CACvBQ,MAAO,CAAEC,QAASb,EAAIa,SACtBC,GAAI,CAAEC,OAAQf,EAAIgB,UAClBC,MAAO,CACLC,MAAOlB,EAAImB,SACXC,SAAU,SAASC,GACjBrB,EAAImB,SAAWE,GAEjBC,WAAY,eAIlB,GAEFtB,EAAIQ,GAAG,KACPJ,EACE,WACA,CACEmB,YAAa,aACbX,MAAO,CAAEY,QAAS,gBAAiBC,KAAM,MACzCX,GAAI,CAAEY,MAAO1B,EAAI2B,QAEnB,CAAC3B,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,+BAG1B,IAGAkB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,oCC3CvB,uBAAooB,G,2JCApoB,IAAI9B,EAAS,WACX,IACIG,EADMD,KACGE,eACTC,EAFMH,KAEGI,MAAMD,IAAMF,EACzB,OAAOE,EACL,QACA,CACEmB,YAAa,yBACbX,MAAO,CAAEkB,KAAM,UACfhB,GAAI,CAAEY,MARAzB,KAQW8B,UAEnB,CACE3B,EAAG,OAAQ,CAAEmB,YAAa,SAAW,CAX/BtB,KAWoCO,GAAG,QAC7CJ,EAAG,OAAQ,CAAEmB,YAAa,QAAU,CAZ9BtB,KAaAO,GAbAP,KAaOQ,GAbPR,KAac+B,IAAI,wBAK1BJ,EAAkB,GACtB7B,EAAO8B,eAAgB,G,oCCpBvB,+CAOII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAgE,wBAChFJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,8CACZ,UAAAV,E,2ICtCf,IAAIlC,EAAS,WACX,IACIG,EADMD,KACGE,eACTC,EAFMH,KAEGI,MAAMD,IAAMF,EACzB,OAHUD,KAGC2C,MACPxC,EAAG,MAAO,CAJJH,KAISO,GAJTP,KAIgBQ,GAJhBR,KAIuBS,GAAG,UAJ1BT,KAI0C2C,MAAMC,mBAJhD5C,KAKFU,MAENiB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kICTvB,IAAI9B,EAAS,WACX,IACIG,EADMD,KACGE,eACTC,EAFMH,KAEGI,MAAMD,IAAMF,EACzB,OAHUD,KAGC6C,YACP1C,EAAG,OAAQ,CAAE2C,MAJP9C,KAIkB+C,UAAWC,MAJ7BhD,KAIwCgD,QAJxChD,KAKFU,MAENiB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,6DCTvB,oDAQII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA6D,wBAC7EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,8DACZ,IAAAV,E,6CCvCf,8DASIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA8D,wBAC9EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,2CACZ,IAAAV,E,6CCxCf,uBAA4lB,G,kICA5lB,IAAIlC,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,SACA,CACE8C,YAAalD,EAAImD,GAAG,CAClB,CACEC,IAAK,SACLC,GAAI,WACF,MAAO,CAACrD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,6BAE/B4C,OAAO,GAET,CACEF,IAAK,OACLC,GAAI,WACF,MAAO,CAACrD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,8BAE/B4C,OAAO,MAIb,CAACtD,EAAIQ,GAAG,KAAMR,EAAIQ,GAAG,KAAM,CAACJ,EAAG,SAAU,CAAEQ,MAAO,CAAEa,KAAM,UAC1D,IAGAG,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kIC7BvB,IAAI9B,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CAAEmB,YAAa,aACf,CACEnB,EACE,iBACAJ,EAAIuD,GAAGvD,EAAIwD,SAAS,SAASC,EAAKC,GAChC,OAAOtD,EACL,WACA,CACEgD,IAAKM,EACL9C,MAAO,CACL+C,QAASD,GAAQ1D,EAAImB,SACrBK,QAAS,iBAEXV,GAAI,CACFY,MAAO,SAASkC,GACd,OAAO5D,EAAI6D,OAAOH,MAIxB,CAAC1D,EAAIQ,GAAGR,EAAIS,GAAGgD,EAAIK,eAGvB,GAEF9D,EAAIQ,GAAG,KACPJ,EACE,MACA,CAAEmB,YAAa,iBACf,CACEnB,EACE,aACA,CAACA,EAAGJ,EAAIwD,QAAQxD,EAAImB,UAAUc,UAAW,CAAE8B,IAAK,eAChD,IAGJ,GAEF/D,EAAIQ,GAAG,KACPJ,EACE,WACA,CACEmB,YAAa,cACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAIgE,UAEnB,CAAChE,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,gCAExBV,EAAIQ,GAAG,KACPJ,EAAG,OAAQ,CAAEmB,YAAa,gBAE5B,IAGAK,EAAkB,GACtB7B,EAAO8B,eAAgB,G,gIC5DvB,IAAI9B,EAAS,WACX,IACIG,EADMD,KACGE,eACTC,EAFMH,KAEGI,MAAMD,IAAMF,EACzB,OAHUD,KAGCgE,SAHDhE,KAGgBiE,OACtB9D,EAJMH,KAICkE,YAAa,CAAEJ,IAAK,cAJrB9D,KAKFU,MAENiB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kCCTvB,uBAAqjB,G,gICArjB,IAAI9B,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,SACA,CACE8C,YAAalD,EAAImD,GAAG,CAClB,CACEC,IAAK,SACLC,GAAI,WACF,MAAO,CAACrD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,0BAE/B4C,OAAO,GAET,CACEF,IAAK,OACLC,GAAI,WACF,MAAO,CAACrD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,2BAE/B4C,OAAO,GAET,CACEF,IAAK,WACLC,GAAI,WACF,MAAO,CACLjD,EAAG,KAAM,CACPA,EAAG,KAAM,CACPJ,EAAIQ,GACFR,EAAIS,GACFT,EAAIU,GACF,yDAKRV,EAAIQ,GAAG,KACPJ,EAAG,KAAM,CACPJ,EAAIQ,GACFR,EAAIS,GACFT,EAAIU,GAAG,wDAIbV,EAAIQ,GAAG,KACPJ,EAAG,KAAM,CACPJ,EAAIQ,GACFR,EAAIS,GACFT,EAAIU,GAAG,oDAIbV,EAAIQ,GAAG,KACPJ,EAAG,KAAM,CACPJ,EAAIQ,GACFR,EAAIS,GAAGT,EAAIU,GAAG,mDAMxB4C,OAAO,MAIb,CAACtD,EAAIQ,GAAG,KAAMR,EAAIQ,GAAG,KAAMR,EAAIQ,GAAG,KAAM,CAACJ,EAAG,UAC5C,IAGAwB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kCCtEvB,oDAQII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAyD,wBACzEJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,sEACZ,IAAAV,E,2CCvCf,uBAA+mB,G,kCCA/mB,oDAQIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAyD,wBACzEJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,iEACZ,IAAAV,E,yICvCf,IAAIlC,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CACEA,EAAG,MAAO,CAAEgE,IAAK,YAAarB,MAAO/C,EAAIgD,YACzChD,EAAIQ,GAAG,KACPJ,EAAG,aAAc,CAAEQ,MAAO,CAAE8C,KAAM,eAAkB,CAClDtD,EACE,MACA,CACEiE,WAAY,CACV,CACEX,KAAM,OACNY,QAAS,SACTpD,MAAOlB,EAAIuE,kBAAoBvE,EAAIwE,SACnClD,WAAY,iCAGhBC,YAAa,MAEf,CACEnB,EAAG,OAAQ,CACTmB,YAAa,QACbX,MAAO,CAAE6D,KAAM,KACf3D,GAAI,CACFY,MAAO,SAASkC,GAGd,OAFAA,EAAOc,iBACPd,EAAOe,kBACA3E,EAAI4E,QAAQhB,OAIzB5D,EAAIQ,GAAG,KACPJ,EAAG,OAAQ,CAAEmB,YAAa,YAAc,CAACvB,EAAIQ,GAAG,UAChDR,EAAIQ,GAAG,KACPJ,EAAG,aAAc,CACfgE,IAAK,UACLxD,MAAO,CACL,UAAW,SACX,WAAY,oDAIlB,MAIN,IAGAgB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kCCtDvB,8DASII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA8D,wBAC9EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,2CACZ,IAAAV,E,qFC/Bf,GACEnD,SAAU,IACZ,aACM+F,KAAM,GAAZ,OACMC,IAAK,GAAX,6BAEO,OAAP,IAAO,CAAP,CACA,cAGE/F,QAAS,CACP,SACEkB,KAAK8E,OAAOC,OAAO,EAAzB,iBACM/E,KAAK8E,OAAOC,OAAO,EAAzB,OACM,MAAM,SAAZ,eACMC,EAAS,kBAAmBhF,KAAK4E,MACjCI,EAAS,eAGb,UACMhF,KAAKiF,IAAIC,SACXlF,KAAKmF,SAELnF,KAAKiF,IAAIG,iBAAiB,OAAQpF,KAAKmF,UChCwK,O,gICArN,IAAIrF,EAAS,WACX,IACIG,EADMD,KACGE,eAEb,OAHUF,KAEGI,MAAMD,IAAMF,GAEvB,WACA,CACEU,MAAO,CAAE0E,SANHrF,KAMiBqF,SAAU9D,QAAS,iBAC1CV,GAAI,CAAEY,MAPAzB,KAOW8B,UAEnB,CATQ9B,KASHO,GATGP,KASIQ,GATJR,KASWsF,wBAGnB3D,EAAkB,GACtB7B,EAAO8B,eAAgB,G,yDCOvB,OACE,KAAF,KACA,CACM,SAAN,KACM,QAAN,GACM,SAAN,EACM,OAAN,EACM,OAAN,KAGE,SAAF,CACI,YACE,OAAN,oBAEI,eACE,MAAN,oCACM,OAAN,qCACA,OAEA,OAGE,MAAF,CACI,eACE,KAAN,6BAGE,QAAF,CACI,SAAJ,GACM,IAAN,OACM,GAAN,QACQ,IAAR,uBACU,GAAV,WACY,EAAZ,EACY,EAAZ,uBACY,MAIN,KAAN,0CAGE,gBACE,MAAJ,KACI,EAAJ,MAAM,MAAN,KAAM,KAAN,2BACI,MAAJ,gDACI,IAAJ,cACM,MAAN,UACA,SACM,EAAN,MAAQ,iBAER,cACM,KAAN,UAEI,KAAJ,UACI,KAAJ,WACI,KAAJ,2BACI,KAAJ,WC9EyO,O,kDC0BzO,GACE,MAAF,YACE,SAAF,IACA,aACA,oBAEA,aACM,SAAN,qBACM,kBAAN,gCAEI,cACE,MAAN,gCAEI,WACE,OAAN,wDACA,qCAEA,GAEI,QACE,MAAN,wCAEI,YACE,OAAN,6CCjDsO,O,kCCAtO,oDAQII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA4D,wBAC5EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,oCACZ,IAAAV,E,uEClBf,GACE,WAAF,CAAI,OAAJ,IAAI,KAAJ,MCtBqN,O,kCCArN,uBAA8lB,G,+DCQ9lB,GACE,WAAF,CAAI,O,UAAJ,ICTwN,O,kDCgBxN,MAAMuD,EAAM,EAAZ,QACA,OACE,KAAF,KACA,CACM,OAAN,GACM,SAAN,KACM,QAAN,KAGE,QAAF,CACI,SAAJ,GACM,IAAN,OACM,GAAN,QACQ,IAAR,uBACU,GAAV,WACY,EAAZ,EACY,EAAZ,gBACY,MAIN,KAAN,yCAEI,QAAJ,GACA,2BACQ,IAAR,iBACQ,EAAR,cACQ,EAAR,qBACU,EAAV,WAEQ,EAAR,oBACU,EAAV,OAII,iBAAJ,GACA,sDACA,cACQ,OAAR,gCAGI,QACE,MAAN,OACA,kCACM,EAAN,YACA,WACQ,EAAR,mBACQ,EAAR,aAEM,MAAN,0BACQ,SAAR,EACQ,YAAR,EACQ,KAAR,SAEA,mBACM,EAAN,2BACQ,GAAR,qBAAQ,CACR,qBACU,EAAV,cAAY,MAAZ,KAAY,KAAZ,wBAEQ,IAAR,4BACA,cAEA,qBACU,EAAV,0BACU,EAAV,+BAII,eAAJ,GACM,MAAN,wBACA,GACM,KAAN,aACM,EAAN,aACM,EAAN,aACM,MAAN,0BACA,qDACM,EAAN,gCAAQ,SAAR,SACM,EAAN,UACM,KAAN,eACM,KAAN,cAAQ,KAAR,QAAQ,MAAR,UAEI,qBACE,GAAN,qBAAM,CACN,wBACQ,KAAR,cAAU,MAAV,KAAU,KAAV,2BAEM,IAAN,sBACQ,KAAR,YAEA,wBACQ,KAAR,6BACQ,KAAR,+BAEM,KAAN,gDAGE,MAAF,CACI,eACE,KAAN,4BAEI,QACE,KAAN,iBAGE,SAAF,IACA,aACM,MAAN,+BAEA,aACA,QAEI,eACE,MAAN,oCACM,OAAN,8BACA,OAEA,OAGE,gBACE,MAAJ,oCACA,gCACM,KAAN,cAAQ,MAAR,KAAQ,KAAR,2BACM,KAAN,eACM,KAAN,cAAQ,KAAR,QAAQ,MAAR,SACM,KAAN,kBAGE,gBACE,KAAJ,iBClJkO,O,gICAlO,IAAIzF,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EAAG,MAAO,CAAE2C,MAAO/C,EAAIgD,WAAa,CACzC5C,EAAG,MAAO,CAAEmB,YAAa,oBAAsB,CAC7CnB,EACE,MACA,CACEmB,YAAa,SACbX,MAAO,CACL6E,QAAS,OAASxF,KAAKyF,eAAiB,OACxCC,MAAO,+BAGX,CACEvF,EAAG,OAAQ,CACTQ,MAAO,CACLgF,EAAG,IACHC,EAAG,IACHC,MAAO7F,KAAKyF,eACZK,OAAQ,MACRC,QAAS,SAGbhG,EAAIQ,GAAG,KACPR,EAAIuD,GAAGtD,KAAKgG,sBAAsB,SAASC,GACzC,OAAO9F,EAAG,OAAQ,CAChBQ,MAAO,CACLgF,EAAGM,EAAEC,MACLN,EAAG,IACHC,MAAOI,EAAEE,IAAMF,EAAEC,MACjBJ,OAAQ,MACRC,QAAS,YAIfhG,EAAIQ,GAAG,KACPR,EAAIuD,GAAGtD,KAAKoG,mBAAmB,SAASH,GACtC,OAAO9F,EAAG,OAAQ,CAChBQ,MAAO,CACLgF,EAAGM,EAAEC,MACLN,EAAG,IACHC,MAAOI,EAAEE,IAAMF,EAAEC,MACjBJ,OAAQ,aAKhB,KAGJ/F,EAAIQ,GAAG,KACPJ,EAAG,MAAO,CAAEmB,YAAa,cAAgB,CACvCvB,EAAIQ,GAAG,WAAaR,EAAIS,GAAGT,EAAIsG,kBAAoB,YAErDtG,EAAIQ,GAAG,KACPR,EAAIuG,wBAA0BvG,EAAIwG,SAC9BpG,EAAG,MAAO,CAAEmB,YAAa,cAAgB,CACvCvB,EAAIQ,GAAG,WAAaR,EAAIS,GAAGT,EAAIyG,mBAAqB,YAEtDzG,EAAIW,QAGRiB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kCCjEvB,uBAAqjB,G,oCCArjB,uBAAwnB,G,kCCAxnB,wCAOII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,KACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAoD,wBACpEJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,iFACZ,IAAAV,E,2CCtCf,oDAQIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,KACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAiD,wBACjEJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,qEACZ,IAAAV,E,yFCvCf,oDAQIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA2D,wBAC3EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,4DACZ,IAAAV,E,2CCvCf,uBAA4lB,G,uMCA5lB,IAAIlC,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,IACA,CACEiE,WAAY,CACV,CACEX,KAAM,UACNY,QAAS,6BACToC,UAAW,CAAE,oBAAoB,KAGrCnF,YAAa,6BACbX,MAAO,CAAE6D,KAAMzE,EAAI2G,WACnB7F,GAAI,CACFY,MAAO,SAASkC,GACdA,EAAOc,iBACPd,EAAOe,qBAIb,CACEvE,EACE,OACA,CAAEmB,YAAa,gBACf,CAACnB,EAAG,OAAQ,CAAEQ,MAAO,CAAE8C,KAAM,YAC7B,GAEF1D,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,sBAAwB,UAC9C5B,EACE,UACA,CACEQ,MAAO,CACLzB,GAAI,mBACJyH,SAAU,GACV,UAAW,GACXC,MAAO7G,EAAIgC,IAAI,sBAEjBkB,YAAalD,EAAImD,GAAG,CAClB,CACEC,IAAK,eACLC,GAAI,SAASe,GACX,IAAI0C,EAAK1C,EAAI0C,GACb,MAAO,CACL1G,EACE,WACA,CACEQ,MAAO,CAAEY,QAAS,WAClBV,GAAI,CACFY,MAAO,SAASkC,GACd5D,EAAI+G,UACJD,OAIN,CAAC9G,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,8BAOnC,CACE5B,EAAG,UAAW,CACZgE,IAAK,QACLxD,MAAO,CAAEoG,SAAU,GAAI9F,MAAOlB,EAAI2G,cAGtC,IAGJ,IAGA/E,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kIC7EvB,IAAI9B,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CACEA,EACE,eACA,CAAEQ,MAAO,CAAEqG,MAAOjH,EAAIU,GAAG,sBACzB,CACEN,EAAG,qBAAsB,CACvBQ,MAAO,CAAEC,QAASb,EAAIa,SACtBC,GAAI,CAAEC,OAAQf,EAAIgB,UAClBC,MAAO,CACLC,MAAOlB,EAAImB,SACXC,SAAU,SAASC,GACjBrB,EAAImB,SAAWE,GAEjBC,WAAY,eAIlB,IAGJ,IAGAM,EAAkB,GACtB7B,EAAO8B,eAAgB,G,gIC9BvB,IAAI9B,EAAS,WACX,IACIG,EADMD,KACGE,eACTC,EAFMH,KAEGI,MAAMD,IAAMF,EACzB,OAAOE,EAAG,OAAQ,CAAE2C,MAHV9C,KAGqB+C,WAAa,CAC1C5C,EAAG,OAAQ,CAAEmB,YAAa,aAAe,CACvCnB,EAAG,OAAQ,CAAEmB,YAAa,UAAW0B,MAL/BhD,KAK0CgD,OAAS,CACvD7C,EAAG,OAAQ,CAAE8G,SAAU,CAAEC,UANrBlH,KAMoCQ,GANpCR,KAM2C6D,mBAKnDlC,EAAkB,GACtB7B,EAAO8B,eAAgB,G,gICbvB,IAAI9B,EAAS,WACX,IACIG,EADMD,KACGE,eACTC,EAFMH,KAEGI,MAAMD,IAAMF,EACzB,OAAOE,EAAG,SAAU,CAACA,EAAG,KAAM,CAHpBH,KAGyBO,GAAG,0BAEpCoB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kCCPvB,wCAOII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA2D,wBAC3EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,mEACZ,IAAAV,E,yICtCf,IAAIlC,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,IACA,CACEiE,WAAY,CACV,CACEX,KAAM,UACNY,QAAS,6BACToC,UAAW,CAAE,oBAAoB,KAGrCnF,YAAa,6BACbX,MAAO,CAAE6D,KAAMzE,EAAIoH,WACnBtG,GAAI,CACFY,MAAO,SAASkC,GACdA,EAAOc,iBACPd,EAAOe,qBAIb,CACEvE,EACE,OACA,CAAEmB,YAAa,gBACf,CAACnB,EAAG,OAAQ,CAAEQ,MAAO,CAAE8C,KAAM,aAC7B,GAEF1D,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,sBAAwB,UAC9C5B,EACE,UACA,CACEQ,MAAO,CACLzB,GAAI,mBACJyH,SAAU,GACV,UAAW,GACXC,MAAO7G,EAAIgC,IAAI,sBAEjBkB,YAAalD,EAAImD,GAAG,CAClB,CACEC,IAAK,eACLC,GAAI,SAASe,GACX,IAAI0C,EAAK1C,EAAI0C,GACb,MAAO,CACL1G,EACE,WACA,CACEQ,MAAO,CAAEY,QAAS,WAClBV,GAAI,CACFY,MAAO,SAASkC,GACd5D,EAAI+G,UACJD,OAIN,CAAC9G,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,8BAOnC,CACE5B,EAAG,kBAAmB,CACpBgE,IAAK,QACLxD,MAAO,CACLyG,KAAM,IACN,WAAY,KACZL,SAAU,GACV9F,MAAOlB,EAAIoH,cAIjB,IAGJ,IAGAxF,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kCClFvB,oDAQII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAqE,wBACrFJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,sEACZ,IAAAV,E,2CCvCf,oDAQIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA6D,wBAC7EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,8DACZ,IAAAV,E,6CClCf,OACE,SAAF,CACI,QACE,OAAN,kCCR2N,O,yJCA3N,IAAIlC,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CAAEmB,YAAa,aACf,CACEnB,EAAG,MAAO,CAAEmB,YAAa,iBAAmB,CAC1CnB,EACE,MACA,CAAEmB,YAAa,eACf,CACEnB,EACE,WACA,CACEmB,YAAa,OACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAIsH,SAEnB,CAACtH,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,wBAG1B,KAGJV,EAAIQ,GAAG,KACPJ,EACE,WACA,CACEmB,YAAa,OACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAIuH,SAEnB,CAACvH,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,oBAG1B,IAGAkB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kCCzCvB,+CAOII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAmE,wBACnFJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,iDACZ,UAAAV,E,2DC1Bf,GACE,SAAF,CACI,QAEE,MAAN,CACQ,YAAR,OAFA,8BAEA,MAII,YACE,IAAN,YAOM,OANN,wCACQ,GAAR,0BAEA,qCACQ,GAAR,uBAEA,GAEI,UACE,MAAN,4BACM,IAAN,SAEM,IAAN,EADA,oBACA,yBAEM,OADA,EAAN,6CACA,oBCrCoO,O,kCCApO,wCAOIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,KACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA8C,wBAC9DJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,2DACZ,IAAAV,E,6CCtCf,oDAQIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAyD,wBACzEJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,gDACZ,IAAAV,E,2ICvCf,IAAIlC,EAAS,WACX,IACIG,EADMD,KACGE,eACTC,EAFMH,KAEGI,MAAMD,IAAMF,EACzB,OAAOE,EAAG,MAAO,CAACA,EAAG,aAHXH,KAG6BO,GAAG,KAAMJ,EAAG,iBAAkB,IAEnEwB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,2DCsCvB,GAEE,SAAF,CACI,UACE,MAAN,qOAIE,QAAF,CACI,eACE,EAAN,qBACM,KAAN,gBAEI,SACE,KAAN,gBAEI,SACE,KAAN,4BC9D2N,O,gICA3N,IAAI9B,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,SACA,CACEA,EACE,UACA,CAAEQ,MAAO,CAAE4G,KAAqB,WAAfvH,KAAKwH,OAAqBjG,QAAS,YACpD,CAACxB,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,2BAEzBhC,EAAIQ,GAAG,KACPJ,EACE,UACA,CAAEQ,MAAO,CAAE4G,KAAqB,SAAfvH,KAAKwH,OAAmBjG,QAAS,WAClD,CAACxB,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,yBAEzBhC,EAAIQ,GAAG,KACPJ,EACE,UACA,CAAEQ,MAAO,CAAE4G,KAAqB,UAAfvH,KAAKwH,OAAoBjG,QAAS,YACnD,CAACxB,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,iCAEzBhC,EAAIQ,GAAG,KACPJ,EACE,UACA,CAAEQ,MAAO,CAAE4G,KAAqB,cAAfvH,KAAKwH,OAAwBjG,QAAS,SACvD,CAACxB,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,8BAEzBhC,EAAIQ,GAAG,KACPR,EAAIwH,KACApH,EACE,SACA,CACEU,GAAI,CACF4G,OAAQ,SAAS9D,GAGf,OAFAA,EAAOe,kBACPf,EAAOc,iBACA1E,EAAI2H,SAAS/D,IAEtBgE,MAAO,SAAShE,GAGd,OAFAA,EAAOe,kBACPf,EAAOc,iBACA1E,EAAI6H,QAAQjE,MAIzB,CACExD,EAAG,KAAM,CAACJ,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,2BAChChC,EAAIQ,GAAG,KACPJ,EACE,eACA,CACEQ,MAAO,CACLzB,GAAI,QACJ8H,MAAOjH,EAAIgC,IAAI,kCACf,YAAa,UAGjB,CACE5B,EAAG,gBAAiB,CAClBQ,MAAO,CAAEzB,GAAI,QAAS0B,QAASb,EAAI8H,MAAOC,SAAU,IACpD9G,MAAO,CACLC,MAAOlB,EAAIgI,KAAKF,MAChB1G,SAAU,SAASC,GACjBrB,EAAIiI,KAAKjI,EAAIgI,KAAM,QAAS3G,IAE9BC,WAAY,iBAIlB,GAEFtB,EAAIQ,GAAG,KACPJ,EACE,eACA,CACEQ,MAAO,CACLzB,GAAI,gBACJ8H,MAAOjH,EAAIgC,IAAI,oCACf,YAAa,YAGjB,CACE5B,EAAG,eAAgB,CACjBQ,MAAO,CACLzB,GAAI,UACJ4I,SAAU,GACVG,YAAalI,EAAIgC,IACf,2CAGJf,MAAO,CACLC,MAAOlB,EAAIgI,KAAKG,QAChB/G,SAAU,SAASC,GACjBrB,EAAIiI,KAAKjI,EAAIgI,KAAM,UAAW3G,IAEhCC,WAAY,mBAIlB,GAEFtB,EAAIQ,GAAG,KACPJ,EACE,eACA,CACEQ,MAAO,CACLzB,GAAI,oBACJ8H,MAAOjH,EAAIgC,IAAI,wCACf,YAAa,gBAGjB,CACE5B,EAAG,kBAAmB,CACpBQ,MAAO,CACLzB,GAAI,cACJ+I,YAAalI,EAAIgC,IACf,8CAEFqF,KAAM,IACN,WAAY,IACZU,SAAU,IAEZ9G,MAAO,CACLC,MAAOlB,EAAIgI,KAAKI,YAChBhH,SAAU,SAASC,GACjBrB,EAAIiI,KAAKjI,EAAIgI,KAAM,cAAe3G,IAEpCC,WAAY,uBAIlB,GAEFtB,EAAIQ,GAAG,MACNR,EAAIqI,YAAcrI,EAAIsI,SACnBlI,EACE,eACA,CACEQ,MAAO,CACLzB,GAAI,iBACJ8H,MAAOjH,EAAIgC,IAAI,qCACf,YAAa,aAGjB,CACE5B,EAAG,eAAgB,CACjBQ,MAAO,CACLzB,GAAI,WACJ4I,SAAU,GACVQ,MAAOtI,KAAKuI,cACZN,YAAalI,EAAIgC,IACf,2CAEFyG,UAAWzI,EAAI0I,mBAEjBzH,MAAO,CACLC,MAAOlB,EAAIgI,KAAKW,SAChBvH,SAAU,SAASC,GACjBrB,EAAIiI,KAAKjI,EAAIgI,KAAM,WAAY3G,IAEjCC,WAAY,mBAGhBtB,EAAIQ,GAAG,KACPJ,EACE,0BACA,CAAEQ,MAAO,CAAEzB,GAAI,sBACf,CACEa,EAAIQ,GACF,eACER,EAAIS,GACFT,EAAIgC,IAAI,sCAEV,iBAKV,GAEFhC,EAAIW,KACRX,EAAIQ,GAAG,MACNR,EAAIqI,YAAcrI,EAAIsI,SACnBlI,EACE,eACA,CACEQ,MAAO,CACLzB,GAAI,iBACJ8H,MAAOjH,EAAIgC,IAAI,qCACf,YAAa,aAGjB,CACE5B,EAAG,eAAgB,CACjBQ,MAAO,CACLzB,GAAI,WACJ+I,YAAalI,EAAIgC,IACf,4CAGJf,MAAO,CACLC,MAAOlB,EAAIgI,KAAKY,SAChBxH,SAAU,SAASC,GACjBrB,EAAIiI,KAAKjI,EAAIgI,KAAM,WAAY3G,IAEjCC,WAAY,oBAIlB,GAEFtB,EAAIW,KACRX,EAAIQ,GAAG,KACPJ,EACE,eACA,CACEQ,MAAO,CACLzB,GAAI,cACJ8H,MAAOjH,EAAIgC,IAAI,kCACf,YAAa,UAGjB,CACE5B,EAAG,eAAgB,CACjBQ,MAAO,CACLzB,GAAI,QACJ0J,KAAM,QACNd,SAAU,GACVG,YAAalI,EAAIgC,IACf,yCAGJf,MAAO,CACLC,MAAOlB,EAAIgI,KAAKc,MAChB1H,SAAU,SAASC,GACjBrB,EAAIiI,KAAKjI,EAAIgI,KAAM,QAAS3G,IAE9BC,WAAY,iBAIlB,GAEFtB,EAAIQ,GAAG,KACPR,EAAI+I,UACA3I,EACE,eACA,CACEQ,MAAO,CACLzB,GAAI,aACJ8H,MAAOjH,EAAIgC,IAAI,iCACf,YAAa,SAGjB,CACE5B,EAAG,eAAgB,CACjBQ,MAAO,CACLzB,GAAI,OACJ4I,SAAU,GACVG,YAAalI,EAAIgC,IACf,wCAGJf,MAAO,CACLC,MAAOlB,EAAIgI,KAAKgB,KAChB5H,SAAU,SAASC,GACjBrB,EAAIiI,KAAKjI,EAAIgI,KAAM,OAAQ3G,IAE7BC,WAAY,gBAIlB,GAEFtB,EAAIW,KACRX,EAAIQ,GAAG,KACPJ,EACE,MACA,CAAEmB,YAAa,WACf,CACEnB,EACE,WACA,CACEQ,MAAO,CACLiI,KAAM,SACNvD,SAAUtF,EAAIiJ,aACdzH,QAAS,YAGb,CAACxB,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,iCAEzBhC,EAAIQ,GAAG,KACPJ,EACE,WACA,CAAEQ,MAAO,CAAEiI,KAAM,QAASrH,QAAS,WACnC,CAACxB,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIgC,IAAI,iCAG3B,IAGJ,GAEFhC,EAAIW,MAEV,IAGAiB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,gICxTvB,IAAI9B,EAAS,WACX,IACIG,EADMD,KACGE,eACTC,EAFMH,KAEGI,MAAMD,IAAMF,EACzB,OAAOE,EAAG,MAAO,CAAEmB,YAAa,aAAe,CAC7CnB,EACE,MACA,CACEmB,YAAa,UACbT,GAAI,CACFY,MAAO,SAASkC,GACdA,EAAOc,iBACPd,EAAOe,qBAIb,CACEvE,EACE,aACA,CAACA,EAlBCH,KAkBMiJ,QAAS,CAAEnF,IAAK,YAAajD,GAAI,CAAEqI,KAlBzClJ,KAkBmDmJ,WACrD,IAGJ,MAIFxH,EAAkB,GACtB7B,EAAO8B,eAAgB,G,gIC5BvB,IAAI9B,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CACEJ,EAAIqJ,QACAjJ,EAAG,MAAO,CAACJ,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,sBAChCV,EAAIW,KACRX,EAAIQ,GAAG,KACPR,EAAIsJ,MACAlJ,EAAG,MAAO,CAACJ,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,4BAChCV,EAAIW,KACRX,EAAIQ,GAAG,KACPJ,EACE,eACA,CACEA,EAAG,qBAAsB,CACvBQ,MAAO,CAAEC,QAASb,EAAIa,SACtBC,GAAI,CAAEC,OAAQf,EAAIgB,UAClBC,MAAO,CACLC,MAAOlB,EAAImB,SACXC,SAAU,SAASC,GACjBrB,EAAImB,SAAWE,GAEjBC,WAAY,eAIlB,GAEFtB,EAAIQ,GAAG,KACPR,EAAIuJ,UACAnJ,EAAG,MAAO,CACRmB,YAAa,OACb2F,SAAU,CAAEC,UAAWnH,EAAIS,GAAGT,EAAIgC,IAAI,sBAExChC,EAAIW,MAEV,IAGAiB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,yEC/BvB,GACE,KAAF,KACA,CACM,SAAN,OAGE,MAAF,CACI,QAAJ,GACA,IACM,KAAN,mBAGE,SAAF,IACA,aACM,OAAN,oBACM,QAAN,uBAEI,UACE,MAAN,KACM,EAAN,MAAQ,MAAR,KAAQ,KAAR,2BACM,IAAN,wBACQ,MAAR,UACA,SACQ,EAAR,MAAU,iBAEJ,OAAN,IAGE,QAAF,CACI,SAAJ,GACM,IAAN,OACM,GAAN,QACQ,IAAR,uBACU,GAAV,WACY,EAAZ,EACY,EAAZ,kBACY,MAIN,KAAN,0CAGE,UACF,eACM,KAAN,8BC1D2O,O,kCCA3O,2DAQII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,KACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAqD,wBACrEJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,qDACZ,UAAAV,E,2CCvCf,oDAQIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAyD,wBACzEJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,iEACZ,IAAAV,E,gPCzBf,MAAMuH,EAAQ,EAAd,OAAc,CAAd,kBAcM,mBAAN,KAMMC,EAAa,EAAnB,QACMC,EAAM,EAAZ,QAEAC,KAAKC,KAAKC,GAAG,uBAAyB,gBAEtC,IAAIC,GAAe,EACfC,EAAgB,KAChBC,GAAU,EAEd,KACEC,WAAY,CAAd,eACEC,KAAI,KACK,CACLC,aAAc,KACd3F,UAAU,EACV4F,aAAa,EACbC,aAAa,EACbC,WAAW,EACXlF,QAAQ,IAGZtG,SAAU,IACZ,aACMyL,gBAAiB,GAAvB,YACMtG,OAAQ,GAAd,SACMuG,QAAS,GAAf,UACMC,KAAM,GAAZ,OACMhD,OAAQ,GAAd,eACMiD,OAAQ,GAAd,8BACMC,aAAc,KACPpC,EAAMtE,WACNsE,EAAMtE,OAAO2G,YACbrC,EAAMtE,OAAO2G,QAAQ,MACtBrC,EAAMtE,OAAO2G,QAAQ,GAAG9F,IAAI6F,eAGlCE,OAAQ,KACDtC,EAAMtE,WACNsE,EAAMtE,OAAO2G,YACbrC,EAAMtE,OAAO2G,QAAQ,MACtBrC,EAAMtE,OAAO2G,QAAQ,GAAG9F,IAAI+F,SAGlCC,QAAS,GAAf,UACMC,KAAM,GAAZ,OACMlG,KAAM,GAAZ,OACMiB,MAAO,GAAb,QACMC,OAAQ,GAAd,SACMiF,eAAgB,GAAtB,iBACMC,gBAAiB,GAAvB,kBACMC,gBAAiB,GAAvB,kBACMC,SAAU,GAAhB,WACMC,YAAa,GAAnB,cACMC,OAAQ,GAAd,SACMC,SAAU,GAAhB,kBACMC,MAAO,GAAb,eACMC,gBAAiB,GAAvB,qDAEO,OAAP,IAAO,CAAP,CACA,WACA,aACA,YACA,kBACA,YACA,oBACA,aACA,mBAEI,SAEE,MAAsB,SAAfvL,KAAKyK,QAAqBzK,KAAKwL,gBAAkBxL,KAAK8E,OAAOwD,MAAMmD,cAAgB,EAAhG,4CAEI,kBACE,OAAQzL,KAAK0L,QAAU1L,KAAKmK,eAAiBnK,KAAKoK,aAEpD,YACE,IAAIuB,EAAI,YA2BR,OA1BI3L,KAAK8E,OAAOwD,MAAMsD,oBACpBD,GAAK,2BAELA,GAAK,8BAEH3L,KAAK8E,OAAOwD,MAAMuD,uBACpBF,GAAK,+BAELA,GAAK,mCAEH3L,KAAK8E,OAAOwD,MAAMwD,iBACpBH,GAAK,wBAELA,GAAK,0BAEH3L,KAAKqK,UACPsB,GAAK,wBAELA,GAAK,4BAEH3L,KAAKmF,OACPwG,GAAK,oBAELA,GAAK,wBAEPA,GAAK,cAAgB3L,KAAKyK,OACnBkB,GAET,aACE,OAAI3L,KAAK6F,OAAS7F,KAAK8F,OAAe,OAC/B,eAGXiG,QAAS,WACPC,OAAO5G,iBAAiB,YAAapF,KAAKiM,YAE5CC,MAAO,CACL,gBAAgBC,EAAGC,GACbD,GACFnM,KAAKqM,MAAMC,QAAQC,WAGvB,YAAYJ,EAAGC,GACJ,MAALD,IAAgC,IAAnBnM,KAAKqK,YACpBrK,KAAKwM,QAAQC,YAAcN,IAG/B,SAASA,GACPnM,KAAK0M,YAAYP,IAEnB,MAAMA,GACJnM,KAAK2M,SAASR,IAEhB,OAAOA,EAAGC,GACkB,MAAtBpM,KAAK4M,eAAyB5M,KAAK4M,eAAiB5M,KAAKwH,SACzDxH,KAAKwH,QAAU,EAAzB,wBACUxH,KAAKwH,QAAU,EAAzB,yBAEI,OAAO2E,EAAGC,GACR,MAAMS,EAAO7M,KACJ,GAALmM,GAAkB,GAALC,GAAeS,EAAK1C,cACnC0C,EAAK1C,aAAc,KAIzBrL,QAAS,CACP,WAAWgO,GACT,IAAK,MAAMxN,KAAKwN,EAAGC,iBAAiB,SAClCzN,EAAE0N,UAGN,YAAYb,GACV,GAAKA,EACL,GAAKnM,KAAKiN,WAAuB,OAAVd,EAAEvD,KAOvB5I,KAAKiN,UAAUC,cAAgBf,EAAEjN,OAPK,CACtCiN,EAAEgB,SAAU,EACZ,IAAK,MAAMC,KAAKpN,KAAKiF,IAAI8H,iBAAiB,SACxC/M,KAAKqN,WAAWD,GAChBpN,KAAKsN,YAAYF,EAAGjB,KAM1B,SAASA,GACFnM,KAAKiN,WAAcd,IACxBnM,KAAKiN,UAAUM,WAAapB,EAAEjN,KAEhC,SACE8M,OAAOwB,KAAKxN,KAAKyN,kBAAkBC,YAErC,UAAUpO,GACJuK,IACJA,GAAe,EACf8D,aAAa7D,GACb9J,KAAKiF,IAAIjC,MAAM4K,OAAS,UACL,SAAf5N,KAAKyK,SACPX,EAAgB+D,WAAW7N,KAAK8N,WAAY,QAGhD,aACE9N,KAAKiF,IAAIjC,MAAM4K,OAAS,OACxB/D,GAAe,EACfgE,YAAW,WACThE,GAAe,IACvB,MAEI,aAAarC,GACX,MAAM,SAAZ,eACMxH,KAAK4M,cAAgBpF,EACjBA,IAAW,EAArB,IACQxH,KAAKuE,UAAW,GAElBS,EAAS,qBAAsBwC,IAEjC,WAAW5C,EAAMkG,GACf,MAAM,SAAZ,eACM9F,EAAS,aAAc,CAA7B,iBAEI,wBAAwB+I,GACtB,MAAM,SAAZ,eACM/I,EAAS,iCAAkC+I,IAE7C,eAAeA,GACb,MAAM,SAAZ,eACM/I,EAAS,wBAAyB+I,IAEpC,aACM/N,KAAKgO,QACPhO,KAAKgO,OAAOC,WAGhB,aACE,IAAIC,EAAIlO,KAAKwM,QACTxM,KAAKwM,UACPxM,KAAKwM,QAAU,KACV0B,EAAEC,QACLD,EAAEE,QAEJF,EAAElB,SACFhN,KAAKiF,IAAIiC,UAAY,IAEnB6C,GACF4D,aAAa5D,IAGjB,YAAY+C,EAAIuB,GACd,MAAMC,EAAMC,SAASC,cAAc,SACnCF,EAAIG,aAAa,MAAOJ,EAAExJ,IAAIL,MAC9B8J,EAAIG,aAAa,OAAQJ,EAAEK,MAC3BJ,EAAIG,aAAa,QAASJ,EAAErH,OAC5BsH,EAAIG,aAAa,UAAWJ,EAAEM,SAC1BN,EAAElB,SAASmB,EAAIG,aAAa,UAAW,WAC3C3B,EAAG8B,YAAYN,IAEjB,SACE,MAAM,OAAZ,sDACYxB,EAAKyB,SAASC,cAAc/D,GAClCqC,EAAG2B,aAAa,cAAe,aAC3BI,GAAU/B,EAAG2B,aAAa,WAAY,YAC1C,MAAMK,GAAWD,GAAY7O,KAAKiL,gBAAgB3K,OAAS,GAAKN,KAAK4K,UAAY5K,KAAKsK,gBAAkB,OAAS,OAEjHwC,EAAG2B,aAAa,UAAWK,GACvBC,GAAQjC,EAAG2B,aAAa,SAAUM,GAClC/O,KAAK6F,OAA4B,QAAnB7F,KAAKgP,YAAsBlC,EAAG2B,aAAa,QAASzO,KAAK6F,OACvE7F,KAAK8F,QAA6B,QAAnB9F,KAAKgP,YAAsBlC,EAAG2B,aAAa,SAAU,QACxE,IAAK,MAAMxI,KAAK0E,EAAS,CACvB,MAAMsE,EAAMV,SAASC,cAAc,UACnCS,EAAIR,aAAa,MAAOxI,EAAEpB,IAAIL,MAC1ByB,EAAE2C,MAAMqG,EAAIR,aAAa,OAAQxI,EAAE2C,MACnC3C,EAAEW,OAAOqI,EAAIR,aAAa,QAASxI,EAAEW,OACzCkG,EAAG8B,YAAYK,GAEjB,IAAK,MAAMZ,KAAKhO,EACdL,KAAKsN,YAAYR,EAAIuB,GAEvB,OAAOvB,GAET,iBAAiBA,GACf,MAAMD,EAAO7M,MACP,OAAZ,4CACM+E,EAAO,EAAb,wEACM,MAAM,OAAZ,sDACM2E,KAAKC,KAAKuF,SAAS5G,EAAMkC,MACRxK,KAAKmP,SAAtB,MACMvK,EAAO5E,KAAK4E,KAGZsG,EAAW,GAEb5C,EAAM4C,SAASkE,WAAW,EAApC,kBACU9G,EAAM4C,SAASuB,aAAavB,EAASmE,KAAK,WAC1C/G,EAAM4C,SAASoE,UAAU,EAAnC,iBACUhH,EAAM4C,SAASoE,UAAU,EAAnC,0BACUhH,EAAM4C,SAAS6C,UAAU,EAAnC,iBACUzF,EAAM4C,SAASqE,YAAY,EAArC,mBACUjH,EAAM4C,SAASsE,QAAQ,EAAjC,eACoB,SAAV/E,IACEnC,EAAM4C,SAASuE,UAAU,EAArC,iBACYnH,EAAM4C,SAASwE,YAAYxE,EAASmE,KAAK,cACzC/G,EAAM4C,SAASyE,WAAW,EAAtC,uBACYrH,EAAM4C,SAAS0E,UAAU,EAArC,iBACYtH,EAAM4C,SAAS2E,UAAU,EAArC,iBACYvH,EAAM4C,SAAS4E,OAAO,EAAlC,cACYxH,EAAM4C,SAAS6E,QAA3B,+BACQ7E,EAASmE,KAAK,UAKZW,EAAQC,YAAcpD,EAAKqD,YAC7BhF,EAASmE,KAAK,SAGZ/G,EAAM4C,SAAS3E,UAAcsG,EAAKqD,YAAeF,EAAQC,YAC3D/E,EAASmE,KAAK,YAEXrD,OAAOmE,WACJ3G,EAAW,eAGnB,MAAM4G,UAAiBpE,OAAOmE,IAAIE,cAAcC,OAC9C,YAAYC,GACVC,MAAMD,GACN,IAAIE,EAAOzQ,KAAKyQ,KAAKC,KAAK1Q,MAC1BA,KAAKyQ,KAAOE,eAAgBC,EAASL,EAAQM,GAC3C,IAAIC,EAAM,IAAIrH,EAAImH,EAAQE,KACtB7K,EAAI,GACJ2K,EAAQG,OACV9K,EAAI2K,EAAQG,MAEd,MAAMC,EAAQF,EAAIG,SAASC,MAAM,wBAAwB,GACzDN,EAAQE,UAAYxI,EAAM8C,OAAO+F,WAAWnB,EAAQb,SAAU6B,EAAO/K,EAAG+J,EAAQoB,UAChFX,EAAKG,EAASL,EAAQM,KAK5B,IAAIP,EAASF,EACTiB,EAAgB,KAChBC,EAAgB,IAAIC,SAAQ,SAAtC,KACQF,EAAgB1R,KAGlB,GAAmC,GAA/BkN,EAAK5B,gBAAgB3K,OAAa,CACpC,MAAMkR,EAAWlB,EAAOmB,UAAUhB,KAClCH,EAAOmB,UAAUhB,KAAOE,eAAhC,OAEU,aADMW,EACCE,EAASE,KAAK1R,KAAM4Q,EAASL,EAAQM,IAKhD7L,EAAS,sBAAuB,IAChCA,EAAS,kBAAmB,IAC5B6H,EAAK8E,wBAAwB,GAC7B9E,EAAK+E,eAAe,GAIpB5R,KAAKwM,QAAU,IAAIqF,EAAmB/E,EAAI,CACxCgF,MAAO9R,KAAK8E,OACZiN,MAAO/R,KAAKgS,OACZ9G,WACA2D,WACAoD,YAAY,EACZ,WACE,IAAKpF,EAAKjC,QAAUtC,EAAM4J,WAAa5J,EAAM4J,UAAUzH,QAAUnC,EAAM4J,UAAUzH,OAAOsD,SAEtF,OADAlB,EAAK+E,eAAetJ,EAAM4J,UAAUzH,OAAOsD,UACpCoE,WAAW7J,EAAM4J,UAAUzH,OAAOsD,WAG7CqE,4BAA6B,GAArC,GACQC,2BAA4B,GAApC,GACQC,IAAK,CACHR,MAAO9R,KAAK8E,OACZyN,cAAe,EACfC,KAAM,cACNC,cAAe5D,EACf6D,uBAAwB,IACxBC,wBAAyB,IACzBC,+BAAgC,IAChCC,sBAAsB,EACtBC,mBAAmB,EACnBC,aAAa,EACbC,eAAe,EAIf1C,UAGFtB,WAAYhP,KAAKgP,WACjBrM,MAAO,SAAf,GACU4G,EAAMjK,GACN0F,EAAS,kBAAmB1F,IAE9B,cAAc2T,GACZpG,EAAKI,UAAYgG,EAAMhG,UACnBgG,EAAMhG,YACRgG,EAAMhG,UAAUpM,GAAGsP,IAAI+C,OAAOC,iBAAiB,SAAUC,EAAOnJ,GAC1DgJ,EAAMhG,UAAUoG,OAAO/S,OAAS,IAClC2S,EAAMhG,UAAUqG,WAAa,MAGjCL,EAAMhG,UAAUpM,GAAGsP,IAAI+C,OAAOK,OAAO,SAAUH,EAAOnJ,GAapD,GAAIA,EAAKuJ,MACP,OAAQvJ,EAAKrB,MACX,KAAKuH,IAAIsD,WAAWC,cAElBnK,EAAM,mDACN0J,EAAMhG,UAAU0G,YAChB,MACF,KAAKxD,IAAIsD,WAAWG,YAClBrK,EAAM,iDACN0J,EAAMhG,UAAU4G,oBAChB,MACF,QAEEZ,EAAMhG,UAAUgB,eAM1BlE,EAAU+J,aAAY,WACpB,MAAM5F,EAAI+E,EAAMc,cACXC,MAAM9F,IACTrB,EAAK8E,wBAAwBzD,KAE3C,KACU+E,EAAM7N,iBAAiB+K,IAAI+C,OAAOe,wBAAyB,KACzD,MAAMC,EAASjB,EAAMhG,UAAUoG,OAAO,GAAGc,aACzCnP,EAAS,sBAAuBiO,EAAMhG,UAAUmH,eAAeC,OAAOpO,GAAKiO,EAAOI,SAASrO,EAAEsO,WAC7F1H,EAAKH,YAAYpE,EAAMkM,OAAOnJ,YAGhC4H,EAAM7N,iBAAiB+K,IAAI+C,OAAOuB,qBAAsB,KACtD,MAAMP,EAASjB,EAAMhG,UAAUoG,OAAO,GAAGqB,cACzC1P,EAAS,kBAAmBiO,EAAMhG,UAAU0H,YAAYN,OAAOlI,GAAK+H,EAAOI,SAASnI,EAAEoI,WACtF1H,EAAKF,SAASrE,EAAMkM,OAAOlJ,SAO7B,IAAIsJ,GAAwB,EAI5B3B,EAAM7N,iBAAiB,UACjC,UACA,gBACc,EAAd,2BACc,GAAd,GAGA,WAEc,EAAd,gBACA,kBACA,oDACA,2BAGA,0DAEU6N,EAAM7N,iBAAiB,OAAQ,IAAzC,qBACU6N,EAAM7N,iBAAiB,UAAW,IAAMyH,EAAKgI,aAAa,EAApE,IACU5B,EAAM7N,iBAAiB,QAAS,IAA1C,qBACU6N,EAAM7N,iBAAiB,QAAS,KAC9B,EAAZ,kBACA,4BAEU6N,EAAM7N,iBAAiB,aAAc,KAC/ByH,EAAKL,SACPK,EAAKiI,WAAWlQ,EAAMiI,EAAKL,QAAQC,eAGvCwG,EAAM7N,iBAAiB,UAAW,KAChCyH,EAAKgI,aAAa,EAA9B,IACiBhI,EAAKxC,WAAawC,EAAKI,WAAaJ,EAAKI,UAAU8H,UAAY,IAClElI,EAAKI,UAAU8H,UAAY,KAG/B9B,EAAM7N,iBAAiB,SAAU,KAC/ByH,EAAKgI,aAAa,EAA9B,IACiBhI,EAAKxC,WAAawC,EAAKI,YAC1BJ,EAAKI,UAAU8H,WAAa,KAGhC9B,EAAM7N,iBAAiB,OAAQuL,UACxB9D,EAAKxC,YACNgH,GACFA,IAEFxE,EAAKxC,WAAY,EACjBrF,EAAS,gBAEXA,EAAS,mBAInB,6DACQD,EAAO,EAAf,QAEA,8DACQA,EAAO,EAAf,QAEM/E,KAAKwM,QAAQwI,UAAU5P,iBAAiB,qBAAsB,KAC5DL,EAAO,EAAf,QAEM/E,KAAKwM,QAAQwI,UAAU5P,iBAAiB,mBAAoB,KAC1DL,EAAO,EAAf,QAEU8J,GACFhB,YAAW,WACThB,EAAKL,QAAQyI,SACvB,IAII,aACE,GAAkC,GAA9BjV,KAAKgE,OAAO2G,QAAQrK,OACtB,OAEF,MAAM4U,EAAYlV,KAAKgE,OAAO2G,QAAQ,GAAG9F,IAAIL,KAC7C,GAAIxE,KAAKgL,iBAAmBkK,EAC1B,OAEFlV,KAAK6U,aAAa,EAAxB,GAEM,MAAM,OAAZ,4CACM9P,EAAO,EAAb,iBACMA,EAAO,EAAb,KACM/E,KAAKmV,OACL,MAEMrI,EAAK9M,KAAKoV,SAFHpV,KAGRqM,MAAM2I,UAAUpG,YAAY9B,SAHpB9M,KAIFqV,WAAWvI,IAExB,OACE9M,KAAKsV,aACLtV,KAAKuV,cAEP,UACEvV,KAAKuE,UAAW,EAChBvE,KAAKoK,aAAc,EACnB,MAAMyC,EAAO7M,KACb6N,WAAW,KACThB,EAAKzC,aAAc,GAC3B,QAGE,UAEEyD,WAAW7N,KAAKwV,KAAM,IAExB,UAEE3H,WAAW7N,KAAKwV,KAAM,IAExB,gBACExV,KAAKmV,QAEP,cACEnV,KAAKmV,W,sJC9kBT,IAAIrV,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CAAEmB,YAAa,WACf,CACEvB,EAAI0V,QACAtV,EACE,WACA,CACEmB,YAAa,YACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAI2V,SAEnB,CAAC3V,EAAIQ,GAAG,KAAOR,EAAIS,GAAGT,EAAIU,GAAG,uBAE/BV,EAAIW,KACRX,EAAIQ,GAAG,KACPR,EAAI4V,UACAxV,EACE,WACA,CACEmB,YAAa,SACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAI6V,WAEnB,CAAC7V,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,qBAExBV,EAAIW,KACRX,EAAIQ,GAAG,KACPR,EAAI8V,QACA1V,EACE,WACA,CACEmB,YAAa,YACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAI+V,SAEnB,CAAC/V,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,gBAAkB,QAE1CV,EAAIW,MAEV,IAGAiB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,sCChBvB,GACE,WAAF,CAAI,K,UAAJ,GACE,KAAF,KACA,CACM,QAAN,EACM,SAAN,IAGE,SAAF,CACI,QACE,OAAN,wDAEI,YACE,MAAN,KACM,IAAN,+BAIM,GAHN,oDACQ,EAAR,mBAEA,gBACQ,IAAR,gBACU,EAAV,yBAMQ,IAAR,+CACU,EAAV,oBAGM,OAAN,GAEI,UACE,OAAN,iBAEI,UACE,OAAN,mDAGE,QAAF,CACI,SACE,KAAN,WAEI,SACE,KAAN,aC5EgO,O,kCCAhO,2DAQII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA0D,wBAC1EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,8CACZ,UAAAV,E,+CCsFf,GACEgI,WAAY,CAAd,O,UAAA,GACE,OACE,MAAO,CACLjC,KAAM,CACJG,QAAS,GACTC,YAAa,GACbO,SAAU,GACVC,SAAU,GACVE,MAAO,GACPE,KAAM,GACNlB,MAAO,MAWTL,OAAQ,KACRK,MAAO,CACb,CAAQ,KAAR,iDAAQ,MAAR,MACA,CAAQ,KAAR,oDAAQ,MAAR,GACA,CAAQ,KAAR,oDAAQ,MAAR,GACA,CAAQ,KAAR,kDAAQ,MAAR,GACA,CAAQ,KAAR,qDAAQ,MAAR,IAEMN,MAAM,IAGV1I,SAAU,CACR,YACE,OAAN,oBAEI,aACE,OAAN,oBAEI,WACE,OAAN,uBAEI,gBACE,MAAN,wBACA,2CAEI,aACE,MAAN,wBAEI,eACE,MAAN,2BAEI,UACE,QAAN,iBACA,qBAGEC,QAAS,CACP2J,kBAAkBxH,GACTA,EAAM2B,cAEf,eAAemT,GACb,GAAmB,MAAf/V,KAAKwH,SAAmBxH,KAAKgW,QAAS,OAC1C,MAAM,SAAZ,eACMhW,KAAKwH,OAAS,aACdxH,KAAK+H,KAAKW,SAAW1I,KAAK+H,KAAKW,SAC/B,UACQ1D,EAAS,YAAahF,KAAK+H,MACjC/H,KAAKwH,OAAS,UACdxH,KAAKuH,MAAO,EACpB,SACiB,GAALjI,GACFU,KAAKwH,OAAS,SACdxH,KAAKuH,MAAO,GAEZvH,KAAKwH,OAAS,UAIpB,QAAQuO,GACNA,EAAItR,iBAEJzE,KAAK+H,KAAKG,QAAhB,GACMlI,KAAK+H,KAAKI,YAAc,GACxBnI,KAAK+H,KAAKW,SAAhB,GACM1I,KAAK+H,KAAKY,SAAhB,GACM3I,KAAK+H,KAAKc,MAAhB,GACM7I,KAAK+H,KAAKgB,KAAhB,GACM/I,KAAK+H,KAAKF,MAAhB,KAEM7H,KAAKuH,MAAX,EACMvH,KAAKiW,UAAU,KACbjW,KAAKuH,MAAO,IAEdvH,KAAKwH,OAAS,OAGlB,WACE,MAAO,CACLZ,MAAO5G,KAAKS,GAAG,0BCjOsL,O,oCCa3M,OACE3B,QAAS,CACP,QAAQQ,GACN,OAAN,yCChB2M,O,2DCA3M,uBAA2lB,G,kDCa3lB,GACE,KAAF,KACA,CACM,SAAN,IAGE,MAAF,CACI,QAAJ,GACA,IACM,KAAN,iBAGE,SAAF,IACA,aACM,OAAN,eACM,QAAN,oBAEI,UACE,MAAN,KACA,uBACQ,EAAR,MAAU,MAAV,EAAU,KAAV,4BAEM,IAAN,wBACQ,MAAR,UACA,OACQ,EAAR,MAAU,iBAEJ,OAAN,IAGE,QAAF,CACI,SAAJ,GACM,IAAN,OACM,GAAN,QACQ,IAAR,uBACU,GAAV,SACY,EAAZ,EACY,MAIN,KAAN,uCAGE,UACF,eACM,KAAN,4BC3D6O,O,sFC+C7O,MAAM4W,EAAW,EAAjB,QAKA,OACE,WAAF,CAAI,KAAJ,KACE,MAAF,WACE,SAAF,CACI,eACE,MAAN,oCACM,OAAN,YACA,SAEA,aAGE,OACE,MAAJ,CACM,SAAN,KACM,QAAN,CACQ,SAAR,CACU,QAAV,2BACU,UAAV,KAEQ,cAAR,CACU,QAAV,gBACU,UAAV,KAEQ,OAAR,CACU,QAAV,SACU,UAAV,QAKE,QAAF,CACI,UACE,KAAN,gBAEI,OAAJ,GACM,KAAN,aAGE,UACE,EAAJ,mCACM,KAAN,cACM,KAAN,kBACM,KAAN,4CAEI,KAAJ,6BCjG4N,O,gICA5N,IAAIpW,EAAS,WACX,IACIG,EADMD,KACGE,eAEb,OAHUF,KAEGI,MAAMD,IAAMF,GACf,MAAO,CAAEU,MAAO,CAAEkE,IAHlB7E,KAG2B6E,QAEnClD,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kCCPvB,oDAQII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA2D,wBAC3EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,4DACZ,IAAAV,E,6CCvCf,wCAOIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,KACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA+C,wBAC/DJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,wCACZ,IAAAV,E,qDCffmU,OAAO1E,UAAU2E,SAAW,WAC1B,IAAF,oBACA,qBACA,4BACA,gBAKE,OAHF,OAAI,EAAJ,OACA,OAAI,EAAJ,OACA,OAAI,EAAJ,OACA,eAGA,OACE,MAAF,CACI,KAAJ,QAEE,QAAF,CACI,aACE,KAAN,wBAEI,YACE,KAAN,yBC5C8N,O,sFCuB9N,GACE,WAAF,CAAI,SAAJ,IAAI,KAAJ,KACE,KAAF,KACA,CACM,QAAN,aAGE,SAAF,IACA,aACM,OAAN,qBAGE,QAAF,CACI,SACE,KAAN,iBAGE,MAAF,CACI,OAAJ,KACA,iBACQ,KAAR,eAEQ,KAAR,mBACQ,KAAR,kBC9C4N,O,kDCqB5N,GACE,SAAF,IACA,aACA,YAEA,aACA,sBAEI,YACE,OAAN,iCAEI,UACE,OAAN,8CAEI,UACE,OAAN,6EAGE,QAAF,CACI,OAAJ,GACM,MAAN,4CACA,8BACM,KAAN,2BAEI,OAAJ,GACM,MAAN,4CACA,8BACM,KAAN,2BAEI,SAAJ,GACM,KAAN,iBCnDoO,O,gICApO,IAAItW,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CACEA,EACE,eACA,CAAEQ,MAAO,CAAEqG,MAAOjH,EAAIU,GAAG,kBACzB,CACEN,EAAG,qBAAsB,CACvBQ,MAAO,CAAEC,QAASb,EAAIa,SACtBC,GAAI,CAAEC,OAAQf,EAAIgB,UAClBC,MAAO,CACLC,MAAOlB,EAAImB,SACXC,SAAU,SAASC,GACjBrB,EAAImB,SAAWE,GAEjBC,WAAY,eAIlB,IAGJ,IAGAM,EAAkB,GACtB7B,EAAO8B,eAAgB,G,gIC9BvB,IAAI9B,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CAAEmB,YAAa,WACf,CACEvB,EAAI0V,QACAtV,EACE,WACA,CACEmB,YAAa,YACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAI2V,SAEnB,CAAC3V,EAAIQ,GAAG,KAAOR,EAAIS,GAAGT,EAAIU,GAAG,uBAE/BV,EAAIW,KACRX,EAAIQ,GAAG,KACPR,EAAIuD,GAAGvD,EAAIsW,WAAW,SAASC,EAAMC,GACnC,OAAOpW,EAAG,OAAQ,CAChBgD,IAAKmT,EAAK7S,KACV9C,MAAO,CAAE2V,KAAMA,EAAMC,MAAOA,QAGhCxW,EAAIQ,GAAG,KACPR,EAAI8V,QACA1V,EACE,WACA,CACEmB,YAAa,YACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAI+V,SAEnB,CAAC/V,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,gBAAkB,QAE1CV,EAAIW,MAEV,IAGAiB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,2VC3CvB,uBAA+mB,G,8gWCA/mB,uBAA8hB,G,kCCA9hB,2DAQII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA4D,wBAC5EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,oCACZ,UAAAV,E,kECvCf,uBAAqjB,G,oCCArjB,+CAOIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,KACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAuD,wBACvEJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,iDACZ,UAAAV,E,kECtCf,uBAAmnB,G,kCCAnnB,oDAQIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA0D,wBAC1EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,2DACZ,IAAAV,E,2CC3Bf,OACE,SAAF,CACI,OACE,OAAN,gCAGE,QAAF,CACI,SACE,KAAN,wCAEI,UACE,KAAN,2CCvBgO,O,kCCAhO,gBAA4N,MAAG,G,8DCS/N,GACEgI,WAAY,CAAd,gCCVoO,O,oCCApO,uBAA6hB,G,yECqC7hB,G,UAAA,CACE,SAAF,CACI,YACE,OAAN,gCAGE,QAAF,CACI,UACE,EAAN,sBC7CmN,O,kCCAnN,uBAA0lB,G,kDC2C1lB,G,UAAA,CACE,SAAF,CACI,YACE,OAAN,gCAGE,QAAF,CACI,UACE,EAAN,sBCnDmN,O,kDCMnN,GACEA,WAAY,CACVwM,QAAS,IAAM,QAAnB,+HACIC,QAAS,IAAM,QAAnB,4EAEE5X,SAAU,IACZ,aACA,SACA,WAEI,cACE,MAA0B,SAAtBmB,KAAKgE,OAAOyG,OACP,WAEA,cCpBiM,O,kCCAhN,uBAA6hB,G,8KCA7hB,IAAI3K,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CAAEmB,YAAa,aACf,CACEnB,EAAG,kBAAmB,CACpBgE,IAAK,QACLxD,MAAO,CAAEyG,KAAM,IAAKL,SAAU,GAAI9F,MAAOlB,EAAI2W,SAC7C7V,GAAI,CAAEY,MAAO1B,EAAI6D,UAEnB7D,EAAIQ,GAAG,KACPJ,EAAG,MAAO,CACRmB,YAAa,kBACb2F,SAAU,CAAEC,UAAWnH,EAAIS,GAAGT,EAAIgC,IAAI,yBAExChC,EAAIQ,GAAG,KACPJ,EACE,WACA,CACEmB,YAAa,OACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAIsH,SAEnB,CAACtH,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,mBAExBV,EAAIQ,GAAG,KACPJ,EACE,WACA,CACEmB,YAAa,OACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAIuH,SAEnB,CAACvH,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,oBAG1B,IAGAkB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,8DCevB,MAAM+U,EAAU,EAAhB,QACA,OACE/X,MAAO,CAAC,OAAQ,YAChBC,SAAU,IACZ,aACM,SAAN,iEACM,kBAAN,oDACM,KAAN,WACM,QAAN,aACM,uBAAN,qBACM,cAAN,qBAEI,YACE,IAAI+X,EAAK,QAIT,OAHI5W,KAAK6W,cACPD,GAAM,oBAEDA,GAET,mBACE,MAAO,GAAG5W,KAAKsI,YAAYqO,EAAQ3W,KAAK8W,WAAWrM,OAAO,WAAWzK,KAAKS,GAAG,gBAAgBkW,EAAQ3W,KAAK+W,OAAOtM,OAAO,YAAYzK,KAAKgX,IAAI,YAAahX,KAAKiX,MAAO,CAA5K,mBAEI,oBACE,MAAO,GAAGjX,KAAKS,GAAG,0BAA0BT,KAAKkX,qBAAqBlX,KAAKS,GAAG,gBAAgBT,KAAK+N,YAErG,wBACE,SAAI/N,KAAKmX,MAAyC,SAAjCnX,KAAK8E,OAAOkL,QAAQoH,WAA4D,aAApCpX,KAAK8E,OAAOkL,QAAQqH,eAKnFC,aAAY,KAIhB,EAGI,QACE,OAAItX,KAAK6W,YACA7W,KAAKS,GAAG,kBACvB,cACeT,KAAKS,GAAG,gBACvB,UACeT,KAAKS,GAAG,QAAUT,KAAKmX,KAAKI,WAAW3U,cAAc4U,QAAQ,KAAM,MAErExX,KAAKS,GAAG,iBAEjB,aACE,MAAM4N,EAAIrO,KAAKuK,QACf,IACIlL,EAAI,KACJoY,EAAI,EACR,IAAK,MAAMC,KAAKrJ,EAAEsJ,OACX,IAAMD,EAAElF,MAAMoF,WAAW5X,KAAKwS,SACvB,OAANnT,GAAcqY,EAAEG,OAASxY,KAC3BA,EAAIqY,EAAEG,QAERJ,GAAKC,EAAEpX,QAGX,GAAS,GAALmX,EACF,MAAO,GAET,IAAII,EAAS,EACb,IAAIC,EAAS,GACTC,EAAW,EACXC,EAAa,EAEjB,IAAIlB,EAAY,GACZmB,EAAc,GAClB,GAAIjY,KAAKmX,MAAQnX,KAAKmX,KAAKe,WACzB,IAAK,MAAMC,KAAMnY,KAAKmX,KAAKe,WACrBC,EAAGjT,UAAU4R,EAAUzH,KAAK8I,EAAGJ,UAC/BI,EAAGC,SAAW,GAAGH,EAAY5I,KAAK8I,EAAGJ,UAG7C,IAAK,MAAMM,KAAKhK,EAAEyJ,OAAQ,CACxB,GACR,yBACA,WACA,CACU,IAAIQ,EAAkBjK,EAAEkK,YACpBV,EAASxY,IACXiZ,GAAmBjZ,EAAIwY,GAErBxY,EAAIoY,EAAII,EAASxJ,EAAEkK,cACrBD,GAAmBT,EAASxJ,EAAEkK,YAAclZ,EAAIoY,GAElD,IAAIvS,GAAW,EACXkT,GAAW,EACf,MAAMxN,EAAS5K,KAAKwY,uBAAuBlE,SAAS+D,GAChDzN,IAAQ1F,GAAW,GACnBlF,KAAKmX,OAASjS,IAChBA,EAAW4R,EAAUxC,SAAS0D,IAE5BhY,KAAKmX,OAASjS,IAChBkT,EAAWH,EAAY3D,SAAS0D,IAElCF,EAAOzI,KAAK,CACV0I,WACAF,SACA3S,WACAoT,kBACA1N,SACAwN,aAEFL,IAEFF,GAAUxJ,EAAEkK,YACZP,IAIF,OAAOF,GAET,kBACE,OAAO9X,KAAKkY,WAAW7D,OAAO,GAApC,aAEI,qBACE,OAAOrU,KAAKkY,WAAW7D,OAAO,GAApC,aAEI,uBACE,OAAO,OAAb,IAAa,CAAb,gEAEI,oBACE,OAAO,OAAb,IAAa,CAAb,6DAEI,eACE,OAAOrU,KAAKkY,WAAW7D,OAAO,GAApC,WAEI,WACE,OAAOrU,KAAKyY,aAAanY,OAAS,GAEpCmF,eAAc,IACL,IAET,eACE,OAAOzF,KAAKkY,WAAW5X,QAEzB,QACE,OAAIN,KAAKmX,KACAnX,KAAKmX,KAAKF,MAEfjX,KAAK0Y,SACA,EAEF,GAKT,YAQE,OAAO1Y,KAAKiL,gBAAgB0N,OAAO,CAACtZ,EAAGC,IAAMD,EAAIC,EAAEgZ,gBAAiB,IAEtE,QAIE,OAAOtY,KAAKkY,WAAWS,OAAO,CAACtZ,EAAGC,IAAMD,EAAIC,EAAEgZ,gBAAiB,IAEjE,cACE,OAAOtY,KAAK8W,WAAa9W,KAAK+W,SCnOsL,O,kCCA1N,uBAAsmB,G,kCCAtmB,uBAA2lB,G,yJCA3lB,IAAIjX,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,SACA,CAAEQ,MAAO,CAAEiY,OAAQ,KACnB,CACEzY,EAAG,QAAS,CAAEmB,YAAa,WAAa,CACtCvB,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,gBAAkB,OAEzCV,EAAIQ,GAAG,KACPJ,EAAG,UAAW,CACZmB,YAAa,oCACbX,MAAO,CAAEoG,SAAU,GAAI1B,SAAU,IACjCrE,MAAO,CACLC,MAAOlB,EAAIyB,KACXL,SAAU,SAASC,GACjBrB,EAAIyB,KAAOJ,GAEbC,WAAY,UAGhBtB,EAAIQ,GAAG,KACPJ,EACE,iBACA,CACEA,EACE,WACA,CAAEQ,MAAO,CAAEY,QAAS,iBAAmBV,GAAI,CAAEY,MAAO1B,EAAI8Y,UACxD,CAAC9Y,EAAIQ,GAAG,OAEVR,EAAIQ,GAAG,KACPJ,EACE,WACA,CAAEQ,MAAO,CAAEY,QAAS,iBAAmBV,GAAI,CAAEY,MAAO1B,EAAI+Y,SACxD,CAAC/Y,EAAIQ,GAAG,QAGZ,IAGJ,IAGAoB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,gIC9CvB,IAAI9B,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACTC,EAAKJ,EAAIK,MAAMD,IAAMF,EACzB,OAAOE,EACL,MACA,CAAEmB,YAAa,aACf,CACEnB,EACE,WACA,CACEmB,YAAa,WACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAIgZ,aAEnB,CACEhZ,EAAIQ,GACFR,EAAIS,GAAGT,EAAIU,GAAG,wBACZ,IACAV,EAAIS,GAAGT,EAAI+K,KAAKkO,WAAW5C,eAInCrW,EAAIQ,GAAG,KACPJ,EACE,WACA,CACEmB,YAAa,UACbX,MAAO,CAAEY,QAAS,iBAClBV,GAAI,CAAEY,MAAO1B,EAAIkZ,YAEnB,CAAClZ,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIU,GAAG,uBAG1B,IAGAkB,EAAkB,GACtB7B,EAAO8B,eAAgB,G,kCCtCvB,wCAOII,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,KACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAiD,wBACjEJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,qEACZ,IAAAV,E,2CCtCf,oDAQIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAA6D,wBAC7EJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,qEACZ,IAAAV,E,6CCvCf,oDAQIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,WACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAkE,wBAClFJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,0EACZ,IAAAV,E,2CCvCf,wCAOIA,EAAY,YACd,IACA,SACA,mBACA,EACA,KACA,KACA,MAMIC,EAAM,EAAQ,QAClBA,EAAIC,QAAQ,EAAQ,SAChBD,EAAIE,aACNvC,EAAOwC,IAAIC,SACNJ,EAAIK,WAAW,YAGlBL,EAAIM,OAAO,WAAYP,EAAUpB,SAFjCqB,EAAIO,aAAa,WAAYR,EAAUpB,SAIzChB,EAAOwC,IAAIC,OAAO,OAAkD,wBAClEJ,EAAIQ,SAAS,WAAY,CACvB3C,OAAQ,SACR6B,gBAAiB,qBAEpB,aAGLK,EAAUpB,QAAQ8B,OAAS,+EACZ,IAAAV,E,2CCtCf,uBAAskB,G","file":"async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.js","sourcesContent":["\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../node_modules/svg-transform-loader/encode-query.js!../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Support.vue?vue&type=style&index=0&id=8dcff120&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../node_modules/svg-transform-loader/encode-query.js!../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Support.vue?vue&type=style&index=0&id=8dcff120&lang=scss&scoped=true&\"","\n\n","import mod from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Continue.vue?vue&type=style&index=0&id=21652083&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Continue.vue?vue&type=style&index=0&id=21652083&lang=scss&scoped=true&\"","var map = {\n\t\"./common.json\": \"itzk\",\n\t\"./en.json\": \"07oU\",\n\t\"./ru.json\": \"kgqA\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"0JRs\";","\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Magnet2Torrent.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Magnet2Torrent.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n _vm.tracks.length == 0\n ? _c(\"div\", [_vm._v(_vm._s(_vm.$t(\"common.nothing found\")))])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n [\n _c(\"b-form-radio-group\", {\n attrs: { options: _vm.options },\n on: { change: _vm.onChange },\n model: {\n value: _vm.selected,\n callback: function($$v) {\n _vm.selected = $$v\n },\n expression: \"selected\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"add-button\",\n attrs: { variant: \"outline-light\", size: \"sm\" },\n on: { click: _vm.onAdd }\n },\n [_vm._v(_vm._s(_vm.$t(\"form.common.button.add\")))]\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=style&index=0&id=4144dc7b&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=style&index=0&id=4144dc7b&lang=scss&scoped=true&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"btn btn-primary btn-lg\",\n attrs: { role: \"button\" },\n on: { click: _vm.onClick }\n },\n [\n _c(\"span\", { staticClass: \"heart\" }, [_vm._v(\"❤️\")]),\n _c(\"span\", { staticClass: \"text\" }, [\n _vm._v(_vm._s(_vm.$tm(\"common.donate\")))\n ])\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Torrent2DDL.vue?vue&type=template&id=49b73412&scoped=true&\"\nimport script from \"./Torrent2DDL.vue?vue&type=script&lang=js&\"\nexport * from \"./Torrent2DDL.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"49b73412\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('49b73412')) {\n api.createRecord('49b73412', component.options)\n } else {\n api.reload('49b73412', component.options)\n }\n module.hot.accept(\"./Torrent2DDL.vue?vue&type=template&id=49b73412&scoped=true&\", function () {\n api.rerender('49b73412', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Tools/Torrent2DDL.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.error\n ? _c(\"div\", [_vm._v(_vm._s(_vm.$t(\"errors.\" + _vm.error.toLowerCase())))])\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.isTranscode\n ? _c(\"span\", { class: _vm.className, style: _vm.style })\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Continue.vue?vue&type=template&id=21652083&scoped=true&\"\nimport script from \"./Continue.vue?vue&type=script&lang=js&\"\nexport * from \"./Continue.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Continue.vue?vue&type=style&index=0&id=21652083&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"21652083\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('21652083')) {\n api.createRecord('21652083', component.options)\n } else {\n api.reload('21652083', component.options)\n }\n module.hot.accept(\"./Continue.vue?vue&type=template&id=21652083&scoped=true&\", function () {\n api.rerender('21652083', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Continue.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./ShareLink.vue?vue&type=template&id=c1da0b94&scoped=true&\"\nimport script from \"./ShareLink.vue?vue&type=script&lang=js&\"\nexport * from \"./ShareLink.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ShareLink.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./ShareLink.vue?vue&type=style&index=1&id=c1da0b94&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c1da0b94\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('c1da0b94')) {\n api.createRecord('c1da0b94', component.options)\n } else {\n api.reload('c1da0b94', component.options)\n }\n module.hot.accept(\"./ShareLink.vue?vue&type=template&id=c1da0b94&scoped=true&\", function () {\n api.rerender('c1da0b94', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/ShareLink.vue\"\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browse.vue?vue&type=style&index=0&id=7ae051e6&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browse.vue?vue&type=style&index=0&id=7ae051e6&lang=scss&scoped=true&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"layout\",\n {\n scopedSlots: _vm._u([\n {\n key: \"header\",\n fn: function() {\n return [_vm._v(_vm._s(_vm.$t(\"nav.magnet to torrent\")))]\n },\n proxy: true\n },\n {\n key: \"lead\",\n fn: function() {\n return [_vm._v(_vm._s(_vm.$t(\"magnet to torrent.lead\")))]\n },\n proxy: true\n }\n ])\n },\n [_vm._v(\" \"), _vm._v(\" \"), [_c(\"magnet\", { attrs: { size: \"lg\" } })]],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"container\" },\n [\n _c(\n \"b-button-group\",\n _vm._l(_vm.buttons, function(btn, name) {\n return _c(\n \"b-button\",\n {\n key: name,\n attrs: {\n pressed: name == _vm.selected,\n variant: \"outline-light\"\n },\n on: {\n click: function($event) {\n return _vm.select(name)\n }\n }\n },\n [_vm._v(_vm._s(btn.caption))]\n )\n }),\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"overflow-auto\" },\n [\n _c(\n \"keep-alive\",\n [_c(_vm.buttons[_vm.selected].component, { tag: \"component\" })],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"track-close\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onClose }\n },\n [_vm._v(_vm._s(_vm.$t(\"form.common.button.close\")))]\n ),\n _vm._v(\" \"),\n _c(\"size\", { staticClass: \"track-size\" })\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.source && !_vm.server\n ? _c(_vm.currentView, { tag: \"component\" })\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=style&index=1&id=c1da0b94&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=style&index=1&id=c1da0b94&lang=scss&scoped=true&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"layout\",\n {\n scopedSlots: _vm._u([\n {\n key: \"header\",\n fn: function() {\n return [_vm._v(_vm._s(_vm.$t(\"nav.torrent to ddl\")))]\n },\n proxy: true\n },\n {\n key: \"lead\",\n fn: function() {\n return [_vm._v(_vm._s(_vm.$t(\"torrent to ddl.lead\")))]\n },\n proxy: true\n },\n {\n key: \"features\",\n fn: function() {\n return [\n _c(\"ul\", [\n _c(\"li\", [\n _vm._v(\n _vm._s(\n _vm.$t(\n \"torrent to ddl.features.no file size restrictions\"\n )\n )\n )\n ]),\n _vm._v(\" \"),\n _c(\"li\", [\n _vm._v(\n _vm._s(\n _vm.$t(\"torrent to ddl.features.no registration required\")\n )\n )\n ]),\n _vm._v(\" \"),\n _c(\"li\", [\n _vm._v(\n _vm._s(\n _vm.$t(\"torrent to ddl.features.no software required\")\n )\n )\n ]),\n _vm._v(\" \"),\n _c(\"li\", [\n _vm._v(\n _vm._s(_vm.$t(\"torrent to ddl.features.absolutely free\"))\n )\n ])\n ])\n ]\n },\n proxy: true\n }\n ])\n },\n [_vm._v(\" \"), _vm._v(\" \"), _vm._v(\" \"), [_c(\"send\")]],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Item.vue?vue&type=template&id=4144dc7b&scoped=true&\"\nimport script from \"./Item.vue?vue&type=script&lang=js&\"\nexport * from \"./Item.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Item.vue?vue&type=style&index=0&id=4144dc7b&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4144dc7b\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('4144dc7b')) {\n api.createRecord('4144dc7b', component.options)\n } else {\n api.reload('4144dc7b', component.options)\n }\n module.hot.accept(\"./Item.vue?vue&type=template&id=4144dc7b&scoped=true&\", function () {\n api.rerender('4144dc7b', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Browse/List/Item.vue\"\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Size.vue?vue&type=style&index=0&id=fadc06c8&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Size.vue?vue&type=style&index=0&id=fadc06c8&lang=scss&scoped=true&\"","import { render, staticRenderFns } from \"./Size.vue?vue&type=template&id=fadc06c8&scoped=true&\"\nimport script from \"./Size.vue?vue&type=script&lang=js&\"\nexport * from \"./Size.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Size.vue?vue&type=style&index=0&id=fadc06c8&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fadc06c8\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('fadc06c8')) {\n api.createRecord('fadc06c8', component.options)\n } else {\n api.reload('fadc06c8', component.options)\n }\n module.hot.accept(\"./Size.vue?vue&type=template&id=fadc06c8&scoped=true&\", function () {\n api.rerender('fadc06c8', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Size.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n _c(\"div\", { ref: \"container\", class: _vm.className }),\n _vm._v(\" \"),\n _c(\"transition\", { attrs: { name: \"slide-fade\" } }, [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.showAdWithDelay && !_vm.adClosed,\n expression: \"showAdWithDelay && !adClosed\"\n }\n ],\n staticClass: \"ad\"\n },\n [\n _c(\"span\", {\n staticClass: \"close\",\n attrs: { href: \"#\" },\n on: {\n click: function($event) {\n $event.preventDefault()\n $event.stopPropagation()\n return _vm.closeAd($event)\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", { staticClass: \"ad-label\" }, [_vm._v(\"[ad]\")]),\n _vm._v(\" \"),\n _c(\"adsense-ad\", {\n ref: \"adsense\",\n attrs: {\n \"ad-name\": \"player\",\n \"ad-style\": \"display:inline-block;width:300px;height:250px\"\n }\n })\n ],\n 1\n )\n ])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./MagnetURI.vue?vue&type=template&id=65e74adf&scoped=true&\"\nimport script from \"./MagnetURI.vue?vue&type=script&lang=js&\"\nexport * from \"./MagnetURI.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MagnetURI.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./MagnetURI.vue?vue&type=style&index=1&id=65e74adf&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"65e74adf\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('65e74adf')) {\n api.createRecord('65e74adf', component.options)\n } else {\n api.reload('65e74adf', component.options)\n }\n module.hot.accept(\"./MagnetURI.vue?vue&type=template&id=65e74adf&scoped=true&\", function () {\n api.rerender('65e74adf', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/MagnetURI.vue\"\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Image.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Image.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"b-button\",\n {\n attrs: { disabled: _vm.disabled, variant: \"outline-light\" },\n on: { click: _vm.onClick }\n },\n [_vm._v(_vm._s(_vm.friendlyNameCutted))]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenSubtitles.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenSubtitles.vue?vue&type=script&lang=js&\"","\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailabeProgress.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailabeProgress.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Sponsor.vue?vue&type=template&id=5e003d3b&scoped=true&\"\nimport script from \"./Sponsor.vue?vue&type=script&lang=js&\"\nexport * from \"./Sponsor.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Sponsor.vue?vue&type=style&index=0&id=5e003d3b&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5e003d3b\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('5e003d3b')) {\n api.createRecord('5e003d3b', component.options)\n } else {\n api.reload('5e003d3b', component.options)\n }\n module.hot.accept(\"./Sponsor.vue?vue&type=template&id=5e003d3b&scoped=true&\", function () {\n api.rerender('5e003d3b', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Sponsor.vue\"\nexport default component.exports","\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Torrent2DDL.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Torrent2DDL.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=6e2a91ff&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=6e2a91ff&lang=scss&scoped=true&\"","\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Torrent2Magnet.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Torrent2Magnet.vue?vue&type=script&lang=js&\"","\n\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { class: _vm.className }, [\n _c(\"div\", { staticClass: \"pieces-container\" }, [\n _c(\n \"svg\",\n {\n staticClass: \"pieces\",\n attrs: {\n viewBox: \"0 0 \" + this.progressLength + \" 100\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }\n },\n [\n _c(\"rect\", {\n attrs: {\n x: \"0\",\n y: \"0\",\n width: this.progressLength,\n height: \"100\",\n opacity: \"0.3\"\n }\n }),\n _vm._v(\" \"),\n _vm._l(this.highPrioritySegments, function(s) {\n return _c(\"rect\", {\n attrs: {\n x: s.start,\n y: \"0\",\n width: s.end - s.start,\n height: \"100\",\n opacity: \"0.3\"\n }\n })\n }),\n _vm._v(\" \"),\n _vm._l(this.completedSegments, function(s) {\n return _c(\"rect\", {\n attrs: {\n x: s.start,\n y: \"0\",\n width: s.end - s.start,\n height: \"100\"\n }\n })\n })\n ],\n 2\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"web-seeder\" }, [\n _vm._v(\"\\n \" + _vm._s(_vm.webSeederMessage) + \"\\n \")\n ]),\n _vm._v(\" \"),\n _vm.showTranscoderMessage && !_vm.download\n ? _c(\"div\", { staticClass: \"transcoder\" }, [\n _vm._v(\"\\n \" + _vm._s(_vm.transcoderMessage) + \"\\n \")\n ])\n : _vm._e()\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../node_modules/css-loader/index.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaElement.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../node_modules/css-loader/index.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaElement.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenSubtitles.vue?vue&type=style&index=0&id=0d5ea726&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenSubtitles.vue?vue&type=style&index=0&id=0d5ea726&lang=scss&scoped=true&\"","import { render, staticRenderFns } from \"./AudioTracks.vue?vue&type=template&id=26f8bce4&\"\nimport script from \"./AudioTracks.vue?vue&type=script&lang=js&\"\nexport * from \"./AudioTracks.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('26f8bce4')) {\n api.createRecord('26f8bce4', component.options)\n } else {\n api.reload('26f8bce4', component.options)\n }\n module.hot.accept(\"./AudioTracks.vue?vue&type=template&id=26f8bce4&\", function () {\n api.rerender('26f8bce4', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/AudioTracks.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Captions.vue?vue&type=template&id=30324068&\"\nimport script from \"./Captions.vue?vue&type=script&lang=js&\"\nexport * from \"./Captions.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Captions.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('30324068')) {\n api.createRecord('30324068', component.options)\n } else {\n api.reload('30324068', component.options)\n }\n module.hot.accept(\"./Captions.vue?vue&type=template&id=30324068&\", function () {\n api.rerender('30324068', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Captions.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Browse.vue?vue&type=template&id=7ae051e6&scoped=true&\"\nimport script from \"./Browse.vue?vue&type=script&lang=js&\"\nexport * from \"./Browse.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Browse.vue?vue&type=style&index=0&id=7ae051e6&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7ae051e6\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('7ae051e6')) {\n api.createRecord('7ae051e6', component.options)\n } else {\n api.reload('7ae051e6', component.options)\n }\n module.hot.accept(\"./Browse.vue?vue&type=template&id=7ae051e6&scoped=true&\", function () {\n api.rerender('7ae051e6', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Browse.vue\"\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tracks.vue?vue&type=style&index=0&id=6a489638&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tracks.vue?vue&type=style&index=0&id=6a489638&lang=scss&scoped=true&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"a\",\n {\n directives: [\n {\n name: \"b-modal\",\n rawName: \"v-b-modal.share-link-modal\",\n modifiers: { \"share-link-modal\": true }\n }\n ],\n staticClass: \"btn share-link my-btn-link\",\n attrs: { href: _vm.shareLink },\n on: {\n click: function($event) {\n $event.preventDefault()\n $event.stopPropagation()\n }\n }\n },\n [\n _c(\n \"span\",\n { staticClass: \"icon-wrapper\" },\n [_c(\"icon\", { attrs: { name: \"share\" } })],\n 1\n ),\n _vm._v(_vm._s(_vm.$tm(\"common.share link\")) + \"\\n \"),\n _c(\n \"b-modal\",\n {\n attrs: {\n id: \"share-link-modal\",\n centered: \"\",\n \"no-fade\": \"\",\n title: _vm.$tm(\"common.share link\")\n },\n scopedSlots: _vm._u([\n {\n key: \"modal-footer\",\n fn: function(ref) {\n var ok = ref.ok\n return [\n _c(\n \"b-button\",\n {\n attrs: { variant: \"primary\" },\n on: {\n click: function($event) {\n _vm.copyUrl()\n ok()\n }\n }\n },\n [_vm._v(_vm._s(_vm.$tm(\"common.copy link\")))]\n )\n ]\n }\n }\n ])\n },\n [\n _c(\"b-input\", {\n ref: \"input\",\n attrs: { readonly: \"\", value: _vm.shareLink }\n })\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n _c(\n \"b-form-group\",\n { attrs: { label: _vm.$t(\"common.subtitles\") } },\n [\n _c(\"b-form-radio-group\", {\n attrs: { options: _vm.options },\n on: { change: _vm.onChange },\n model: {\n value: _vm.selected,\n callback: function($$v) {\n _vm.selected = $$v\n },\n expression: \"selected\"\n }\n })\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"span\", { class: _vm.className }, [\n _c(\"span\", { staticClass: \"container\" }, [\n _c(\"span\", { staticClass: \"resizer\", style: _vm.style }, [\n _c(\"span\", { domProps: { innerHTML: _vm._s(_vm.caption) } })\n ])\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"layout\", [_c(\"h1\", [_vm._v(\"Torrent to Magnet\")])])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Upload.vue?vue&type=template&id=55e2d448&scoped=true&\"\nimport script from \"./Upload.vue?vue&type=script&lang=js&\"\nexport * from \"./Upload.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"55e2d448\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('55e2d448')) {\n api.createRecord('55e2d448', component.options)\n } else {\n api.reload('55e2d448', component.options)\n }\n module.hot.accept(\"./Upload.vue?vue&type=template&id=55e2d448&scoped=true&\", function () {\n api.rerender('55e2d448', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Upload.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"a\",\n {\n directives: [\n {\n name: \"b-modal\",\n rawName: \"v-b-modal.magnet-uri-modal\",\n modifiers: { \"magnet-uri-modal\": true }\n }\n ],\n staticClass: \"btn magnet-uri my-btn-link\",\n attrs: { href: _vm.magnetURI },\n on: {\n click: function($event) {\n $event.preventDefault()\n $event.stopPropagation()\n }\n }\n },\n [\n _c(\n \"span\",\n { staticClass: \"icon-wrapper\" },\n [_c(\"icon\", { attrs: { name: \"magnet\" } })],\n 1\n ),\n _vm._v(_vm._s(_vm.$tm(\"common.magnet uri\")) + \"\\n \"),\n _c(\n \"b-modal\",\n {\n attrs: {\n id: \"magnet-uri-modal\",\n centered: \"\",\n \"no-fade\": \"\",\n title: _vm.$tm(\"common.magnet uri\")\n },\n scopedSlots: _vm._u([\n {\n key: \"modal-footer\",\n fn: function(ref) {\n var ok = ref.ok\n return [\n _c(\n \"b-button\",\n {\n attrs: { variant: \"primary\" },\n on: {\n click: function($event) {\n _vm.copyUrl()\n ok()\n }\n }\n },\n [_vm._v(_vm._s(_vm.$tm(\"common.copy link\")))]\n )\n ]\n }\n }\n ])\n },\n [\n _c(\"b-form-textarea\", {\n ref: \"input\",\n attrs: {\n rows: \"3\",\n \"max-rows\": \"15\",\n readonly: \"\",\n value: _vm.magnetURI\n }\n })\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./AvailabeProgress.vue?vue&type=template&id=14ae74be&scoped=true&\"\nimport script from \"./AvailabeProgress.vue?vue&type=script&lang=js&\"\nexport * from \"./AvailabeProgress.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AvailabeProgress.vue?vue&type=style&index=0&id=14ae74be&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"14ae74be\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('14ae74be')) {\n api.createRecord('14ae74be', component.options)\n } else {\n api.reload('14ae74be', component.options)\n }\n module.hot.accept(\"./AvailabeProgress.vue?vue&type=template&id=14ae74be&scoped=true&\", function () {\n api.rerender('14ae74be', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/AvailabeProgress.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Settings.vue?vue&type=template&id=6e2a91ff&scoped=true&\"\nimport script from \"./Settings.vue?vue&type=script&lang=js&\"\nexport * from \"./Settings.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Settings.vue?vue&type=style&index=0&id=6e2a91ff&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6e2a91ff\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('6e2a91ff')) {\n api.createRecord('6e2a91ff', component.options)\n } else {\n api.reload('6e2a91ff', component.options)\n }\n module.hot.accept(\"./Settings.vue?vue&type=template&id=6e2a91ff&scoped=true&\", function () {\n api.rerender('6e2a91ff', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Settings.vue\"\nexport default component.exports","\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Error.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Error.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"container\" },\n [\n _c(\"div\", { staticClass: \"overflow-auto\" }, [\n _c(\n \"div\",\n { staticClass: \"text-center\" },\n [\n _c(\n \"b-button\",\n {\n staticClass: \"copy\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onCopy }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.copy hls\")))]\n )\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"back\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onBack }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.back\")))]\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Magnet2Torrent.vue?vue&type=template&id=8fca792a&scoped=true&\"\nimport script from \"./Magnet2Torrent.vue?vue&type=script&lang=js&\"\nexport * from \"./Magnet2Torrent.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8fca792a\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('8fca792a')) {\n api.createRecord('8fca792a', component.options)\n } else {\n api.reload('8fca792a', component.options)\n }\n module.hot.accept(\"./Magnet2Torrent.vue?vue&type=template&id=8fca792a&scoped=true&\", function () {\n api.rerender('8fca792a', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Tools/Magnet2Torrent.vue\"\nexport default component.exports","\n\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Error.vue?vue&type=template&id=72b22a5c&\"\nimport script from \"./Error.vue?vue&type=script&lang=js&\"\nexport * from \"./Error.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('72b22a5c')) {\n api.createRecord('72b22a5c', component.options)\n } else {\n api.reload('72b22a5c', component.options)\n }\n module.hot.accept(\"./Error.vue?vue&type=template&id=72b22a5c&\", function () {\n api.rerender('72b22a5c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Error.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Stat.vue?vue&type=template&id=30983632&scoped=true&\"\nimport script from \"./Stat.vue?vue&type=script&lang=js&\"\nexport * from \"./Stat.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Stat.vue?vue&type=style&index=0&id=30983632&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"30983632\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('30983632')) {\n api.createRecord('30983632', component.options)\n } else {\n api.reload('30983632', component.options)\n }\n module.hot.accept(\"./Stat.vue?vue&type=template&id=30983632&scoped=true&\", function () {\n api.rerender('30983632', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/List/Item/Stat.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", [_c(\"subtitles\"), _vm._v(\" \"), _c(\"audio-tracks\")], 1)\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Embed.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Embed.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"layout\",\n [\n _c(\n \"b-alert\",\n { attrs: { show: this.status == \"success\", variant: \"success\" } },\n [_vm._v(_vm._s(_vm.$tm(\"form.common.success\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"b-alert\",\n { attrs: { show: this.status == \"error\", variant: \"danger\" } },\n [_vm._v(_vm._s(_vm.$tm(\"form.common.error\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"b-alert\",\n { attrs: { show: this.status == \"exists\", variant: \"warning\" } },\n [_vm._v(_vm._s(_vm.$tm(\"form.support.error.exists\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"b-alert\",\n { attrs: { show: this.status == \"submitting\", variant: \"info\" } },\n [_vm._v(_vm._s(_vm.$tm(\"form.common.submitting\")))]\n ),\n _vm._v(\" \"),\n _vm.show\n ? _c(\n \"b-form\",\n {\n on: {\n submit: function($event) {\n $event.stopPropagation()\n $event.preventDefault()\n return _vm.onSubmit($event)\n },\n reset: function($event) {\n $event.stopPropagation()\n $event.preventDefault()\n return _vm.onReset($event)\n }\n }\n },\n [\n _c(\"h1\", [_vm._v(_vm._s(_vm.$tm(\"form.support.header\")))]),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"cause\",\n label: _vm.$tm(\"form.support.field.cause.label\"),\n \"label-for\": \"cause\"\n }\n },\n [\n _c(\"b-form-select\", {\n attrs: { id: \"cause\", options: _vm.cause, required: \"\" },\n model: {\n value: _vm.form.cause,\n callback: function($$v) {\n _vm.$set(_vm.form, \"cause\", $$v)\n },\n expression: \"form.cause\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"subject-group\",\n label: _vm.$tm(\"form.support.field.subject.label\"),\n \"label-for\": \"subject\"\n }\n },\n [\n _c(\"b-form-input\", {\n attrs: {\n id: \"subject\",\n required: \"\",\n placeholder: _vm.$tm(\n \"form.support.field.subject.placeholder\"\n )\n },\n model: {\n value: _vm.form.subject,\n callback: function($$v) {\n _vm.$set(_vm.form, \"subject\", $$v)\n },\n expression: \"form.subject\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"description-group\",\n label: _vm.$tm(\"form.support.field.description.label\"),\n \"label-for\": \"description\"\n }\n },\n [\n _c(\"b-form-textarea\", {\n attrs: {\n id: \"description\",\n placeholder: _vm.$tm(\n \"form.support.field.description.placeholder\"\n ),\n rows: \"3\",\n \"max-rows\": \"6\",\n required: \"\"\n },\n model: {\n value: _vm.form.description,\n callback: function($$v) {\n _vm.$set(_vm.form, \"description\", $$v)\n },\n expression: \"form.description\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n !_vm.isQuestion && _vm.hasCause\n ? _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"infohash-group\",\n label: _vm.$tm(\"form.support.field.infohash.label\"),\n \"label-for\": \"infohash\"\n }\n },\n [\n _c(\"b-form-input\", {\n attrs: {\n id: \"infohash\",\n required: \"\",\n state: this.infohashState,\n placeholder: _vm.$tm(\n \"form.support.field.infohash.placeholder\"\n ),\n formatter: _vm.infohashFormatter\n },\n model: {\n value: _vm.form.infohash,\n callback: function($$v) {\n _vm.$set(_vm.form, \"infohash\", $$v)\n },\n expression: \"form.infohash\"\n }\n }),\n _vm._v(\" \"),\n _c(\n \"b-form-invalid-feedback\",\n { attrs: { id: \"infohash-feedback\" } },\n [\n _vm._v(\n \"\\n \" +\n _vm._s(\n _vm.$tm(\"form.support.field.infohash.error\")\n ) +\n \"\\n \"\n )\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n !_vm.isQuestion && _vm.hasCause\n ? _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"filename-group\",\n label: _vm.$tm(\"form.support.field.filename.label\"),\n \"label-for\": \"filename\"\n }\n },\n [\n _c(\"b-form-input\", {\n attrs: {\n id: \"filename\",\n placeholder: _vm.$tm(\n \"form.support.field.filename.placeholder\"\n )\n },\n model: {\n value: _vm.form.filename,\n callback: function($$v) {\n _vm.$set(_vm.form, \"filename\", $$v)\n },\n expression: \"form.filename\"\n }\n })\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"email-group\",\n label: _vm.$tm(\"form.support.field.email.label\"),\n \"label-for\": \"email\"\n }\n },\n [\n _c(\"b-form-input\", {\n attrs: {\n id: \"email\",\n type: \"email\",\n required: \"\",\n placeholder: _vm.$tm(\n \"form.support.field.email.placeholder\"\n )\n },\n model: {\n value: _vm.form.email,\n callback: function($$v) {\n _vm.$set(_vm.form, \"email\", $$v)\n },\n expression: \"form.email\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.isIllegal\n ? _c(\n \"b-form-group\",\n {\n attrs: {\n id: \"work-group\",\n label: _vm.$tm(\"form.support.field.work.label\"),\n \"label-for\": \"work\"\n }\n },\n [\n _c(\"b-form-input\", {\n attrs: {\n id: \"work\",\n required: \"\",\n placeholder: _vm.$tm(\n \"form.support.field.work.placeholder\"\n )\n },\n model: {\n value: _vm.form.work,\n callback: function($$v) {\n _vm.$set(_vm.form, \"work\", $$v)\n },\n expression: \"form.work\"\n }\n })\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"buttons\" },\n [\n _c(\n \"b-button\",\n {\n attrs: {\n type: \"submit\",\n disabled: _vm.isSubmitting,\n variant: \"primary\"\n }\n },\n [_vm._v(_vm._s(_vm.$tm(\"form.common.button.submit\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n { attrs: { type: \"reset\", variant: \"danger\" } },\n [_vm._v(_vm._s(_vm.$tm(\"form.common.button.reset\")))]\n )\n ],\n 1\n )\n ],\n 1\n )\n : _vm._e()\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"container\" }, [\n _c(\n \"div\",\n {\n staticClass: \"current\",\n on: {\n click: function($event) {\n $event.preventDefault()\n $event.stopPropagation()\n }\n }\n },\n [\n _c(\n \"keep-alive\",\n [_c(_vm.current, { tag: \"component\", on: { list: _vm.onList } })],\n 1\n )\n ],\n 1\n )\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n _vm.loading\n ? _c(\"div\", [_vm._v(_vm._s(_vm.$t(\"common.loading\")))])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.empty\n ? _c(\"div\", [_vm._v(_vm._s(_vm.$t(\"common.nothing found\")))])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"b-form-group\",\n [\n _c(\"b-form-radio-group\", {\n attrs: { options: _vm.options },\n on: { change: _vm.onChange },\n model: {\n value: _vm.selected,\n callback: function($$v) {\n _vm.selected = $$v\n },\n expression: \"selected\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.hasTracks\n ? _c(\"div\", {\n staticClass: \"osdb\",\n domProps: { innerHTML: _vm._s(_vm.$tm(\"osdb.reference\")) }\n })\n : _vm._e()\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Subtitles.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Subtitles.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MediaElement.vue?vue&type=template&id=3411b403&\"\nimport script from \"./MediaElement.vue?vue&type=script&lang=js&\"\nexport * from \"./MediaElement.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MediaElement.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3411b403')) {\n api.createRecord('3411b403', component.options)\n } else {\n api.reload('3411b403', component.options)\n }\n module.hot.accept(\"./MediaElement.vue?vue&type=template&id=3411b403&\", function () {\n api.rerender('3411b403', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./List.vue?vue&type=template&id=3f0a6af7&scoped=true&\"\nimport script from \"./List.vue?vue&type=script&lang=js&\"\nexport * from \"./List.vue?vue&type=script&lang=js&\"\nimport style0 from \"./List.vue?vue&type=style&index=0&id=3f0a6af7&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3f0a6af7\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3f0a6af7')) {\n api.createRecord('3f0a6af7', component.options)\n } else {\n api.reload('3f0a6af7', component.options)\n }\n module.hot.accept(\"./List.vue?vue&type=template&id=3f0a6af7&scoped=true&\", function () {\n api.rerender('3f0a6af7', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Browse/List.vue\"\nexport default component.exports","\n\n\n\n","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"buttons\" },\n [\n _vm.hasPrev\n ? _c(\n \"b-button\",\n {\n staticClass: \"play-prev\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onPrev }\n },\n [_vm._v(\"← \" + _vm._s(_vm.$t(\"common.previous\")))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.hasBrowse\n ? _c(\n \"b-button\",\n {\n staticClass: \"browse\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onBrowse }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.browse\")))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.hasNext\n ? _c(\n \"b-button\",\n {\n staticClass: \"play-next\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onNext }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.next\")) + \" →\")]\n )\n : _vm._e()\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Image.vue?vue&type=template&id=7c3232e0&scoped=true&\"\nimport script from \"./Image.vue?vue&type=script&lang=js&\"\nexport * from \"./Image.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Image.vue?vue&type=style&index=0&id=7c3232e0&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7c3232e0\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('7c3232e0')) {\n api.createRecord('7c3232e0', component.options)\n } else {\n api.reload('7c3232e0', component.options)\n }\n module.hot.accept(\"./Image.vue?vue&type=template&id=7c3232e0&scoped=true&\", function () {\n api.rerender('7c3232e0', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/Image.vue\"\nexport default component.exports","\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Support.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Support.vue?vue&type=script&lang=js&\"","\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sponsor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sponsor.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captions.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captions.vue?vue&type=style&index=0&lang=scss&\"","\n\n","import mod from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AudioTracks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AudioTracks.vue?vue&type=script&lang=js&\"","\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tracks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tracks.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"img\", { attrs: { src: _vm.src } })\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Tracks.vue?vue&type=template&id=6a489638&scoped=true&\"\nimport script from \"./Tracks.vue?vue&type=script&lang=js&\"\nexport * from \"./Tracks.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tracks.vue?vue&type=style&index=0&id=6a489638&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6a489638\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('6a489638')) {\n api.createRecord('6a489638', component.options)\n } else {\n api.reload('6a489638', component.options)\n }\n module.hot.accept(\"./Tracks.vue?vue&type=template&id=6a489638&scoped=true&\", function () {\n api.rerender('6a489638', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Player.vue?vue&type=template&id=e40c4118&\"\nimport script from \"./Player.vue?vue&type=script&lang=js&\"\nexport * from \"./Player.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('e40c4118')) {\n api.createRecord('e40c4118', component.options)\n } else {\n api.reload('e40c4118', component.options)\n }\n module.hot.accept(\"./Player.vue?vue&type=template&id=e40c4118&\", function () {\n api.rerender('e40c4118', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player.vue\"\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Continue.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Continue.vue?vue&type=script&lang=js&\"","\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browse.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browse.vue?vue&type=script&lang=js&\"","\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrevNext.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrevNext.vue?vue&type=script&lang=js&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n [\n _c(\n \"b-form-group\",\n { attrs: { label: _vm.$t(\"common.audio\") } },\n [\n _c(\"b-form-radio-group\", {\n attrs: { options: _vm.options },\n on: { change: _vm.onChange },\n model: {\n value: _vm.selected,\n callback: function($$v) {\n _vm.selected = $$v\n },\n expression: \"selected\"\n }\n })\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"buttons\" },\n [\n _vm.hasPrev\n ? _c(\n \"b-button\",\n {\n staticClass: \"play-prev\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onPrev }\n },\n [_vm._v(\"← \" + _vm._s(_vm.$t(\"common.previous\")))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm._l(_vm.pageItems, function(item, index) {\n return _c(\"item\", {\n key: item.name,\n attrs: { item: item, index: index }\n })\n }),\n _vm._v(\" \"),\n _vm.hasNext\n ? _c(\n \"b-button\",\n {\n staticClass: \"play-next\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onNext }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.next\")) + \" →\")]\n )\n : _vm._e()\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=style&index=0&id=3f0a6af7&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=style&index=0&id=3f0a6af7&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../node_modules/svg-transform-loader/encode-query.js!../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sponsor.vue?vue&type=style&index=0&id=5e003d3b&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../node_modules/svg-transform-loader/encode-query.js!../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sponsor.vue?vue&type=style&index=0&id=5e003d3b&lang=scss&scoped=true&\"","import { render, staticRenderFns } from \"./Support.vue?vue&type=template&id=8dcff120&scoped=true&\"\nimport script from \"./Support.vue?vue&type=script&lang=js&\"\nexport * from \"./Support.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Support.vue?vue&type=style&index=0&id=8dcff120&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8dcff120\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('8dcff120')) {\n api.createRecord('8dcff120', component.options)\n } else {\n api.reload('8dcff120', component.options)\n }\n module.hot.accept(\"./Support.vue?vue&type=template&id=8dcff120&scoped=true&\", function () {\n api.rerender('8dcff120', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Support.vue\"\nexport default component.exports","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=style&index=1&id=65e74adf&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=style&index=1&id=65e74adf&lang=scss&scoped=true&\"","import { render, staticRenderFns } from \"./Torrent2Magnet.vue?vue&type=template&id=44322aaf&\"\nimport script from \"./Torrent2Magnet.vue?vue&type=script&lang=js&\"\nexport * from \"./Torrent2Magnet.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('44322aaf')) {\n api.createRecord('44322aaf', component.options)\n } else {\n api.reload('44322aaf', component.options)\n }\n module.hot.accept(\"./Torrent2Magnet.vue?vue&type=template&id=44322aaf&\", function () {\n api.rerender('44322aaf', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Tools/Torrent2Magnet.vue\"\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrevNext.vue?vue&type=style&index=0&id=3397ed9f&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../../node_modules/css-loader/index.js!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrevNext.vue?vue&type=style&index=0&id=3397ed9f&lang=scss&scoped=true&\"","import { render, staticRenderFns } from \"./Embed.vue?vue&type=template&id=0b12d6ad&scoped=true&\"\nimport script from \"./Embed.vue?vue&type=script&lang=js&\"\nexport * from \"./Embed.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Embed.vue?vue&type=style&index=0&id=0b12d6ad&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0b12d6ad\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('0b12d6ad')) {\n api.createRecord('0b12d6ad', component.options)\n } else {\n api.reload('0b12d6ad', component.options)\n }\n module.hot.accept(\"./Embed.vue?vue&type=template&id=0b12d6ad&scoped=true&\", function () {\n api.rerender('0b12d6ad', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Embed.vue\"\nexport default component.exports","\n\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Size.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Size.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaElement.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaElement.vue?vue&type=script&lang=js&\"","\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Attached.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Attached.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=style&index=0&lang=scss&\"","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareLink.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Stat.vue?vue&type=style&index=0&id=30983632&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Stat.vue?vue&type=style&index=0&id=30983632&lang=scss&scoped=true&\"","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=script&lang=js&\"","\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Player.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Player.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MagnetURI.vue?vue&type=style&index=0&lang=scss&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"container\" },\n [\n _c(\"b-form-textarea\", {\n ref: \"input\",\n attrs: { rows: \"3\", readonly: \"\", value: _vm.snippet },\n on: { click: _vm.select }\n }),\n _vm._v(\" \"),\n _c(\"div\", {\n staticClass: \"ref text-center\",\n domProps: { innerHTML: _vm._s(_vm.$tm(\"common.player sdk\")) }\n }),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"copy\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onCopy }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.copy\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"back\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onBack }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.back\")))]\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Stat.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??ref--7!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Stat.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailabeProgress.vue?vue&type=style&index=0&id=14ae74be&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailabeProgress.vue?vue&type=style&index=0&id=14ae74be&lang=scss&scoped=true&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Embed.vue?vue&type=style&index=0&id=0b12d6ad&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../../node_modules/css-loader/index.js!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Embed.vue?vue&type=style&index=0&id=0b12d6ad&lang=scss&scoped=true&\"","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"b-form\",\n { attrs: { inline: \"\" } },\n [\n _c(\"label\", { staticClass: \"mr-sm-2\" }, [\n _vm._v(_vm._s(_vm.$t(\"common.size\")) + \":\")\n ]),\n _vm._v(\" \"),\n _c(\"b-input\", {\n staticClass: \"mb-2 mr-sm-2 mb-sm-0 caption-size\",\n attrs: { readonly: \"\", disabled: \"\" },\n model: {\n value: _vm.size,\n callback: function($$v) {\n _vm.size = $$v\n },\n expression: \"size\"\n }\n }),\n _vm._v(\" \"),\n _c(\n \"b-button-group\",\n [\n _c(\n \"b-button\",\n { attrs: { variant: \"outline-light\" }, on: { click: _vm.smaller } },\n [_vm._v(\"–\")]\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n { attrs: { variant: \"outline-light\" }, on: { click: _vm.bigger } },\n [_vm._v(\"+\")]\n )\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"container\" },\n [\n _c(\n \"b-button\",\n {\n staticClass: \"continue\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onContinue }\n },\n [\n _vm._v(\n _vm._s(_vm.$t(\"common.continueFrom\")) +\n \" \" +\n _vm._s(_vm.time.toString().toHHMMSS())\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"b-button\",\n {\n staticClass: \"restart\",\n attrs: { variant: \"outline-light\" },\n on: { click: _vm.onRestart }\n },\n [_vm._v(_vm._s(_vm.$t(\"common.restart\")))]\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Attached.vue?vue&type=template&id=0c18173f&\"\nimport script from \"./Attached.vue?vue&type=script&lang=js&\"\nexport * from \"./Attached.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('0c18173f')) {\n api.createRecord('0c18173f', component.options)\n } else {\n api.reload('0c18173f', component.options)\n }\n module.hot.accept(\"./Attached.vue?vue&type=template&id=0c18173f&\", function () {\n api.rerender('0c18173f', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Attached.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./PrevNext.vue?vue&type=template&id=3397ed9f&scoped=true&\"\nimport script from \"./PrevNext.vue?vue&type=script&lang=js&\"\nexport * from \"./PrevNext.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PrevNext.vue?vue&type=style&index=0&id=3397ed9f&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3397ed9f\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('3397ed9f')) {\n api.createRecord('3397ed9f', component.options)\n } else {\n api.reload('3397ed9f', component.options)\n }\n module.hot.accept(\"./PrevNext.vue?vue&type=template&id=3397ed9f&scoped=true&\", function () {\n api.rerender('3397ed9f', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Browse/PrevNext.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./OpenSubtitles.vue?vue&type=template&id=0d5ea726&scoped=true&\"\nimport script from \"./OpenSubtitles.vue?vue&type=script&lang=js&\"\nexport * from \"./OpenSubtitles.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OpenSubtitles.vue?vue&type=style&index=0&id=0d5ea726&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0d5ea726\",\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('0d5ea726')) {\n api.createRecord('0d5ea726', component.options)\n } else {\n api.reload('0d5ea726', component.options)\n }\n module.hot.accept(\"./OpenSubtitles.vue?vue&type=template&id=0d5ea726&scoped=true&\", function () {\n api.rerender('0d5ea726', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/OpenSubtitles.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./Subtitles.vue?vue&type=template&id=1cfbf86b&\"\nimport script from \"./Subtitles.vue?vue&type=script&lang=js&\"\nexport * from \"./Subtitles.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Volumes/Home/vintikzzzz/Projects/webtor/webtor-web-ui/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('1cfbf86b')) {\n api.createRecord('1cfbf86b', component.options)\n } else {\n api.reload('1cfbf86b', component.options)\n }\n module.hot.accept(\"./Subtitles.vue?vue&type=template&id=1cfbf86b&\", function () {\n api.rerender('1cfbf86b', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"ui/src/components/App/Show/Player/MediaElement/Tracks/Attached/Subtitles.vue\"\nexport default component.exports","import mod from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../node_modules/css-loader/index.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Image.vue?vue&type=style&index=0&id=7c3232e0&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../../node_modules/css-loader/index.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--5-2!../../../../../../node_modules/svg-transform-loader/encode-query.js!../../../../../../node_modules/sass-loader/lib/loader.js??ref--5-4!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Image.vue?vue&type=style&index=0&id=7c3232e0&scoped=true&lang=scss&\""],"sourceRoot":""} \ No newline at end of file diff --git a/ui/dist/async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.js.map.gz b/ui/dist/async_main_0ffc2a56.c8a5d568b3002b296cb0.bundle.js.map.gz new file mode 100644 index 0000000000000000000000000000000000000000..c068b36e4dad8a9262f1f6be1f9476657379e602 GIT binary patch literal 41261 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 literal 0 HcmV?d00001 diff --git a/ui/dist/async_main_0ffc2a56.dc63956c75681b023819.bundle.js.map.gz b/ui/dist/async_main_0ffc2a56.dc63956c75681b023819.bundle.js.map.gz deleted file mode 100644 index 5386b01c4719f50f7aee98220da1320a5b4dfce4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41261 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 0!==arguments[1]?arguments[1]:null;if("string"==typeof e&&e.length){var n=void 0,o=void 0,r=d.language(),a=function(e,t,n){return"object"!==(void 0===e?"undefined":i(e))||"number"!=typeof t||"number"!=typeof n?e:[function(){return arguments.length<=1?void 0:arguments[1]},function(){return 1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:arguments.length<=2?void 0:arguments[2]},function(){return 0===(arguments.length<=0?void 0:arguments[0])||1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:arguments.length<=2?void 0:arguments[2]},function(){return(arguments.length<=0?void 0:arguments[0])%10==1&&(arguments.length<=0?void 0:arguments[0])%100!=11?arguments.length<=1?void 0:arguments[1]:0!==(arguments.length<=0?void 0:arguments[0])?arguments.length<=2?void 0:arguments[2]:arguments.length<=3?void 0:arguments[3]},function(){return 1===(arguments.length<=0?void 0:arguments[0])||11===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:2===(arguments.length<=0?void 0:arguments[0])||12===(arguments.length<=0?void 0:arguments[0])?arguments.length<=2?void 0:arguments[2]:(arguments.length<=0?void 0:arguments[0])>2&&(arguments.length<=0?void 0:arguments[0])<20?arguments.length<=3?void 0:arguments[3]:arguments.length<=4?void 0:arguments[4]},function(){return 1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:0===(arguments.length<=0?void 0:arguments[0])||(arguments.length<=0?void 0:arguments[0])%100>0&&(arguments.length<=0?void 0:arguments[0])%100<20?arguments.length<=2?void 0:arguments[2]:arguments.length<=3?void 0:arguments[3]},function(){return(arguments.length<=0?void 0:arguments[0])%10==1&&(arguments.length<=0?void 0:arguments[0])%100!=11?arguments.length<=1?void 0:arguments[1]:(arguments.length<=0?void 0:arguments[0])%10>=2&&((arguments.length<=0?void 0:arguments[0])%100<10||(arguments.length<=0?void 0:arguments[0])%100>=20)?arguments.length<=2?void 0:arguments[2]:[3]},function(){return(arguments.length<=0?void 0:arguments[0])%10==1&&(arguments.length<=0?void 0:arguments[0])%100!=11?arguments.length<=1?void 0:arguments[1]:(arguments.length<=0?void 0:arguments[0])%10>=2&&(arguments.length<=0?void 0:arguments[0])%10<=4&&((arguments.length<=0?void 0:arguments[0])%100<10||(arguments.length<=0?void 0:arguments[0])%100>=20)?arguments.length<=2?void 0:arguments[2]:arguments.length<=3?void 0:arguments[3]},function(){return 1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:(arguments.length<=0?void 0:arguments[0])>=2&&(arguments.length<=0?void 0:arguments[0])<=4?arguments.length<=2?void 0:arguments[2]:arguments.length<=3?void 0:arguments[3]},function(){return 1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:(arguments.length<=0?void 0:arguments[0])%10>=2&&(arguments.length<=0?void 0:arguments[0])%10<=4&&((arguments.length<=0?void 0:arguments[0])%100<10||(arguments.length<=0?void 0:arguments[0])%100>=20)?arguments.length<=2?void 0:arguments[2]:arguments.length<=3?void 0:arguments[3]},function(){return(arguments.length<=0?void 0:arguments[0])%100==1?arguments.length<=2?void 0:arguments[2]:(arguments.length<=0?void 0:arguments[0])%100==2?arguments.length<=3?void 0:arguments[3]:(arguments.length<=0?void 0:arguments[0])%100==3||(arguments.length<=0?void 0:arguments[0])%100==4?arguments.length<=4?void 0:arguments[4]:arguments.length<=1?void 0:arguments[1]},function(){return 1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:2===(arguments.length<=0?void 0:arguments[0])?arguments.length<=2?void 0:arguments[2]:(arguments.length<=0?void 0:arguments[0])>2&&(arguments.length<=0?void 0:arguments[0])<7?arguments.length<=3?void 0:arguments[3]:(arguments.length<=0?void 0:arguments[0])>6&&(arguments.length<=0?void 0:arguments[0])<11?arguments.length<=4?void 0:arguments[4]:arguments.length<=5?void 0:arguments[5]},function(){return 0===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=2?void 0:arguments[2]:2===(arguments.length<=0?void 0:arguments[0])?arguments.length<=3?void 0:arguments[3]:(arguments.length<=0?void 0:arguments[0])%100>=3&&(arguments.length<=0?void 0:arguments[0])%100<=10?arguments.length<=4?void 0:arguments[4]:(arguments.length<=0?void 0:arguments[0])%100>=11?arguments.length<=5?void 0:arguments[5]:arguments.length<=6?void 0:arguments[6]},function(){return 1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:0===(arguments.length<=0?void 0:arguments[0])||(arguments.length<=0?void 0:arguments[0])%100>1&&(arguments.length<=0?void 0:arguments[0])%100<11?arguments.length<=2?void 0:arguments[2]:(arguments.length<=0?void 0:arguments[0])%100>10&&(arguments.length<=0?void 0:arguments[0])%100<20?arguments.length<=3?void 0:arguments[3]:arguments.length<=4?void 0:arguments[4]},function(){return(arguments.length<=0?void 0:arguments[0])%10==1?arguments.length<=1?void 0:arguments[1]:(arguments.length<=0?void 0:arguments[0])%10==2?arguments.length<=2?void 0:arguments[2]:arguments.length<=3?void 0:arguments[3]},function(){return 11!==(arguments.length<=0?void 0:arguments[0])&&(arguments.length<=0?void 0:arguments[0])%10==1?arguments.length<=1?void 0:arguments[1]:arguments.length<=2?void 0:arguments[2]},function(){return 1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:(arguments.length<=0?void 0:arguments[0])%10>=2&&(arguments.length<=0?void 0:arguments[0])%10<=4&&((arguments.length<=0?void 0:arguments[0])%100<10||(arguments.length<=0?void 0:arguments[0])%100>=20)?arguments.length<=2?void 0:arguments[2]:arguments.length<=3?void 0:arguments[3]},function(){return 1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:2===(arguments.length<=0?void 0:arguments[0])?arguments.length<=2?void 0:arguments[2]:8!==(arguments.length<=0?void 0:arguments[0])&&11!==(arguments.length<=0?void 0:arguments[0])?arguments.length<=3?void 0:arguments[3]:arguments.length<=4?void 0:arguments[4]},function(){return 0===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:arguments.length<=2?void 0:arguments[2]},function(){return 1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:2===(arguments.length<=0?void 0:arguments[0])?arguments.length<=2?void 0:arguments[2]:3===(arguments.length<=0?void 0:arguments[0])?arguments.length<=3?void 0:arguments[3]:arguments.length<=4?void 0:arguments[4]},function(){return 0===(arguments.length<=0?void 0:arguments[0])?arguments.length<=1?void 0:arguments[1]:1===(arguments.length<=0?void 0:arguments[0])?arguments.length<=2?void 0:arguments[2]:arguments.length<=3?void 0:arguments[3]}][n].apply(null,[t].concat(e))};return void 0!==d[r]&&(n=d[r][e],null!==t&&"number"==typeof t&&(o=d[r]["mejs.plural-form"],n=a.apply(null,[n,t,o]))),!n&&d.en&&(n=d.en[e],null!==t&&"number"==typeof t&&(o=d.en["mejs.plural-form"],n=a.apply(null,[n,t,o]))),n=n||e,null!==t&&"number"==typeof t&&(n=n.replace("%1",t)),(0,l.escapeHTML)(n)}return e}};a.default.i18n=d,"undefined"!=typeof mejsL10n&&a.default.i18n.language(mejsL10n.language,mejsL10n.strings),n.default=d},{15:15,27:27,7:7}],6:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=c(e(3)),r=c(e(2)),a=c(e(7)),s=e(27),l=e(28),d=e(8),u=e(25);function c(e){return e&&e.__esModule?e:{default:e}}var f=function e(t,n,c){var f=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e);var p=this;c=Array.isArray(c)?c:null,p.defaults={renderers:[],fakeNodeName:"mediaelementwrapper",pluginPath:"build/",shimScriptAccess:"sameDomain"},n=Object.assign(p.defaults,n),p.mediaElement=r.default.createElement(n.fakeNodeName);var m=t,h=!1;if("string"==typeof t?p.mediaElement.originalNode=r.default.getElementById(t):(p.mediaElement.originalNode=t,m=t.id),void 0===p.mediaElement.originalNode||null===p.mediaElement.originalNode)return null;p.mediaElement.options=n,m=m||"mejs_"+Math.random().toString().slice(2),p.mediaElement.originalNode.setAttribute("id",m+"_from_mejs");var v=p.mediaElement.originalNode.tagName.toLowerCase();["video","audio"].indexOf(v)>-1&&!p.mediaElement.originalNode.getAttribute("preload")&&p.mediaElement.originalNode.setAttribute("preload","none"),p.mediaElement.originalNode.parentNode.insertBefore(p.mediaElement,p.mediaElement.originalNode),p.mediaElement.appendChild(p.mediaElement.originalNode);var g=function(e,t){if("https:"===i.default.location.protocol&&0===e.indexOf("http:")&&u.IS_IOS&&a.default.html5media.mediaTypes.indexOf(t)>-1){var n=new XMLHttpRequest;n.onreadystatechange=function(){if(4===this.readyState&&200===this.status){var t=(i.default.URL||i.default.webkitURL).createObjectURL(this.response);return p.mediaElement.originalNode.setAttribute("src",t),t}return e},n.open("GET",e),n.responseType="blob",n.send()}return e},y=void 0;if(null!==c)y=c;else if(null!==p.mediaElement.originalNode)switch(y=[],p.mediaElement.originalNode.nodeName.toLowerCase()){case"iframe":y.push({type:"",src:p.mediaElement.originalNode.getAttribute("src")});break;case"audio":case"video":var E=p.mediaElement.originalNode.children.length,b=p.mediaElement.originalNode.getAttribute("src");if(b){var S=p.mediaElement.originalNode,w=(0,l.formatType)(b,S.getAttribute("type"));y.push({type:w,src:g(b,w)})}for(var x=0;x2?t[0]:t[0].src;if(void 0!==n.mediaElement.renderer&&null!==n.mediaElement.renderer&&n.mediaElement.renderer.name===e)return n.mediaElement.renderer.pause(),n.mediaElement.renderer.stop&&n.mediaElement.renderer.stop(),n.mediaElement.renderer.show(),n.mediaElement.renderer.setSrc(o),!0;void 0!==n.mediaElement.renderer&&null!==n.mediaElement.renderer&&(n.mediaElement.renderer.pause(),n.mediaElement.renderer.stop&&n.mediaElement.renderer.stop(),n.mediaElement.renderer.hide());var i=n.mediaElement.renderers[e],r=null;if(null!=i)return i.show(),i.setSrc(o),n.mediaElement.renderer=i,n.mediaElement.rendererName=e,!0;for(var a=n.mediaElement.options.renderers.length?n.mediaElement.options.renderers:d.renderer.order,s=0,l=a.length;s1&&void 0!==arguments[1]?arguments[1]:[],n=t.length;if(t=t.length?t:this.order,!n){var o=[/^(html5|native)/i,/^flash/i,/iframe$/i],i=function(e){for(var t=0,n=o.length;t',t.addControlElement(a,"fullscreen"),a.addEventListener("click",(function(){l.HAS_TRUE_NATIVE_FULLSCREEN&&l.IS_FULLSCREEN||e.isFullScreen?e.exitFullScreen():e.enterFullScreen()})),e.fullscreenBtn=a,t.options.keyActions.push({keys:[70],action:function(e,t,n,o){o.ctrlKey||void 0!==e.enterFullScreen&&(e.isFullScreen?e.exitFullScreen():e.enterFullScreen())}}),t.exitFullscreenCallback=function(n){var o=n.which||n.keyCode||0;t.options.enableKeyboard&&27===o&&(l.HAS_TRUE_NATIVE_FULLSCREEN&&l.IS_FULLSCREEN||t.isFullScreen)&&e.exitFullScreen()},t.globalBind("keydown",t.exitFullscreenCallback),t.normalHeight=0,t.normalWidth=0,l.HAS_TRUE_NATIVE_FULLSCREEN){e.globalBind(l.FULLSCREEN_EVENT_NAME,(function(){e.isFullScreen&&(l.isFullScreen()?(e.isNativeFullScreen=!0,e.setControlsSize()):(e.isNativeFullScreen=!1,e.exitFullScreen()))}))}}},cleanfullscreen:function(e){e.exitFullScreen(),e.globalUnbind("keydown",e.exitFullscreenCallback)},detectFullscreenMode:function(){var e=this,t=null!==e.media.rendererName&&/(native|html5)/i.test(e.media.rendererName),n="";return l.HAS_TRUE_NATIVE_FULLSCREEN&&t?n="native-native":l.HAS_TRUE_NATIVE_FULLSCREEN&&!t?n="plugin-native":e.usePluginFullScreen&&l.SUPPORT_POINTER_EVENTS&&(n="plugin-click"),e.fullscreenMode=n,n},enterFullScreen:function(){var e=this,t=null!==e.media.rendererName&&/(html5|native)/i.test(e.media.rendererName),n=getComputedStyle(e.getElement(e.container));if(e.isVideo)if(e.getElement(e.container).dispatchEvent((0,d.createEvent)("enteringfullscreen",e.getElement(e.container))),!1===e.options.useFakeFullscreen&&(l.IS_IOS||l.IS_SAFARI)&&l.HAS_IOS_FULLSCREEN&&"function"==typeof e.media.originalNode.webkitEnterFullscreen&&e.media.originalNode.canPlayType((0,c.getTypeFromFile)(e.media.getSrc())))e.media.originalNode.webkitEnterFullscreen();else{if(l.IS_ANDROID){var r=e.media.originalNode;if(void 0!==r.webkitEnterFullscreen)return void r.webkitEnterFullscreen();if(void 0!==r.webkitRequestFullscreen)return void r.webkitRequestFullscreen();if(void 0!==r.mozRequestFullScreen)return void r.mozRequestFullScreen()}if((0,u.addClass)(i.default.documentElement,e.options.classPrefix+"fullscreen"),(0,u.addClass)(e.getElement(e.container),e.options.classPrefix+"container-fullscreen"),e.normalHeight=parseFloat(n.height),e.normalWidth=parseFloat(n.width),"native-native"!==e.fullscreenMode&&"plugin-native"!==e.fullscreenMode||(l.requestFullScreen(e.getElement(e.container)),e.isInIframe&&setTimeout((function t(){if(e.isNativeFullScreen){var n=o.default.innerWidth||i.default.documentElement.clientWidth||i.default.body.clientWidth,r=screen.width;Math.abs(r-n)>.002*r?e.exitFullScreen():setTimeout(t,500)}}),1e3)),e.getElement(e.container).style.width="100%",e.getElement(e.container).style.height="100%",e.containerSizeTimeout=setTimeout((function(){e.getElement(e.container).style.width="100%",e.getElement(e.container).style.height="100%",e.setControlsSize()}),500),t)e.node.style.width="100%",e.node.style.height="100%";else for(var a=e.getElement(e.container).querySelectorAll("embed, object, video"),s=a.length,f=0;f',f.addEventListener("click",(function(){r.paused?r.play():r.pause()}));var p=f.querySelector("button");function m(e){"play"===e?((0,l.removeClass)(f,r.options.classPrefix+"play"),(0,l.removeClass)(f,r.options.classPrefix+"replay"),(0,l.addClass)(f,r.options.classPrefix+"pause"),p.setAttribute("title",c),p.setAttribute("aria-label",c)):((0,l.removeClass)(f,r.options.classPrefix+"pause"),(0,l.removeClass)(f,r.options.classPrefix+"replay"),(0,l.addClass)(f,r.options.classPrefix+"play"),p.setAttribute("title",u),p.setAttribute("aria-label",u))}r.addControlElement(f,"playpause"),m("pse"),i.addEventListener("loadedmetadata",(function(){-1===i.rendererName.indexOf("flash")&&m("pse")})),i.addEventListener("play",(function(){m("play")})),i.addEventListener("playing",(function(){m("play")})),i.addEventListener("pause",(function(){m("pse")})),i.addEventListener("ended",(function(){e.options.loop||((0,l.removeClass)(f,r.options.classPrefix+"pause"),(0,l.removeClass)(f,r.options.classPrefix+"play"),(0,l.addClass)(f,r.options.classPrefix+"replay"),p.setAttribute("title",u),p.setAttribute("aria-label",u))}))}})},{16:16,2:2,26:26,27:27,5:5}],11:[function(e,t,n){"use strict";var o=u(e(2)),i=e(16),r=u(i),a=u(e(5)),s=e(25),l=e(30),d=e(26);function u(e){return e&&e.__esModule?e:{default:e}}Object.assign(i.config,{enableProgressTooltip:!0,useSmoothHover:!0,forceLive:!1}),Object.assign(r.default.prototype,{buildprogress:function(e,t,n,i){var r=0,u=!1,c=!1,f=this,p=e.options.autoRewind,m=e.options.enableProgressTooltip?'00:00':"",h=o.default.createElement("div");h.className=f.options.classPrefix+"time-rail",h.innerHTML=''+m+"",f.addControlElement(h,"progress"),f.options.keyActions.push({keys:[37,227],action:function(e){if(!isNaN(e.duration)&&e.duration>0){e.isVideo&&(e.showControls(),e.startControlsTimer());var t=e.getElement(e.container).querySelector("."+f.options.classPrefix+"time-total");t&&t.focus();var n=Math.max(e.currentTime-e.options.defaultSeekBackwardInterval(e),0);e.paused||e.pause(),setTimeout((function(){e.setCurrentTime(n)}),0),setTimeout((function(){e.play()}),0)}}},{keys:[39,228],action:function(e){if(!isNaN(e.duration)&&e.duration>0){e.isVideo&&(e.showControls(),e.startControlsTimer());var t=e.getElement(e.container).querySelector("."+f.options.classPrefix+"time-total");t&&t.focus();var n=Math.min(e.currentTime+e.options.defaultSeekForwardInterval(e),e.duration);e.paused||e.pause(),setTimeout((function(){e.setCurrentTime(n)}),0),setTimeout((function(){e.play()}),0)}}}),f.rail=t.querySelector("."+f.options.classPrefix+"time-rail"),f.total=t.querySelector("."+f.options.classPrefix+"time-total"),f.loaded=t.querySelector("."+f.options.classPrefix+"time-loaded"),f.current=t.querySelector("."+f.options.classPrefix+"time-current"),f.handle=t.querySelector("."+f.options.classPrefix+"time-handle"),f.timefloat=t.querySelector("."+f.options.classPrefix+"time-float"),f.timefloatcurrent=t.querySelector("."+f.options.classPrefix+"time-float-current"),f.slider=t.querySelector("."+f.options.classPrefix+"time-slider"),f.hovered=t.querySelector("."+f.options.classPrefix+"time-hovered"),f.buffer=t.querySelector("."+f.options.classPrefix+"time-buffering"),f.newTime=0,f.forcedHandlePause=!1,f.setTransformStyle=function(e,t){e.style.transform=t,e.style.webkitTransform=t,e.style.MozTransform=t,e.style.msTransform=t,e.style.OTransform=t},f.buffer.style.display="none";var v=function(t){var n=getComputedStyle(f.total),o=(0,d.offset)(f.total),i=f.total.offsetWidth,r=void 0!==n.webkitTransform?"webkitTransform":void 0!==n.mozTransform?"mozTransform ":void 0!==n.oTransform?"oTransform":void 0!==n.msTransform?"msTransform":"transform",a="WebKitCSSMatrix"in window?"WebKitCSSMatrix":"MSCSSMatrix"in window?"MSCSSMatrix":"CSSMatrix"in window?"CSSMatrix":void 0,c=0,p=0,m=0,h=void 0;if(h=t.originalEvent&&t.originalEvent.changedTouches?t.originalEvent.changedTouches[0].pageX:t.changedTouches?t.changedTouches[0].pageX:t.pageX,f.getDuration()){if(hi+o.left&&(h=i+o.left),c=(m=h-o.left)/i,f.newTime=c*f.getDuration(),u&&null!==f.getCurrentTime()&&f.newTime.toFixed(4)!==f.getCurrentTime().toFixed(4)&&(f.setCurrentRailHandle(f.newTime),f.updateCurrent(f.newTime)),!s.IS_IOS&&!s.IS_ANDROID){if(m<0&&(m=0),f.options.useSmoothHover&&null!==a&&void 0!==window[a]){var v=new window[a](getComputedStyle(f.handle)[r]).m41,g=m/parseFloat(getComputedStyle(f.total).width)-v/parseFloat(getComputedStyle(f.total).width);f.hovered.style.left=v+"px",f.setTransformStyle(f.hovered,"scaleX("+g+")"),f.hovered.setAttribute("pos",m),g>=0?(0,d.removeClass)(f.hovered,"negative"):(0,d.addClass)(f.hovered,"negative")}if(f.timefloat){var y=f.timefloat.offsetWidth/2,E=mejs.Utils.offset(f.getElement(f.container)),b=getComputedStyle(f.timefloat);p=h-E.left=f.getElement(f.container).offsetWidth-y?f.total.offsetWidth-y:m,(0,d.hasClass)(f.getElement(f.container),f.options.classPrefix+"long-video")&&(p+=parseFloat(b.marginLeft)/2+f.timefloat.offsetWidth/2),f.timefloat.style.left=p+"px",f.timefloatcurrent.innerHTML=(0,l.secondsToTimeCode)(f.newTime,e.options.alwaysShowHours,e.options.showTimecodeFrameCount,e.options.framesPerSecond,e.options.secondsDecimalLength,e.options.timeFormat),f.timefloat.style.display="block"}}}else s.IS_IOS||s.IS_ANDROID||!f.timefloat||(p=f.timefloat.offsetWidth+i>=f.getElement(f.container).offsetWidth?f.timefloat.offsetWidth/2:0,f.timefloat.style.left=p+"px",f.timefloat.style.left=p+"px",f.timefloat.style.display="block")},g=function(){new Date-r>=1e3&&f.play()};f.slider.addEventListener("focus",(function(){e.options.autoRewind=!1})),f.slider.addEventListener("blur",(function(){e.options.autoRewind=p})),f.slider.addEventListener("keydown",(function(t){if(new Date-r>=1e3&&(c=f.paused),f.options.enableKeyboard&&f.options.keyActions.length){var n=t.which||t.keyCode||0,o=f.getDuration(),a=e.options.defaultSeekForwardInterval(i),l=e.options.defaultSeekBackwardInterval(i),d=f.getCurrentTime(),u=f.getElement(f.container).querySelector("."+f.options.classPrefix+"volume-slider");if(38===n||40===n){u&&(u.style.display="block"),f.isVideo&&(f.showControls(),f.startControlsTimer());var p=38===n?Math.min(f.volume+.1,1):Math.max(f.volume-.1,0),m=p<=0;return f.setVolume(p),void f.setMuted(m)}switch(u&&(u.style.display="none"),n){case 37:f.getDuration()!==1/0&&(d-=l);break;case 39:f.getDuration()!==1/0&&(d+=a);break;case 36:d=0;break;case 35:d=o;break;case 13:case 32:return void(s.IS_FIREFOX&&(f.paused?f.play():f.pause()));default:return}d=d<0||isNaN(d)?0:d>=o?o:Math.floor(d),r=new Date,c||e.pause(),setTimeout((function(){f.setCurrentTime(d)}),0),d0&&n.buffered.end&&t.getDuration()?o=n.buffered.end(n.buffered.length-1)/t.getDuration():n&&void 0!==n.bytesTotal&&n.bytesTotal>0&&void 0!==n.bufferedBytes?o=n.bufferedBytes/n.bytesTotal:e&&e.lengthComputable&&0!==e.total&&(o=e.loaded/e.total),null!==o&&(o=Math.min(1,Math.max(0,o)),t.loaded&&t.setTransformStyle(t.loaded,"scaleX("+o+")"))},setCurrentRailHandle:function(e){this.setCurrentRailMain(this,e)},setCurrentRail:function(){this.setCurrentRailMain(this)},setCurrentRailMain:function(e,t){if(void 0!==e.getCurrentTime()&&e.getDuration()){var n=void 0===t?e.getCurrentTime():t;if(e.total&&e.handle){var o=parseFloat(getComputedStyle(e.total).width),i=Math.round(o*n/e.getDuration()),r=i-Math.round(e.handle.offsetWidth/2);if(r=r<0?0:r,e.setTransformStyle(e.current,"scaleX("+i/o+")"),e.setTransformStyle(e.handle,"translateX("+r+"px)"),e.options.useSmoothHover&&!(0,d.hasClass)(e.hovered,"no-hover")){var a=parseInt(e.hovered.getAttribute("pos"),10),s=(a=isNaN(a)?0:a)/o-r/o;e.hovered.style.left=r+"px",e.setTransformStyle(e.hovered,"scaleX("+s+")"),s>=0?(0,d.removeClass)(e.hovered,"negative"):(0,d.addClass)(e.hovered,"negative")}}}}})},{16:16,2:2,25:25,26:26,30:30,5:5}],12:[function(e,t,n){"use strict";var o=l(e(2)),i=e(16),r=l(i),a=e(30),s=e(26);function l(e){return e&&e.__esModule?e:{default:e}}Object.assign(i.config,{duration:0,timeAndDurationSeparator:" | "}),Object.assign(r.default.prototype,{buildcurrent:function(e,t,n,i){var r=this,s=o.default.createElement("div");s.className=r.options.classPrefix+"time",s.setAttribute("role","timer"),s.setAttribute("aria-live","off"),s.innerHTML=''+(0,a.secondsToTimeCode)(0,e.options.alwaysShowHours,e.options.showTimecodeFrameCount,e.options.framesPerSecond,e.options.secondsDecimalLength,e.options.timeFormat)+"",r.addControlElement(s,"current"),e.updateCurrent(),r.updateTimeCallback=function(){r.controlsAreVisible&&e.updateCurrent()},i.addEventListener("timeupdate",r.updateTimeCallback)},cleancurrent:function(e,t,n,o){o.removeEventListener("timeupdate",e.updateTimeCallback)},buildduration:function(e,t,n,i){var r=this;if(t.lastChild.querySelector("."+r.options.classPrefix+"currenttime"))t.querySelector("."+r.options.classPrefix+"time").innerHTML+=r.options.timeAndDurationSeparator+''+(0,a.secondsToTimeCode)(r.options.duration,r.options.alwaysShowHours,r.options.showTimecodeFrameCount,r.options.framesPerSecond,r.options.secondsDecimalLength,r.options.timeFormat)+"";else{t.querySelector("."+r.options.classPrefix+"currenttime")&&(0,s.addClass)(t.querySelector("."+r.options.classPrefix+"currenttime").parentNode,r.options.classPrefix+"currenttime-container");var l=o.default.createElement("div");l.className=r.options.classPrefix+"time "+r.options.classPrefix+"duration-container",l.innerHTML=''+(0,a.secondsToTimeCode)(r.options.duration,r.options.alwaysShowHours,r.options.showTimecodeFrameCount,r.options.framesPerSecond,r.options.secondsDecimalLength,r.options.timeFormat)+"",r.addControlElement(l,"duration")}r.updateDurationCallback=function(){r.controlsAreVisible&&e.updateDuration()},i.addEventListener("timeupdate",r.updateDurationCallback)},cleanduration:function(e,t,n,o){o.removeEventListener("timeupdate",e.updateDurationCallback)},updateCurrent:function(){var e=this,t=e.getCurrentTime();isNaN(t)&&(t=0);var n=(0,a.secondsToTimeCode)(t,e.options.alwaysShowHours,e.options.showTimecodeFrameCount,e.options.framesPerSecond,e.options.secondsDecimalLength,e.options.timeFormat);n.length>5?(0,s.addClass)(e.getElement(e.container),e.options.classPrefix+"long-video"):(0,s.removeClass)(e.getElement(e.container),e.options.classPrefix+"long-video"),e.getElement(e.controls).querySelector("."+e.options.classPrefix+"currenttime")&&(e.getElement(e.controls).querySelector("."+e.options.classPrefix+"currenttime").innerText=n)},updateDuration:function(){var e=this,t=e.getDuration();void 0!==e.media&&(isNaN(t)||t===1/0||t<0)&&(e.media.duration=e.options.duration=t=0),e.options.duration>0&&(t=e.options.duration);var n=(0,a.secondsToTimeCode)(t,e.options.alwaysShowHours,e.options.showTimecodeFrameCount,e.options.framesPerSecond,e.options.secondsDecimalLength,e.options.timeFormat);n.length>5?(0,s.addClass)(e.getElement(e.container),e.options.classPrefix+"long-video"):(0,s.removeClass)(e.getElement(e.container),e.options.classPrefix+"long-video"),e.getElement(e.controls).querySelector("."+e.options.classPrefix+"duration")&&t>0&&(e.getElement(e.controls).querySelector("."+e.options.classPrefix+"duration").innerHTML=n)}})},{16:16,2:2,26:26,30:30}],13:[function(e,t,n){"use strict";var o=c(e(2)),i=c(e(7)),r=c(e(5)),a=e(16),s=c(a),l=e(30),d=e(27),u=e(26);function c(e){return e&&e.__esModule?e:{default:e}}Object.assign(a.config,{startLanguage:"",tracksText:null,chaptersText:null,tracksAriaLive:!1,hideCaptionsButtonWhenEmpty:!0,toggleCaptionsButtonWhenOnlyOne:!1,slidesSelector:""}),Object.assign(s.default.prototype,{hasChapters:!1,buildtracks:function(e,t,n,i){if(this.findTracks(),e.tracks.length||e.trackFiles&&0!==!e.trackFiles.length){var a=this,s=a.options.tracksAriaLive?' role="log" aria-live="assertive" aria-atomic="false"':"",l=(0,d.isString)(a.options.tracksText)?a.options.tracksText:r.default.t("mejs.captions-subtitles"),c=(0,d.isString)(a.options.chaptersText)?a.options.chaptersText:r.default.t("mejs.captions-chapters"),f=null===e.trackFiles?e.tracks.length:e.trackFiles.length;if(a.domNode.textTracks)for(var p=a.domNode.textTracks.length-1;p>=0;p--)a.domNode.textTracks[p].mode="hidden";a.cleartracks(e),e.captions=o.default.createElement("div"),e.captions.className=a.options.classPrefix+"captions-layer "+a.options.classPrefix+"layer",e.captions.innerHTML='
',e.captions.style.display="none",n.insertBefore(e.captions,n.firstChild),e.captionsText=e.captions.querySelector("."+a.options.classPrefix+"captions-text"),e.captionsButton=o.default.createElement("div"),e.captionsButton.className=a.options.classPrefix+"button "+a.options.classPrefix+"captions-button",e.captionsButton.innerHTML='
",a.addControlElement(e.captionsButton,"tracks"),e.captionsButton.querySelector("."+a.options.classPrefix+"captions-selector-input").disabled=!1,e.chaptersButton=o.default.createElement("div"),e.chaptersButton.className=a.options.classPrefix+"button "+a.options.classPrefix+"chapters-button",e.chaptersButton.innerHTML='
    ';for(var m=0,h=0;hn.start&&en.start&&e"},checkForTracks:function(){var e=this,t=!1;if(e.options.hideCaptionsButtonWhenEmpty){for(var n=0,o=e.tracks.length;n-1){var i=t.entries[n].text;return"function"==typeof e.options.captionTextPreprocessor&&(i=e.options.captionTextPreprocessor(i)),e.captionsText.innerHTML=function(e){var t=o.default.createElement("div");t.innerHTML=e;for(var n=t.getElementsByTagName("script"),i=n.length;i--;)n[i].remove();for(var r=t.getElementsByTagName("*"),a=0,s=r.length;a-1&&e.showSlide(n)}},drawChapters:function(e){var t=this,n=e.entries.length;if(n){t.chaptersButton.querySelector("ul").innerHTML="";for(var o=0;o";for(var i=t.chaptersButton.querySelectorAll('input[type="radio"]'),r=t.chaptersButton.querySelectorAll("."+t.options.classPrefix+"chapters-selector-label"),a=0,s=i.length;a>1].start,a=e[i].stop,t>=r&&tt&&(o=i-1)}return-1}}),i.default.language={codes:{af:"mejs.afrikaans",sq:"mejs.albanian",ar:"mejs.arabic",be:"mejs.belarusian",bg:"mejs.bulgarian",ca:"mejs.catalan",zh:"mejs.chinese","zh-cn":"mejs.chinese-simplified","zh-tw":"mejs.chines-traditional",hr:"mejs.croatian",cs:"mejs.czech",da:"mejs.danish",nl:"mejs.dutch",en:"mejs.english",et:"mejs.estonian",fl:"mejs.filipino",fi:"mejs.finnish",fr:"mejs.french",gl:"mejs.galician",de:"mejs.german",el:"mejs.greek",ht:"mejs.haitian-creole",iw:"mejs.hebrew",hi:"mejs.hindi",hu:"mejs.hungarian",is:"mejs.icelandic",id:"mejs.indonesian",ga:"mejs.irish",it:"mejs.italian",ja:"mejs.japanese",ko:"mejs.korean",lv:"mejs.latvian",lt:"mejs.lithuanian",mk:"mejs.macedonian",ms:"mejs.malay",mt:"mejs.maltese",no:"mejs.norwegian",fa:"mejs.persian",pl:"mejs.polish",pt:"mejs.portuguese",ro:"mejs.romanian",ru:"mejs.russian",sr:"mejs.serbian",sk:"mejs.slovak",sl:"mejs.slovenian",es:"mejs.spanish",sw:"mejs.swahili",sv:"mejs.swedish",tl:"mejs.tagalog",th:"mejs.thai",tr:"mejs.turkish",uk:"mejs.ukrainian",vi:"mejs.vietnamese",cy:"mejs.welsh",yi:"mejs.yiddish"}},i.default.TrackFormatParser={webvtt:{pattern:/^((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{1,3})?) --\> ((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{3})?)(.*)$/,parse:function(e){for(var t=e.split(/\r?\n/),n=[],o=void 0,i=void 0,r=void 0,a=0,s=t.length;a=0&&""!==t[a-1]&&(r=t[a-1]),i=t[++a],a++;""!==t[a]&&a$1"),n.push({identifier:r,start:0===(0,l.convertSMPTEtoSeconds)(o[1])?.2:(0,l.convertSMPTEtoSeconds)(o[1]),stop:(0,l.convertSMPTEtoSeconds)(o[3]),text:i,settings:o[5]})}r=""}return n}},dfxp:{parse:function(e){var t=o.default.adoptNode((new DOMParser).parseFromString(e,"application/xml").documentElement).querySelector("div"),n=t.querySelectorAll("p"),i=o.default.getElementById(t.getAttribute("style")),r=[],a=void 0;if(i){i.removeAttribute("id");var s=i.attributes;if(s.length){a={};for(var d=0,u=s.length;d$1"),r.push(m)}return r}}}},{16:16,2:2,26:26,27:27,30:30,5:5,7:7}],14:[function(e,t,n){"use strict";var o=u(e(2)),i=e(16),r=u(i),a=u(e(5)),s=e(25),l=e(27),d=e(26);function u(e){return e&&e.__esModule?e:{default:e}}Object.assign(i.config,{muteText:null,unmuteText:null,allyVolumeControlText:null,hideVolumeOnTouchDevices:!0,audioVolume:"horizontal",videoVolume:"vertical",startVolume:.8}),Object.assign(r.default.prototype,{buildvolume:function(e,t,n,i){if(!s.IS_ANDROID&&!s.IS_IOS||!this.options.hideVolumeOnTouchDevices){var r=this,u=r.isVideo?r.options.videoVolume:r.options.audioVolume,c=(0,l.isString)(r.options.muteText)?r.options.muteText:a.default.t("mejs.mute"),f=(0,l.isString)(r.options.unmuteText)?r.options.unmuteText:a.default.t("mejs.unmute"),p=(0,l.isString)(r.options.allyVolumeControlText)?r.options.allyVolumeControlText:a.default.t("mejs.volume-help-text"),m=o.default.createElement("div");if(m.className=r.options.classPrefix+"button "+r.options.classPrefix+"volume-button "+r.options.classPrefix+"mute",m.innerHTML="horizontal"===u?'':''+p+'
    ',r.addControlElement(m,"volume"),r.options.keyActions.push({keys:[38],action:function(e){var t=e.getElement(e.container).querySelector("."+r.options.classPrefix+"volume-slider");t&&t.matches(":focus")&&(t.style.display="block"),e.isVideo&&(e.showControls(),e.startControlsTimer());var n=Math.min(e.volume+.1,1);e.setVolume(n),n>0&&e.setMuted(!1)}},{keys:[40],action:function(e){var t=e.getElement(e.container).querySelector("."+r.options.classPrefix+"volume-slider");t&&(t.style.display="block"),e.isVideo&&(e.showControls(),e.startControlsTimer());var n=Math.max(e.volume-.1,0);e.setVolume(n),n<=.1&&e.setMuted(!0)}},{keys:[77],action:function(e){var t=e.getElement(e.container).querySelector("."+r.options.classPrefix+"volume-slider");t&&(t.style.display="block"),e.isVideo&&(e.showControls(),e.startControlsTimer()),e.media.muted?e.setMuted(!1):e.setMuted(!0)}}),"horizontal"===u){var h=o.default.createElement("a");h.className=r.options.classPrefix+"horizontal-volume-slider",h.setAttribute("aria-label",a.default.t("mejs.volume-slider")),h.setAttribute("aria-valuemin",0),h.setAttribute("aria-valuemax",100),h.setAttribute("aria-valuenow",100),h.setAttribute("role","slider"),h.innerHTML+=''+p+'
    ',m.parentNode.insertBefore(h,m.nextSibling)}var v=!1,g=!1,y=!1,E="vertical"===u?r.getElement(r.container).querySelector("."+r.options.classPrefix+"volume-slider"):r.getElement(r.container).querySelector("."+r.options.classPrefix+"horizontal-volume-slider"),b="vertical"===u?r.getElement(r.container).querySelector("."+r.options.classPrefix+"volume-total"):r.getElement(r.container).querySelector("."+r.options.classPrefix+"horizontal-volume-total"),S="vertical"===u?r.getElement(r.container).querySelector("."+r.options.classPrefix+"volume-current"):r.getElement(r.container).querySelector("."+r.options.classPrefix+"horizontal-volume-current"),w="vertical"===u?r.getElement(r.container).querySelector("."+r.options.classPrefix+"volume-handle"):r.getElement(r.container).querySelector("."+r.options.classPrefix+"horizontal-volume-handle"),x=function(e){if(null!==e&&!isNaN(e)&&void 0!==e){if(e=Math.max(0,e),0===(e=Math.min(e,1))){(0,d.removeClass)(m,r.options.classPrefix+"mute"),(0,d.addClass)(m,r.options.classPrefix+"unmute");var t=m.firstElementChild;t.setAttribute("title",f),t.setAttribute("aria-label",f)}else{(0,d.removeClass)(m,r.options.classPrefix+"unmute"),(0,d.addClass)(m,r.options.classPrefix+"mute");var n=m.firstElementChild;n.setAttribute("title",c),n.setAttribute("aria-label",c)}var o=100*e+"%",i=getComputedStyle(w);"vertical"===u?(S.style.bottom=0,S.style.height=o,w.style.bottom=o,w.style.marginBottom=-parseFloat(i.height)/2+"px"):(S.style.left=0,S.style.width=o,w.style.left=o,w.style.marginLeft=-parseFloat(i.width)/2+"px")}},P=function(e){var t=(0,d.offset)(b),n=getComputedStyle(b);y=!0;var o=null;if("vertical"===u){var i=parseFloat(n.height);if(o=(i-(e.pageY-t.top))/i,0===t.top||0===t.left)return}else{var a=parseFloat(n.width);o=(e.pageX-t.left)/a}o=Math.max(0,o),o=Math.min(o,1),x(o),r.setMuted(0===o),r.setVolume(o),e.preventDefault(),e.stopPropagation()},T=function(){r.muted?(x(0),(0,d.removeClass)(m,r.options.classPrefix+"mute"),(0,d.addClass)(m,r.options.classPrefix+"unmute")):(x(i.volume),(0,d.removeClass)(m,r.options.classPrefix+"unmute"),(0,d.addClass)(m,r.options.classPrefix+"mute"))};e.getElement(e.container).addEventListener("keydown",(function(e){!!e.target.closest("."+r.options.classPrefix+"container")||"vertical"!==u||(E.style.display="none")})),m.addEventListener("mouseenter",(function(e){e.target===m&&(E.style.display="block",g=!0,e.preventDefault(),e.stopPropagation())})),m.addEventListener("focusin",(function(){E.style.display="block",g=!0})),m.addEventListener("focusout",(function(e){e.relatedTarget&&(!e.relatedTarget||e.relatedTarget.matches("."+r.options.classPrefix+"volume-slider"))||"vertical"!==u||(E.style.display="none")})),m.addEventListener("mouseleave",(function(){g=!1,v||"vertical"!==u||(E.style.display="none")})),m.addEventListener("focusout",(function(){g=!1})),m.addEventListener("keydown",(function(e){if(r.options.enableKeyboard&&r.options.keyActions.length){var t=e.which||e.keyCode||0,n=i.volume;switch(t){case 38:n=Math.min(n+.1,1);break;case 40:n=Math.max(0,n-.1);break;default:return!0}v=!1,x(n),i.setVolume(n),e.preventDefault(),e.stopPropagation()}})),m.querySelector("button").addEventListener("click",(function(){i.setMuted(!i.muted);var e=(0,l.createEvent)("volumechange",i);i.dispatchEvent(e)})),E.addEventListener("dragstart",(function(){return!1})),E.addEventListener("mouseover",(function(){g=!0})),E.addEventListener("focusin",(function(){E.style.display="block",g=!0})),E.addEventListener("focusout",(function(){g=!1,v||"vertical"!==u||(E.style.display="none")})),E.addEventListener("mousedown",(function(e){P(e),r.globalBind("mousemove.vol",(function(e){var t=e.target;v&&(t===E||t.closest("vertical"===u?"."+r.options.classPrefix+"volume-slider":"."+r.options.classPrefix+"horizontal-volume-slider"))&&P(e)})),r.globalBind("mouseup.vol",(function(){v=!1,g||"vertical"!==u||(E.style.display="none")})),v=!0,e.preventDefault(),e.stopPropagation()})),i.addEventListener("volumechange",(function(e){var t;v||T(),t=Math.floor(100*i.volume),E.setAttribute("aria-valuenow",t),E.setAttribute("aria-valuetext",t+"%")}));var k=!1;i.addEventListener("rendererready",(function(){y||setTimeout((function(){k=!0,(0===e.options.startVolume||i.originalNode.muted)&&i.setMuted(!0),i.setVolume(e.options.startVolume),r.setControlsSize()}),250)})),i.addEventListener("loadedmetadata",(function(){setTimeout((function(){y||k||((0===e.options.startVolume||i.originalNode.muted)&&i.setMuted(!0),0===e.options.startVolume&&(e.options.startVolume=0),i.setVolume(e.options.startVolume),r.setControlsSize()),k=!1}),250)})),(0===e.options.startVolume||i.originalNode.muted)&&(i.setMuted(!0),0===e.options.startVolume&&(e.options.startVolume=0),T()),r.getElement(r.container).addEventListener("controlsresize",(function(){T()}))}}})},{16:16,2:2,25:25,26:26,27:27,5:5}],15:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});n.EN={"mejs.plural-form":1,"mejs.download-file":"Download File","mejs.install-flash":"You are using a browser that does not have Flash player enabled or installed. Please turn on your Flash player plugin or download the latest version from https://get.adobe.com/flashplayer/","mejs.fullscreen":"Fullscreen","mejs.play":"Play","mejs.pause":"Pause","mejs.time-slider":"Time Slider","mejs.time-help-text":"Use Left/Right Arrow keys to advance one second, Up/Down arrows to advance ten seconds.","mejs.live-broadcast":"Live Broadcast","mejs.volume-help-text":"Use Up/Down Arrow keys to increase or decrease volume.","mejs.unmute":"Unmute","mejs.mute":"Mute","mejs.volume-slider":"Volume Slider","mejs.video-player":"Video Player","mejs.audio-player":"Audio Player","mejs.captions-subtitles":"Captions/Subtitles","mejs.captions-chapters":"Chapters","mejs.none":"None","mejs.afrikaans":"Afrikaans","mejs.albanian":"Albanian","mejs.arabic":"Arabic","mejs.belarusian":"Belarusian","mejs.bulgarian":"Bulgarian","mejs.catalan":"Catalan","mejs.chinese":"Chinese","mejs.chinese-simplified":"Chinese (Simplified)","mejs.chinese-traditional":"Chinese (Traditional)","mejs.croatian":"Croatian","mejs.czech":"Czech","mejs.danish":"Danish","mejs.dutch":"Dutch","mejs.english":"English","mejs.estonian":"Estonian","mejs.filipino":"Filipino","mejs.finnish":"Finnish","mejs.french":"French","mejs.galician":"Galician","mejs.german":"German","mejs.greek":"Greek","mejs.haitian-creole":"Haitian Creole","mejs.hebrew":"Hebrew","mejs.hindi":"Hindi","mejs.hungarian":"Hungarian","mejs.icelandic":"Icelandic","mejs.indonesian":"Indonesian","mejs.irish":"Irish","mejs.italian":"Italian","mejs.japanese":"Japanese","mejs.korean":"Korean","mejs.latvian":"Latvian","mejs.lithuanian":"Lithuanian","mejs.macedonian":"Macedonian","mejs.malay":"Malay","mejs.maltese":"Maltese","mejs.norwegian":"Norwegian","mejs.persian":"Persian","mejs.polish":"Polish","mejs.portuguese":"Portuguese","mejs.romanian":"Romanian","mejs.russian":"Russian","mejs.serbian":"Serbian","mejs.slovak":"Slovak","mejs.slovenian":"Slovenian","mejs.spanish":"Spanish","mejs.swahili":"Swahili","mejs.swedish":"Swedish","mejs.tagalog":"Tagalog","mejs.thai":"Thai","mejs.turkish":"Turkish","mejs.ukrainian":"Ukrainian","mejs.vietnamese":"Vietnamese","mejs.welsh":"Welsh","mejs.yiddish":"Yiddish"}},{}],16:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.config=void 0;var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=function(){function e(e,t){for(var n=0;n
    ',e.getElement(e.container).addEventListener("focus",(function(t){if(!e.controlsAreVisible&&!e.hasFocus&&e.controlsEnabled){e.showControls(!0);var n=(0,f.isNodeAfter)(t.relatedTarget,e.getElement(e.container))?"."+e.options.classPrefix+"controls ."+e.options.classPrefix+"button:last-child > button":"."+e.options.classPrefix+"playpause-button > button";e.getElement(e.container).querySelector(n).focus()}})),e.node.parentNode.insertBefore(e.getElement(e.container),e.node),e.options.features.length||e.options.useDefaultControls||(e.getElement(e.container).style.background="transparent",e.getElement(e.container).querySelector("."+e.options.classPrefix+"controls").style.display="none"),e.isVideo&&"fill"===e.options.stretching&&!h.hasClass(e.getElement(e.container).parentNode,e.options.classPrefix+"fill-container")){e.outerContainer=e.media.parentNode;var r=a.default.createElement("div");r.className=e.options.classPrefix+"fill-container",e.getElement(e.container).parentNode.insertBefore(r,e.getElement(e.container)),r.appendChild(e.getElement(e.container))}c.IS_ANDROID&&h.addClass(e.getElement(e.container),e.options.classPrefix+"android"),c.IS_IOS&&h.addClass(e.getElement(e.container),e.options.classPrefix+"ios"),c.IS_IPAD&&h.addClass(e.getElement(e.container),e.options.classPrefix+"ipad"),c.IS_IPHONE&&h.addClass(e.getElement(e.container),e.options.classPrefix+"iphone"),h.addClass(e.getElement(e.container),e.isVideo?e.options.classPrefix+"video":e.options.classPrefix+"audio"),e.getElement(e.container).querySelector("."+e.options.classPrefix+"mediaelement").appendChild(e.node),e.media.player=e,e.controls=e.getElement(e.container).querySelector("."+e.options.classPrefix+"controls"),e.layers=e.getElement(e.container).querySelector("."+e.options.classPrefix+"layers");var d=e.isVideo?"video":"audio",p=d.substring(0,1).toUpperCase()+d.substring(1);e.options[d+"Width"]>0||e.options[d+"Width"].toString().indexOf("%")>-1?e.width=e.options[d+"Width"]:""!==e.node.style.width&&null!==e.node.style.width?e.width=e.node.style.width:e.node.getAttribute("width")?e.width=e.node.getAttribute("width"):e.width=e.options["default"+p+"Width"],e.options[d+"Height"]>0||e.options[d+"Height"].toString().indexOf("%")>-1?e.height=e.options[d+"Height"]:""!==e.node.style.height&&null!==e.node.style.height?e.height=e.node.style.height:e.node.getAttribute("height")?e.height=e.node.getAttribute("height"):e.height=e.options["default"+p+"Height"],e.initialAspectRatio=e.height>=e.width?e.width/e.height:e.height/e.width,e.setPlayerSize(e.width,e.height),t.pluginWidth=e.width,t.pluginHeight=e.height}if(s.default.MepDefaults=t,new l.default(e.media,t,e.mediaFiles),void 0!==e.getElement(e.container)&&e.options.features.length&&e.controlsAreVisible&&!e.options.hideVideoControlsOnLoad){var m=(0,f.createEvent)("controlsshown",e.getElement(e.container));e.getElement(e.container).dispatchEvent(m)}}},{key:"showControls",value:function(e){var t=this;if(e=void 0===e||e,!t.controlsAreVisible&&t.isVideo){if(e)!function(){h.fadeIn(t.getElement(t.controls),200,(function(){h.removeClass(t.getElement(t.controls),t.options.classPrefix+"offscreen");var e=(0,f.createEvent)("controlsshown",t.getElement(t.container));t.getElement(t.container).dispatchEvent(e)}));for(var e=t.getElement(t.container).querySelectorAll("."+t.options.classPrefix+"control"),n=function(n,o){h.fadeIn(e[n],200,(function(){h.removeClass(e[n],t.options.classPrefix+"offscreen")}))},o=0,i=e.length;o0)||n.isVideo&&!n.options.hideVideoControlsOnLoad&&!n.readyState||n.ended)){if(e)!function(){h.fadeOut(n.getElement(n.controls),200,(function(){h.addClass(n.getElement(n.controls),n.options.classPrefix+"offscreen"),n.getElement(n.controls).style.display="";var e=(0,f.createEvent)("controlshidden",n.getElement(n.container));n.getElement(n.container).dispatchEvent(e)}));for(var e=n.getElement(n.container).querySelectorAll("."+n.options.classPrefix+"control"),t=function(t,o){h.fadeOut(e[t],200,(function(){h.addClass(e[t],n.options.classPrefix+"offscreen"),e[t].style.display=""}))},o=0,i=e.length;o0&&e.currentMediaTime>0&&(e.setCurrentTime(e.currentMediaTime),c.IS_IOS||c.IS_ANDROID||e.play())}))}},{key:"_meReady",value:function(e,t){var n=this,o=t.getAttribute("autoplay"),i=!(null==o||"false"===o),l=null!==e.rendererName&&/(native|html5)/i.test(e.rendererName);if(n.getElement(n.controls)&&n.enableControls(),n.getElement(n.container)&&n.getElement(n.container).querySelector("."+n.options.classPrefix+"overlay-play")&&(n.getElement(n.container).querySelector("."+n.options.classPrefix+"overlay-play").style.display=""),!n.created){if(n.created=!0,n.media=e,n.domNode=t,!(c.IS_ANDROID&&n.options.AndroidUseNativeControls||c.IS_IPAD&&n.options.iPadUseNativeControls||c.IS_IPHONE&&n.options.iPhoneUseNativeControls)){if(!n.isVideo&&!n.options.features.length&&!n.options.useDefaultControls)return i&&l&&n.play(),void(n.options.success&&("string"==typeof n.options.success?r.default[n.options.success](n.media,n.domNode,n):n.options.success(n.media,n.domNode,n)));if(n.featurePosition={},n._setDefaultPlayer(),n.buildposter(n,n.getElement(n.controls),n.getElement(n.layers),n.media),n.buildkeyboard(n,n.getElement(n.controls),n.getElement(n.layers),n.media),n.buildoverlays(n,n.getElement(n.controls),n.getElement(n.layers),n.media),n.options.useDefaultControls){var d=["playpause","current","progress","duration","tracks","volume","fullscreen"];n.options.features=d.concat(n.options.features.filter((function(e){return-1===d.indexOf(e)})))}n.buildfeatures(n,n.getElement(n.controls),n.getElement(n.layers),n.media);var u=(0,f.createEvent)("controlsready",n.getElement(n.container));n.getElement(n.container).dispatchEvent(u),n.setPlayerSize(n.width,n.height),n.setControlsSize(),n.isVideo&&(n.clickToPlayPauseCallback=function(){if(n.options.clickToPlayPause){var e=n.getElement(n.container).querySelector("."+n.options.classPrefix+"overlay-button"),t=e.getAttribute("aria-pressed");n.paused&&t?n.pause():n.paused?n.play():n.pause(),e.setAttribute("aria-pressed",!t),n.getElement(n.container).focus()}},n.createIframeLayer(),n.media.addEventListener("click",n.clickToPlayPauseCallback),!c.IS_ANDROID&&!c.IS_IOS||n.options.alwaysShowControls?(n.getElement(n.container).addEventListener("mouseenter",(function(){n.controlsEnabled&&(n.options.alwaysShowControls||(n.killControlsTimer("enter"),n.showControls(),n.startControlsTimer(n.options.controlsTimeoutMouseEnter)))})),n.getElement(n.container).addEventListener("mousemove",(function(){n.controlsEnabled&&(n.controlsAreVisible||n.showControls(),n.options.alwaysShowControls||n.startControlsTimer(n.options.controlsTimeoutMouseEnter))})),n.getElement(n.container).addEventListener("mouseleave",(function(){n.controlsEnabled&&(n.paused||n.options.alwaysShowControls||n.startControlsTimer(n.options.controlsTimeoutMouseLeave))}))):n.node.addEventListener("touchstart",(function(){n.controlsAreVisible?n.hideControls(!1):n.controlsEnabled&&n.showControls(!1)}),!!c.SUPPORT_PASSIVE_EVENT&&{passive:!0}),n.options.hideVideoControlsOnLoad&&n.hideControls(!1),n.options.enableAutosize&&n.media.addEventListener("loadedmetadata",(function(e){var t=void 0!==e?e.detail.target||e.target:n.media;n.options.videoHeight<=0&&!n.domNode.getAttribute("height")&&!n.domNode.style.height&&null!==t&&!isNaN(t.videoHeight)&&(n.setPlayerSize(t.videoWidth,t.videoHeight),n.setControlsSize(),n.media.setSize(t.videoWidth,t.videoHeight))}))),n.media.addEventListener("play",(function(){for(var e in n.hasFocus=!0,s.default.players)if(s.default.players.hasOwnProperty(e)){var t=s.default.players[e];t.id===n.id||!n.options.pauseOtherPlayers||t.paused||t.ended||!0===t.options.ignorePauseOtherPlayersOption||(t.pause(),t.hasFocus=!1)}c.IS_ANDROID||c.IS_IOS||n.options.alwaysShowControls||!n.isVideo||n.hideControls()})),n.media.addEventListener("ended",(function(){if(n.options.autoRewind)try{n.setCurrentTime(0),setTimeout((function(){var e=n.getElement(n.container).querySelector("."+n.options.classPrefix+"overlay-loading");e&&e.parentNode&&(e.parentNode.style.display="none")}),20)}catch(e){}"function"==typeof n.media.renderer.stop?n.media.renderer.stop():n.pause(),n.setProgressRail&&n.setProgressRail(),n.setCurrentRail&&n.setCurrentRail(),n.options.loop?n.play():!n.options.alwaysShowControls&&n.controlsEnabled&&n.showControls()})),n.media.addEventListener("loadedmetadata",(function(){(0,p.calculateTimeFormat)(n.getDuration(),n.options,n.options.framesPerSecond||25),n.updateDuration&&n.updateDuration(),n.updateCurrent&&n.updateCurrent(),n.isFullScreen||(n.setPlayerSize(n.width,n.height),n.setControlsSize())}));var m=null;n.media.addEventListener("timeupdate",(function(){isNaN(n.getDuration())||m===n.getDuration()||(m=n.getDuration(),(0,p.calculateTimeFormat)(m,n.options,n.options.framesPerSecond||25),n.updateDuration&&n.updateDuration(),n.updateCurrent&&n.updateCurrent(),n.setControlsSize())})),n.getElement(n.container).addEventListener("click",(function(e){h.addClass(e.currentTarget,n.options.classPrefix+"container-keyboard-inactive")})),n.getElement(n.container).addEventListener("focusin",(function(e){h.removeClass(e.currentTarget,n.options.classPrefix+"container-keyboard-inactive"),!n.isVideo||c.IS_ANDROID||c.IS_IOS||!n.controlsEnabled||n.options.alwaysShowControls||(n.killControlsTimer("enter"),n.showControls(),n.startControlsTimer(n.options.controlsTimeoutMouseEnter))})),n.getElement(n.container).addEventListener("focusout",(function(e){setTimeout((function(){e.relatedTarget&&n.keyboardAction&&!e.relatedTarget.closest("."+n.options.classPrefix+"container")&&(n.keyboardAction=!1,!n.isVideo||n.options.alwaysShowControls||n.paused||n.startControlsTimer(n.options.controlsTimeoutMouseLeave))}),0)})),setTimeout((function(){n.setPlayerSize(n.width,n.height),n.setControlsSize()}),0),n.globalResizeCallback=function(){n.isFullScreen||c.HAS_TRUE_NATIVE_FULLSCREEN&&a.default.webkitIsFullScreen||n.setPlayerSize(n.width,n.height),n.setControlsSize()},n.globalBind("resize",n.globalResizeCallback)}i&&l&&n.play(),n.options.success&&("string"==typeof n.options.success?r.default[n.options.success](n.media,n.domNode,n):n.options.success(n.media,n.domNode,n))}}},{key:"_handleError",value:function(e,t,n){var o=this,i=o.getElement(o.layers).querySelector("."+o.options.classPrefix+"overlay-play");i&&(i.style.display="none"),o.options.error&&o.options.error(e,t,n),o.getElement(o.container).querySelector("."+o.options.classPrefix+"cannotplay")&&o.getElement(o.container).querySelector("."+o.options.classPrefix+"cannotplay").remove();var r=a.default.createElement("div");r.className=o.options.classPrefix+"cannotplay",r.style.width="100%",r.style.height="100%";var l="function"==typeof o.options.customError?o.options.customError(o.media,o.media.originalNode):o.options.customError,d="";if(!l){var u=o.media.originalNode.getAttribute("poster");if(u&&(d=''+s.default.i18n.t('),e.message&&(l="

    "+e.message+"

    "),e.urls)for(var c=0,f=e.urls.length;c'+s.default.i18n.t("mejs.download-file")+": "+p.src+""}}l&&o.getElement(o.layers).querySelector("."+o.options.classPrefix+"overlay-error")&&(r.innerHTML=l,o.getElement(o.layers).querySelector("."+o.options.classPrefix+"overlay-error").innerHTML=""+d+r.outerHTML,o.getElement(o.layers).querySelector("."+o.options.classPrefix+"overlay-error").parentNode.style.display="block"),o.controlsEnabled&&o.disableControls()}},{key:"setPlayerSize",value:function(e,t){var n=this;if(!n.options.setDimensions)return!1;switch(void 0!==e&&(n.width=e),void 0!==t&&(n.height=t),n.options.stretching){case"fill":n.isVideo?n.setFillMode():n.setDimensions(n.width,n.height);break;case"responsive":n.setResponsiveMode();break;case"none":n.setDimensions(n.width,n.height);break;default:!0===n.hasFluidMode()?n.setResponsiveMode():n.setDimensions(n.width,n.height)}}},{key:"hasFluidMode",value:function(){var e=this;return-1!==e.height.toString().indexOf("%")||e.node&&e.node.style.maxWidth&&"none"!==e.node.style.maxWidth&&e.node.style.maxWidth!==e.width||e.node&&e.node.currentStyle&&"100%"===e.node.currentStyle.maxWidth}},{key:"setResponsiveMode",value:function(){var e=this,t=function(){for(var t=void 0,n=e.getElement(e.container);n;){try{if(c.IS_FIREFOX&&"html"===n.tagName.toLowerCase()&&r.default.self!==r.default.top&&null!==r.default.frameElement)return r.default.frameElement;t=n.parentElement}catch(e){t=n.parentElement}if(t&&h.visible(t))return t;n=t}return null}(),n=t?getComputedStyle(t,null):getComputedStyle(a.default.body,null),o=e.isVideo?e.node&&e.node.videoWidth&&e.node.videoWidth>0?e.node.videoWidth:e.node&&e.node.getAttribute("width")?e.node.getAttribute("width"):e.options.defaultVideoWidth:e.options.defaultAudioWidth,i=e.isVideo?e.node&&e.node.videoHeight&&e.node.videoHeight>0?e.node.videoHeight:e.node&&e.node.getAttribute("height")?e.node.getAttribute("height"):e.options.defaultVideoHeight:e.options.defaultAudioHeight,s=function(){if(!e.options.enableAutosize)return e.initialAspectRatio;var t=1;return e.isVideo?(t=e.node&&e.node.videoWidth&&e.node.videoWidth>0&&e.node.videoHeight&&e.node.videoHeight>0?e.height>=e.width?e.node.videoWidth/e.node.videoHeight:e.node.videoHeight/e.node.videoWidth:e.initialAspectRatio,(isNaN(t)||t<.01||t>100)&&(t=1),t):t}(),l=parseFloat(n.height),d=void 0,u=parseFloat(n.width);if(d=e.isVideo?"100%"===e.height?parseFloat(u*i/o,10):e.height>=e.width?parseFloat(u/s,10):parseFloat(u*s,10):i,isNaN(d)&&(d=l),e.getElement(e.container).parentNode&&e.getElement(e.container).parentNode.length>0&&"body"===e.getElement(e.container).parentNode.tagName.toLowerCase()&&(u=r.default.innerWidth||a.default.documentElement.clientWidth||a.default.body.clientWidth,d=r.default.innerHeight||a.default.documentElement.clientHeight||a.default.body.clientHeight),d&&u){e.getElement(e.container).style.width=u+"px",e.getElement(e.container).style.height=d+"px",e.node&&(e.node.style.width="100%",e.node.style.height="100%"),e.isVideo&&e.media.setSize&&e.media.setSize(u,d);for(var f=e.getElement(e.layers).children,p=0,m=f.length;pimg");l&&(l.style.display="");for(var d=e.getElement(e.container).querySelectorAll("object, embed, iframe, video"),u=e.height,f=e.width,p=i,m=u*i/f,v=f*s/u,g=s,y=v>i==!1,E=y?Math.floor(p):Math.floor(v),b=y?Math.floor(m):Math.floor(g),S=y?i+"px":E+"px",w=y?b+"px":s+"px",x=0,P=d.length;x-1?e:parseFloat(e)+"px",t=(0,f.isString)(t)&&t.indexOf("%")>-1?t:parseFloat(t)+"px",n.getElement(n.container).style.width=e,n.getElement(n.container).style.height=t;for(var o=n.getElement(n.layers).children,i=0,r=o.length;i-1&&!a.default.getElementById(e.media.id+"-iframe-overlay")){var t=a.default.createElement("div"),n=a.default.getElementById(e.media.id+"_"+e.media.rendererName);t.id=e.media.id+"-iframe-overlay",t.className=e.options.classPrefix+"iframe-overlay",t.addEventListener("click",(function(t){e.options.clickToPlayPause&&(e.paused?e.play():e.pause(),t.preventDefault(),t.stopPropagation())})),n.parentNode.insertBefore(t,n)}}},{key:"resetSize",value:function(){var e=this;setTimeout((function(){e.setPlayerSize(e.width,e.height),e.setControlsSize()}),50)}},{key:"setPoster",value:function(e){var t=this;if(t.getElement(t.container)){var n=t.getElement(t.container).querySelector("."+t.options.classPrefix+"poster");n||((n=a.default.createElement("div")).className=t.options.classPrefix+"poster "+t.options.classPrefix+"layer",t.getElement(t.layers).appendChild(n));var o=n.querySelector("img");!o&&e&&((o=a.default.createElement("img")).className=t.options.classPrefix+"poster-img",o.width="100%",o.height="100%",n.style.display="",n.appendChild(o)),e?(o.setAttribute("src",e),n.style.backgroundImage='url("'+e+'")',n.style.display=""):o?(n.style.backgroundImage="none",n.style.display="none",o.remove()):n.style.display="none"}else(c.IS_IPAD&&t.options.iPadUseNativeControls||c.IS_IPHONE&&t.options.iPhoneUseNativeControls||c.IS_ANDROID&&t.options.AndroidUseNativeControls)&&(t.media.originalNode.poster=e)}},{key:"changeSkin",value:function(e){var t=this;t.getElement(t.container).className=t.options.classPrefix+"container "+e,t.setPlayerSize(t.width,t.height),t.setControlsSize()}},{key:"globalBind",value:function(e,t){var n=this,o=n.node?n.node.ownerDocument:a.default;if((e=(0,f.splitEvents)(e,n.id)).d)for(var i=e.d.split(" "),s=0,l=i.length;s
    ',n.appendChild(r),s.style.display="none",s.className=i.options.classPrefix+"overlay "+i.options.classPrefix+"layer",s.innerHTML='
    ',n.appendChild(s),l.className=i.options.classPrefix+"overlay "+i.options.classPrefix+"layer "+i.options.classPrefix+"overlay-play",l.innerHTML='
    ',l.addEventListener("click",(function(){if(i.options.clickToPlayPause){var e=i.getElement(i.container).querySelector("."+i.options.classPrefix+"overlay-button"),t=e.getAttribute("aria-pressed");i.paused?i.play():i.pause(),e.setAttribute("aria-pressed",!!t),i.getElement(i.container).focus()}})),l.addEventListener("keydown",(function(e){var t=e.keyCode||e.which||0;if(13===t||c.IS_FIREFOX&&32===t){var n=(0,f.createEvent)("click",l);return l.dispatchEvent(n),!1}})),n.appendChild(l),null!==i.media.rendererName&&(/(youtube|facebook)/i.test(i.media.rendererName)&&!(i.media.originalNode.getAttribute("poster")||e.options.poster||"function"==typeof i.media.renderer.getPosterUrl&&i.media.renderer.getPosterUrl())||c.IS_STOCK_ANDROID||i.media.originalNode.getAttribute("autoplay"))&&(l.style.display="none");var d=!1;o.addEventListener("play",(function(){l.style.display="none",r.style.display="none",s.style.display="none",d=!1})),o.addEventListener("playing",(function(){l.style.display="none",r.style.display="none",s.style.display="none",d=!1})),o.addEventListener("seeking",(function(){l.style.display="none",r.style.display="",d=!1})),o.addEventListener("seeked",(function(){l.style.display=i.paused&&!c.IS_STOCK_ANDROID?"":"none",r.style.display="none",d=!1})),o.addEventListener("pause",(function(){r.style.display="none",c.IS_STOCK_ANDROID||d||(l.style.display=""),d=!1})),o.addEventListener("waiting",(function(){r.style.display="",d=!1})),o.addEventListener("loadeddata",(function(){r.style.display="",c.IS_ANDROID&&(o.canplayTimeout=setTimeout((function(){if(a.default.createEvent){var e=a.default.createEvent("HTMLEvents");return e.initEvent("canplay",!0,!0),o.dispatchEvent(e)}}),300)),d=!1})),o.addEventListener("canplay",(function(){r.style.display="none",clearTimeout(o.canplayTimeout),d=!1})),o.addEventListener("error",(function(e){i._handleError(e,i.media,i.node),r.style.display="none",l.style.display="none",d=!0})),o.addEventListener("loadedmetadata",(function(){i.controlsEnabled||i.enableControls()})),o.addEventListener("keydown",(function(t){i.onkeydown(e,o,t),d=!1}))}}},{key:"buildkeyboard",value:function(e,t,n,o){var i=this;i.getElement(i.container).addEventListener("keydown",(function(){i.keyboardAction=!0})),i.globalKeydownCallback=function(t){if(!a.default.activeElement)return!0;var n=a.default.activeElement.closest("."+i.options.classPrefix+"container"),r=i.media.closest("."+i.options.classPrefix+"container");return i.hasFocus=!(!n||!r||n.id!==r.id),i.onkeydown(e,o,t)},i.globalClickCallback=function(e){i.hasFocus=!!e.target.closest("."+i.options.classPrefix+"container")},i.globalBind("keydown",i.globalKeydownCallback),i.globalBind("click",i.globalClickCallback)}},{key:"onkeydown",value:function(e,t,n){if(e.hasFocus&&e.options.enableKeyboard)for(var o=0,i=e.options.keyActions.length;oimg");(o&&e.node.setAttribute("poster",o.src),delete e.node.autoplay,e.node.setAttribute("src",""),""!==e.media.canPlayType((0,m.getTypeFromFile)(n))&&e.node.setAttribute("src",n),t&&t.indexOf("iframe")>-1)&&a.default.getElementById(e.media.id+"-iframe-overlay").remove();var i=e.node.cloneNode();if(i.style.display="",e.getElement(e.container).parentNode.insertBefore(i,e.getElement(e.container)),e.node.remove(),e.mediaFiles)for(var r=0,s=e.mediaFiles.length;rthis.getOriginalDuration())&&(this.media.setCurrentTime(e),!0)}},{key:"getCurrentTime",value:function(){return this.media.currentTime}},{key:"getOriginalDuration",value:function(){var e=this.media.getDuration();return e===1/0&&this.media.seekable&&this.media.seekable.length&&(e=this.media.seekable.end(0)),e}},{key:"getDuration",value:function(){var e=this.getOriginalDuration();if(this._duration){var t=this._duration();t&&(e=t)}return e}},{key:"setVolume",value:function(e){this.media.setVolume(e)}},{key:"getVolume",value:function(){return this.media.getVolume()}},{key:"setMuted",value:function(e){this.media.setMuted(e)}},{key:"setSrc",value:function(e){var t=this,n=document.getElementById(t.media.id+"-iframe-overlay");n&&n.remove(),t.media.setSrc(e),t.createIframeLayer(),null!==t.media.renderer&&"function"==typeof t.media.renderer.getPosterUrl&&t.setPoster(t.media.renderer.getPosterUrl())}},{key:"getSrc",value:function(){return this.media.getSrc()}},{key:"canPlayType",value:function(e){return this.media.canPlayType(e)}},{key:"paused",get:function(){return this.media.paused}},{key:"muted",set:function(e){this.setMuted(e)},get:function(){return this.media.muted}},{key:"ended",get:function(){return this.media.ended}},{key:"readyState",get:function(){return this.media.readyState}},{key:"currentTime",set:function(e){this.setCurrentTime(e)},get:function(){return this.getCurrentTime()}},{key:"duration",get:function(){return this.getDuration()}},{key:"remainingTime",get:function(){return this.getDuration()-this.currentTime()}},{key:"volume",set:function(e){this.setVolume(e)},get:function(){return this.getVolume()}},{key:"src",set:function(e){this.setSrc(e)},get:function(){return this.getSrc()}}]),e}();n.default=s,a.default.DefaultPlayer=s},{3:3}],18:[function(e,t,n){"use strict";a(e(3));var o,i=a(e(7)),r=a(e(16));function a(e){return e&&e.__esModule?e:{default:e}}"undefined"!=typeof jQuery?i.default.$=jQuery:"undefined"!=typeof Zepto?i.default.$=Zepto:"undefined"!=typeof ender&&(i.default.$=ender),void 0!==(o=i.default.$)&&(o.fn.mediaelementplayer=function(e){return!1===e?this.each((function(){var e=o(this).data("mediaelementplayer");e&&e.remove(),o(this).removeData("mediaelementplayer")})):this.each((function(){o(this).data("mediaelementplayer",new r.default(this,e))})),this},o(document).ready((function(){o("."+i.default.MepDefaults.classPrefix+"player").mediaelementplayer()})))},{16:16,3:3,7:7}],19:[function(e,t,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=c(e(3)),r=c(e(7)),a=e(8),s=e(27),l=e(28),d=e(25),u=e(26);function c(e){return e&&e.__esModule?e:{default:e}}var f={promise:null,load:function(e){return"undefined"!=typeof dashjs?f.promise=new Promise((function(e){e()})).then((function(){f._createPlayer(e)})):(e.options.path="string"==typeof e.options.path?e.options.path:"https://cdn.dashjs.org/latest/dash.all.min.js",f.promise=f.promise||(0,u.loadScript)(e.options.path),f.promise.then((function(){f._createPlayer(e)}))),f.promise},_createPlayer:function(e){var t=dashjs.MediaPlayer().create();return i.default["__ready__"+e.id](t),t}},p={name:"native_dash",options:{prefix:"native_dash",dash:{path:"https://cdn.dashjs.org/latest/dash.all.min.js",debug:!1,drm:{},robustnessLevel:""}},canPlayType:function(e){return d.HAS_MSE&&["application/dash+xml"].indexOf(e.toLowerCase())>-1},create:function(e,t,n){var l=e.originalNode,d=e.id+"_"+t.prefix,u=l.autoplay,c=l.children,p=null,m=null;l.removeAttribute("type");for(var h=0,v=c.length;h0)for(var x=0,P=n.length;xt[0]||n[0]===t[0]&&n[1]>t[1]||n[0]===t[0]&&n[1]===t[1]&&n[2]>=t[2]},addPlugin:function(e,t,n,o,i){p.plugins[e]=p.detectPlugin(t,n,o,i)},detectPlugin:function(e,t,n,r){var a=[0,0,0],s=void 0,l=void 0;if(null!==u.NAV.plugins&&void 0!==u.NAV.plugins&&"object"===o(u.NAV.plugins[e])){if((s=u.NAV.plugins[e].description)&&(void 0===u.NAV.mimeTypes||!u.NAV.mimeTypes[t]||u.NAV.mimeTypes[t].enabledPlugin))for(var d=0,c=(a=s.replace(e,"").replace(/^\s+/,"").replace(/\sr/gi,".").split(".")).length;d
    '+s.default.t("mejs.install-flash")+"
    "}else A=['id="__'+o.id+'"','name="__'+o.id+'"','play="true"','loop="false"','quality="high"','bgcolor="#000000"','wmode="transparent"','allowScriptAccess="'+o.options.shimScriptAccess+'"','allowFullScreen="true"','type="application/x-shockwave-flash"','pluginspage="//www.macromedia.com/go/getflashplayer"','src="'+o.options.pluginPath+o.options.filename+'"','flashvars="'+k.join("&")+'"'],C?(A.push('width="'+N+'"'),A.push('height="'+_+'"')):A.push('style="position: fixed; left: -9999em; top: -9999em;"'),o.flashWrapper.innerHTML="";if(o.flashNode=o.flashWrapper.lastChild,o.hide=function(){f=!1,C&&(o.flashNode.style.display="none")},o.show=function(){f=!0,C&&(o.flashNode.style.display="")},o.setSize=function(e,t){o.flashNode.style.width=e+"px",o.flashNode.style.height=t+"px",null!==o.flashApi&&"function"==typeof o.flashApi.fire_setSize&&o.flashApi.fire_setSize(e,t)},o.destroy=function(){o.flashNode.remove()},n&&n.length>0)for(var F=0,I=n.length;F-1},create:function(e,t,n){var l=e.originalNode,d=e.id+"_"+t.prefix,u=null,c=null;u=l.cloneNode(!0),t=Object.assign(t,e.options);for(var p=r.default.html5media.properties,m=r.default.html5media.events.concat(["click","mouseover","mouseout"]).filter((function(e){return"error"!==e})),h=function(t){var n=(0,s.createEvent)(t.type,e);e.dispatchEvent(n)},v=function(e){var n=""+e.substring(0,1).toUpperCase()+e.substring(1);u["get"+n]=function(){return null!==c?u[e]:null},u["set"+n]=function(n){if(-1===r.default.html5media.readOnlyProperties.indexOf(e))if("src"===e){if(u[e]="object"===(void 0===n?"undefined":o(n))&&n.src?n.src:n,null!==c){var i={type:"flv"};i.url=n,i.cors=t.flv.cors,i.debug=t.flv.debug,i.path=t.flv.path;var a=t.flv.configs;c.destroy();for(var s=0,l=m.length;s0)for(var E=0,b=n.length;E-1},create:function(e,t,n){var l=e.originalNode,d=e.id+"_"+t.prefix,u=l.getAttribute("preload"),c=l.autoplay,p=null,m=null,h=0,v=n.length;m=l.cloneNode(!0),(t=Object.assign(t,e.options)).hls.autoStartLoad=u&&"none"!==u||c;for(var g=r.default.html5media.properties,y=r.default.html5media.events.concat(["click","mouseover","mouseout"]).filter((function(e){return"error"!==e})),E=function(t){var n=(0,s.createEvent)(t.type,e);e.dispatchEvent(n)},b=function(e){var n=""+e.substring(0,1).toUpperCase()+e.substring(1);m["get"+n]=function(){return null!==p?m[e]:null},m["set"+n]=function(n){if(-1===r.default.html5media.readOnlyProperties.indexOf(e))if("src"===e){if(m[e]="object"===(void 0===n?"undefined":o(n))&&n.src?n.src:n,null!==p){p.destroy();for(var i=0,a=y.length;i3e3)l=(new Date).getTime(),p.recoverMediaError();else if(!d||i-d>3e3)d=(new Date).getTime(),console.warn("Attempting to swap Audio Codec and recover from media error"),p.swapAudioCodec(),p.recoverMediaError();else{var r="Cannot recover, last media error recovery failed";e.generateError(r,m.src),console.error(r)}break;case"networkError":if("manifestLoadError"===o.details)if(h0)for(;h0)for(;y0;){var e=c.iframeQueue.pop();c.createIframe(e)}},createIframe:function(e){return new YT.Player(e.containerId,e)},getYouTubeId:function(e){var t="";e.indexOf("?")>0?""===(t=c.getYouTubeIdFromParam(e))&&(t=c.getYouTubeIdFromUrl(e)):t=c.getYouTubeIdFromUrl(e);var n=t.substring(t.lastIndexOf("/")+1);return(t=n.split("?"))[0]},getYouTubeIdFromParam:function(e){if(null==e||!e.trim().length)return null;for(var t=e.split("?")[1].split("&"),n="",o=0,i=t.length;o-1)&&!C.playerVars.playlist&&-1===e.originalNode.src.indexOf("playlist=")&&(C.playerVars.playlist=c.getYouTubeId(e.originalNode.src)),c.enqueueIframe(C),a.onEvent=function(t,n,o){null!=o&&(e.youTubeState=o)},a.setSize=function(e,t){null!==d&&d.setSize(e,t)},a.hide=function(){a.stopInterval(),a.pause(),p&&(p.style.display="none")},a.show=function(){p&&(p.style.display="")},a.destroy=function(){d.destroy()},a.interval=null,a.startInterval=function(){a.interval=setInterval((function(){var t=(0,s.createEvent)("timeupdate",a);e.dispatchEvent(t)}),250)},a.stopInterval=function(){a.interval&&clearInterval(a.interval)},a.getPosterUrl=function(){var n=t.youtube.imageQuality,o=c.getYouTubeId(e.originalNode.src);return n&&["default","hqdefault","mqdefault","sddefault","maxresdefault"].indexOf(n)>-1&&o?"https://img.youtube.com/vi/"+o+"/"+n+".jpg":""},a}};o.default.onYouTubePlayerAPIReady=function(){c.iFrameReady()},l.typeChecks.push((function(e){return/\/\/(www\.youtube|youtu\.?be)/i.test(e)?"video/x-youtube":null})),a.renderer.add(f)},{2:2,26:26,27:27,28:28,3:3,7:7,8:8}],25:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.cancelFullScreen=n.requestFullScreen=n.isFullScreen=n.FULLSCREEN_EVENT_NAME=n.HAS_NATIVE_FULLSCREEN_ENABLED=n.HAS_TRUE_NATIVE_FULLSCREEN=n.HAS_IOS_FULLSCREEN=n.HAS_MS_NATIVE_FULLSCREEN=n.HAS_MOZ_NATIVE_FULLSCREEN=n.HAS_WEBKIT_NATIVE_FULLSCREEN=n.HAS_NATIVE_FULLSCREEN=n.SUPPORTS_NATIVE_HLS=n.SUPPORT_PASSIVE_EVENT=n.SUPPORT_POINTER_EVENTS=n.HAS_MSE=n.IS_STOCK_ANDROID=n.IS_SAFARI=n.IS_FIREFOX=n.IS_CHROME=n.IS_EDGE=n.IS_IE=n.IS_ANDROID=n.IS_IOS=n.IS_IPOD=n.IS_IPHONE=n.IS_IPAD=n.UA=n.NAV=void 0;var o=a(e(3)),i=a(e(2)),r=a(e(7));function a(e){return e&&e.__esModule?e:{default:e}}for(var s=n.NAV=o.default.navigator,l=n.UA=s.userAgent.toLowerCase(),d=n.IS_IPAD=/ipad/i.test(l)&&!o.default.MSStream,u=n.IS_IPHONE=/iphone/i.test(l)&&!o.default.MSStream,c=n.IS_IPOD=/ipod/i.test(l)&&!o.default.MSStream,f=(n.IS_IOS=/ipad|iphone|ipod/i.test(l)&&!o.default.MSStream,n.IS_ANDROID=/android/i.test(l)),p=n.IS_IE=/(trident|microsoft)/i.test(s.appName),m=(n.IS_EDGE="msLaunchUri"in s&&!("documentMode"in i.default)),h=n.IS_CHROME=/chrome/i.test(l),v=n.IS_FIREFOX=/firefox/i.test(l),g=n.IS_SAFARI=/safari/i.test(l)&&!h,y=n.IS_STOCK_ANDROID=/^mozilla\/\d+\.\d+\s\(linux;\su;/i.test(l),E=(n.HAS_MSE="MediaSource"in o.default),b=n.SUPPORT_POINTER_EVENTS=function(){var e=i.default.createElement("x"),t=i.default.documentElement,n=o.default.getComputedStyle;if(!("pointerEvents"in e.style))return!1;e.style.pointerEvents="auto",e.style.pointerEvents="x",t.appendChild(e);var r=n&&"auto"===(n(e,"")||{}).pointerEvents;return e.remove(),!!r}(),S=n.SUPPORT_PASSIVE_EVENT=function(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});o.default.addEventListener("test",null,t)}catch(e){}return e}(),w=["source","track","audio","video"],x=void 0,P=0,T=w.length;P1&&void 0!==arguments[1]?arguments[1]:400,n=arguments[2];e.style.opacity||(e.style.opacity=1);var i=null;o.default.requestAnimationFrame((function r(a){var s=a-(i=i||a),l=parseFloat(1-s/t,2);e.style.opacity=l<0?0:l,s>t?n&&"function"==typeof n&&n():o.default.requestAnimationFrame(r)}))}function g(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:400,n=arguments[2];e.style.opacity||(e.style.opacity=0);var i=null;o.default.requestAnimationFrame((function r(a){var s=a-(i=i||a),l=parseFloat(s/t,2);e.style.opacity=l>1?1:l,s>t?n&&"function"==typeof n&&n():o.default.requestAnimationFrame(r)}))}function y(e,t){var n=[];e=e.parentNode.firstChild;do{t&&!t(e)||n.push(e)}while(e=e.nextSibling);return n}function E(e){return void 0!==e.getClientRects&&"function"===e.getClientRects?!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length):!(!e.offsetWidth&&!e.offsetHeight)}function b(e,t,n,i){var r=o.default.XMLHttpRequest?new XMLHttpRequest:new ActiveXObject("Microsoft.XMLHTTP");r.withCredentials=!0;var a="application/x-www-form-urlencoded; charset=UTF-8",s=!1,l="*/".concat("*");switch(t){case"text":a="text/plain";break;case"json":a="application/json, text/javascript";break;case"html":a="text/html";break;case"xml":a="application/xml, text/xml"}"application/x-www-form-urlencoded"!==a&&(l=a+", */*; q=0.01"),r&&(r.open("GET",e,!0),r.setRequestHeader("Accept",l),r.onreadystatechange=function(){if(!s&&4===r.readyState)if(200===r.status){s=!0;var e=void 0;switch(t){case"json":e=JSON.parse(r.responseText);break;case"xml":e=r.responseXML;break;default:e=r.responseText}n(e)}else"function"==typeof i&&i(r.status)},r.send())}r.default.Utils=r.default.Utils||{},r.default.Utils.offset=l,r.default.Utils.hasClass=f,r.default.Utils.addClass=p,r.default.Utils.removeClass=m,r.default.Utils.toggleClass=h,r.default.Utils.fadeIn=g,r.default.Utils.fadeOut=v,r.default.Utils.siblings=y,r.default.Utils.visible=E,r.default.Utils.ajax=b,r.default.Utils.loadScript=s},{2:2,3:3,7:7}],27:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.escapeHTML=a,n.debounce=s,n.isObjectEmpty=l,n.splitEvents=d,n.createEvent=u,n.isNodeAfter=c,n.isString=f;var o,i=e(7),r=(o=i)&&o.__esModule?o:{default:o};function a(e){if("string"!=typeof e)throw new Error("Argument passed must be a string");var t={"&":"&","<":"<",">":">",'"':"""};return e.replace(/[&<>"]/g,(function(e){return t[e]}))}function s(e,t){var n=this,o=arguments,i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if("function"!=typeof e)throw new Error("First argument must be a function");if("number"!=typeof t)throw new Error("Second argument must be a numeric value");var r=void 0;return function(){var a=n,s=o,l=i&&!r;clearTimeout(r),r=setTimeout((function(){r=null,i||e.apply(a,s)}),t),l&&e.apply(a,s)}}function l(e){return Object.getOwnPropertyNames(e).length<=0}function d(e,t){var n=/^((after|before)print|(before)?unload|hashchange|message|o(ff|n)line|page(hide|show)|popstate|resize|storage)\b/,o={d:[],w:[]};return(e||"").split(" ").forEach((function(e){var i=e+(t?"."+t:"");i.startsWith(".")?(o.d.push(i),o.w.push(i)):o[n.test(e)?"w":"d"].push(i)})),o.d=o.d.join(" "),o.w=o.w.join(" "),o}function u(e,t){if("string"!=typeof e)throw new Error("Event name must be a string");var n=e.match(/([a-z]+\.([a-z]+))/i),o={target:t};return null!==n&&(e=n[1],o.namespace=n[2]),new window.CustomEvent(e,{detail:o})}function c(e,t){return!!(e&&t&&2&e.compareDocumentPosition(t))}function f(e){return"string"==typeof e}r.default.Utils=r.default.Utils||{},r.default.Utils.escapeHTML=a,r.default.Utils.debounce=s,r.default.Utils.isObjectEmpty=l,r.default.Utils.splitEvents=d,r.default.Utils.createEvent=u,r.default.Utils.isNodeAfter=c,r.default.Utils.isString=f},{7:7}],28:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.typeChecks=void 0,n.absolutizeUrl=l,n.formatType=d,n.getMimeFromType=u,n.getTypeFromFile=c,n.getExtension=f,n.normalizeExtension=p;var o,i=e(7),r=(o=i)&&o.__esModule?o:{default:o},a=e(27);var s=n.typeChecks=[];function l(e){if("string"!=typeof e)throw new Error("`url` argument must be a string");var t=document.createElement("div");return t.innerHTML='x',t.firstChild.href}function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return e&&!t?c(e):t}function u(e){if("string"!=typeof e)throw new Error("`type` argument must be a string");return e&&e.indexOf(";")>-1?e.substr(0,e.indexOf(";")):e}function c(e){if("string"!=typeof e)throw new Error("`url` argument must be a string");for(var t=0,n=s.length;t=0&&t.item(n)!==this;);return n>-1}),window.Element&&!Element.prototype.closest&&(Element.prototype.closest=function(e){var t=(this.document||this.ownerDocument).querySelectorAll(e),n=void 0,o=this;do{for(n=t.length;--n>=0&&t.item(n)!==o;);}while(n<0&&(o=o.parentElement));return o}),function(){for(var e=0,t=["ms","moz","webkit","o"],n=0;n0&&void 0!==arguments[0]?arguments[0]:25;return!(e%1==0)}function s(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:25,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"hh:mm:ss";e=!e||"number"!=typeof e||e<0?0:e;var s=Math.round(.066666*o),l=Math.round(o),d=24*Math.round(3600*o),u=Math.round(600*o),c=a(o)?";":":",f=void 0,p=void 0,m=void 0,h=void 0,v=Math.round(e*o);if(a(o)){v<0&&(v=d+v),v%=d;var g=Math.floor(v/u),y=v%u;v+=9*s*g,y>s&&(v+=s*Math.floor((y-s)/Math.round(60*l-s)));var E=Math.floor(v/l);f=Math.floor(Math.floor(E/60)/60),p=Math.floor(E/60)%60,m=n?E%60:Math.floor(v/l%60).toFixed(i)}else f=Math.floor(e/3600)%24,p=Math.floor(e/60)%60,m=n?Math.floor(e%60):Math.floor(e%60).toFixed(i);f=f<=0?0:f,m=60===(m=m<=0?0:m)?0:m,p=60===(p=p<=0?0:p)?0:p;for(var b=r.split(":"),S={},w=0,x=b.length;w0?(f<10&&S.h>1?"0"+f:f)+":":"";return C+=(p<10&&S.m>1?"0"+p:p)+":",C+=""+(m<10&&S.s>1?"0"+m:m),n&&(C+=(h=(h=(v%l).toFixed(0))<=0?0:h)<10&&S.f?c+"0"+h:""+c+h),C}function l(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:25;if("string"!=typeof e)throw new TypeError("Time must be a string");if(e.indexOf(";")>0&&(e=e.replace(";",":")),!/\d{2}(\:\d{2}){0,3}/i.test(e))throw new TypeError("Time code must have the format `00:00:00`");var n=e.split(":"),o=void 0,i=0,r=0,s=0,l=0,d=0,u=Math.round(.066666*t),c=Math.round(t),f=3600*c,p=60*c;switch(n.length){default:case 1:s=parseInt(n[0],10);break;case 2:r=parseInt(n[0],10),s=parseInt(n[1],10);break;case 3:i=parseInt(n[0],10),r=parseInt(n[1],10),s=parseInt(n[2],10);break;case 4:i=parseInt(n[0],10),r=parseInt(n[1],10),s=parseInt(n[2],10),l=parseInt(n[3],10)}return o=a(t)?f*i+p*r+c*s+l-u*((d=60*i+r)-Math.floor(d/10)):(f*i+p*r+t*s+l)/t,parseFloat(o.toFixed(3))}function d(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:25;e=!e||"number"!=typeof e||e<0?0:e;for(var o=Math.floor(e/3600)%24,i=Math.floor(e/60)%60,r=Math.floor(e%60),a=Math.floor((e%1*n).toFixed(3)),s=[[a,"f"],[r,"s"],[i,"m"],[o,"h"]],l=t.timeFormat,d=l[1]===l[0],u=d?2:1,c=l.length0){v=!0;break}if(!v)break;d||(l=f+l),l=s[m][1]+c+l,d&&(l=s[m][1]+l),f=s[m][1]}t.timeFormat=l}function u(e){if("string"!=typeof e)throw new TypeError("Argument must be a string value");for(var t=~(e=e.replace(",",".")).indexOf(".")?e.split(".")[1].length:0,n=0,o=1,i=0,r=(e=e.split(":").reverse()).length;i0&&(o=Math.pow(60,i)),n+=Number(e[i])*o;return Number(n.toFixed(t))}r.default.Utils=r.default.Utils||{},r.default.Utils.secondsToTimeCode=s,r.default.Utils.timeCodeToSeconds=l,r.default.Utils.calculateTimeFormat=d,r.default.Utils.convertSMPTEtoSeconds=u},{7:7}]},{},[29,6,5,15,23,20,19,21,22,24,16,18,17,9,10,11,12,13,14])}).call(this,n("yLpj"),n("URgk").setImmediate)}}]); -//# sourceMappingURL=async_main_357f8768.dc63956c75681b023819.bundle.js.map \ No newline at end of file +//# sourceMappingURL=async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.map \ No newline at end of file diff --git a/ui/dist/async_main_357f8768.dc63956c75681b023819.bundle.js.gz b/ui/dist/async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.gz similarity index 66% rename from ui/dist/async_main_357f8768.dc63956c75681b023819.bundle.js.gz rename to ui/dist/async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.gz index 6a54cb8e70019b9d4ae127e12d3e746c056f8300..d1f46937437a97ca5e031332e5d0865d7b0fa51b 100644 GIT binary patch delta 12389 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 XIUtI;-};iaLNED$n%{LP<#hr8)`B2; delta 12394 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 diff --git a/ui/dist/async_main_357f8768.dc63956c75681b023819.bundle.js.map b/ui/dist/async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.map similarity index 99% rename from ui/dist/async_main_357f8768.dc63956c75681b023819.bundle.js.map rename to ui/dist/async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.map index beab049..0270876 100644 --- a/ui/dist/async_main_357f8768.dc63956c75681b023819.bundle.js.map +++ b/ui/dist/async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///../mediaelement/build/mediaelement-and-player.js"],"names":["e","t","n","r","s","o","u","i","f","Error","code","l","exports","call","length","1","_dereq_","module","2","global","doccy","topLevel","window","minDoc","document","this","self","3","win","4","root","setTimeoutFunc","setTimeout","noop","Promise","fn","TypeError","_state","_handled","_value","undefined","_deferreds","doResolve","handle","deferred","_immediateFn","cb","onFulfilled","onRejected","ret","reject","promise","resolve","push","newValue","then","finale","thisArg","apply","arguments","_unhandledRejectionFn","len","Handler","done","value","reason","ex","prototype","prom","constructor","all","arr","args","Array","slice","remaining","res","val","race","values","setImmediate","err","console","warn","_setImmediateFn","_setUnhandledRejectionFn","5","Object","defineProperty","obj","_typeof","Symbol","iterator","_mejs","_mejs2","__esModule","default","_en","_general","i18n","lang","en","EN","_len","_key","test","isObjectEmpty","message","pluralParam","str","pluralForm","language","_plural","input","number","form","concat","replace","escapeHTML","mejsL10n","strings","6","_window2","_interopRequireDefault","_document2","_media2","_renderer","_constants","MediaElement","idOrNode","options","sources","_this","instance","Constructor","_classCallCheck","isArray","defaults","renderers","fakeNodeName","pluginPath","shimScriptAccess","assign","mediaElement","createElement","id","error","originalNode","getElementById","Math","random","toString","setAttribute","tagName","toLowerCase","indexOf","getAttribute","parentNode","insertBefore","appendChild","processURL","url","type","location","protocol","IS_IOS","html5media","mediaTypes","xhr","XMLHttpRequest","onreadystatechange","readyState","status","blobUrl","URL","webkitURL","createObjectURL","response","open","responseType","send","mediaFiles","nodeName","src","_sources","children","nodeSource","node","formatType","_type","events","promises","renderer","rendererName","changeRenderer","media","keys","name","pause","stop","show","setSrc","hide","newRenderer","newRendererType","rendererArray","order","_i","total","index","renderOptions","create","setSize","width","height","generateError","urlList","event","createEvent","urls","dispatchEvent","props","properties","methods","addProperty","onGet","onSet","oldValue","get","set","assignGettersSetters","propName","capName","substring","toUpperCase","getFn","setFn","getSrc","getTypeFromFile","_src","absolutizeUrl","_type2","_i2","_src2","_type3","_media","renderInfo","select","paused","triggerAction","methodName","catch","tmpResponse","play","assignMethods","_i3","_i4","_total","addEventListener","eventName","callback","removeEventListener","callbacks","_i5","splice","_i6","destroy","cloneNode","wrapper","parentElement","removeAttribute","remove","success","7","_window","mejs","readOnlyProperties","8","_createClass","defineProperties","target","descriptor","enumerable","configurable","writable","key","protoProps","staticProps","Renderer","renderersLength","rendererIndicator","rendererRanking","sort","a","b","j","jl","canPlayType","_order","_renderers","Renderers","9","_i18n2","_player","_player2","Features","newObj","hasOwnProperty","_interopRequireWildcard","_dom","config","usePluginFullScreen","fullscreenText","useFakeFullscreen","isFullScreen","isNativeFullScreen","isInIframe","isPluginClickThroughCreated","fullscreenMode","containerSizeTimeout","buildfullscreen","player","isVideo","parent","detectFullscreenMode","fullscreenTitle","isString","fullscreenBtn","className","classPrefix","innerHTML","addControlElement","HAS_TRUE_NATIVE_FULLSCREEN","IS_FULLSCREEN","exitFullScreen","enterFullScreen","keyActions","action","ctrlKey","exitFullscreenCallback","which","keyCode","enableKeyboard","globalBind","normalHeight","normalWidth","FULLSCREEN_EVENT_NAME","setControlsSize","cleanfullscreen","globalUnbind","isNative","mode","SUPPORT_POINTER_EVENTS","containerStyles","getComputedStyle","getElement","container","IS_SAFARI","HAS_IOS_FULLSCREEN","webkitEnterFullscreen","IS_ANDROID","myVideo","webkitRequestFullscreen","mozRequestFullScreen","addClass","documentElement","parseFloat","requestFullScreen","checkFullscreen","windowWidth","innerWidth","clientWidth","body","screenWidth","screen","abs","style","elements","querySelectorAll","setDimensions","layers","removeClass","zoomFactor","min","captionText","querySelector","fontSize","lineHeight","clearTimeout","cancelFullScreen","_total2","bottom","10","playText","pauseText","buildplaypause","controls","op","playTitle","pauseTitle","playBtn","togglePlayPause","loop","11","_time","enableProgressTooltip","useSmoothHover","forceLive","buildprogress","lastKeyPressTime","mouseIsDown","startedPaused","autoRewindInitial","autoRewind","tooltip","rail","isNaN","duration","showControls","startControlsTimer","timeSlider","focus","newTime","max","currentTime","defaultSeekBackwardInterval","setCurrentTime","defaultSeekForwardInterval","loaded","current","timefloat","timefloatcurrent","slider","hovered","buffer","forcedHandlePause","setTransformStyle","element","transform","webkitTransform","MozTransform","msTransform","OTransform","display","handleMouseMove","totalStyles","offsetStyles","offset","offsetWidth","mozTransform","oTransform","cssMatrix","percentage","leftPos","pos","x","originalEvent","changedTouches","pageX","getDuration","left","getCurrentTime","toFixed","setCurrentRailHandle","updateCurrent","handleLocation","m41","hoverScaleX","half","offsetContainer","Utils","tooltipStyles","hasClass","marginLeft","secondsToTimeCode","alwaysShowHours","showTimecodeFrameCount","framesPerSecond","secondsDecimalLength","timeFormat","restartPlayer","Date","seekForward","seekBackward","seekTime","volume","newVolume","mutePlayer","setVolume","setMuted","Infinity","IS_FIREFOX","floor","preventDefault","stopPropagation","proxy","getOriginalDuration","endEvents","totalEvents","closest","SUPPORT_PASSIVE_EVENT","passive","broadcastCallback","seconds","timeSliderText","time","broadcast","label","innerText","setProgressRail","setCurrentRail","tabIndex","cleanprogress","detail","percent","buffered","end","bytesTotal","bufferedBytes","lengthComputable","fakeTime","setCurrentRailMain","nTime","tW","newWidth","round","handlePos","parseInt","12","timeAndDurationSeparator","buildcurrent","updateTimeCallback","controlsAreVisible","cleancurrent","buildduration","lastChild","updateDurationCallback","updateDuration","cleanduration","timecode","13","startLanguage","tracksText","chaptersText","tracksAriaLive","hideCaptionsButtonWhenEmpty","toggleCaptionsButtonWhenOnlyOne","slidesSelector","hasChapters","buildtracks","findTracks","tracks","trackFiles","attr","tracksTitle","chaptersTitle","domNode","textTracks","cleartracks","captions","firstChild","captionsText","captionsButton","disabled","chaptersButton","subtitleCount","kind","trim","trackToLoad","selectedTrack","isLoadingTrack","_kind","addTrackButton","trackId","srclang","loadNextTrack","inEvents","outEvents","keyboard","setTrack","labels","_total3","_total4","radio","siblings","el","_i7","_total5","_i8","_total6","alwaysShowControls","displayCaptions","slidesContainer","displaySlides","chapters","rebuildtracks","tracktags","track","entries","isLoaded","setByKeyboard","radios","checked","_i9","_total7","_i10","_total8","_i11","_total9","_track","caption","loadTrack","checkForTracks","isDataURI","match","b64DecodeUnicode","decodeURIComponent","atob","split","map","c","charCodeAt","join","readSrc","ajax","parseHLSPlaylist","srcUrl","parentUrl","lastIndexOf","fragments","lines","num","fragment","start","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","next","m","content","return","d","empty","getEntries","found","_loop","TrackFormatParser","webvtt","parse","_index2","nextNum","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","_loop2","_index","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_step3","_iterator3","exec","dfxp","enableTrackButton","setupSlides","drawChapters","removeTrackButton","codes","targetSiblings","button","hasSubtitles","searchTrackPosition","text","captionTextPreprocessor","html","div","scripts","getElementsByTagName","allElements","_i12","attributesObj","attributes","startsWith","sanitize","identifier","slides","imgs","showSlide","_this2","img","fadeIn","image","visible","fadeOut","_visible","_i13","_total10","listItems","_i14","_total11","_i15","_total12","lo","hi","mid","af","sq","ar","be","bg","ca","zh","hr","cs","da","nl","et","fl","fi","fr","gl","de","ht","iw","hu","is","ga","it","ja","ko","lv","lt","mk","ms","mt","no","fa","pl","pt","ro","ru","sr","sk","sl","es","sw","sv","tl","th","tr","uk","vi","cy","yi","pattern","trackText","convertSMPTEtoSeconds","settings","adoptNode","DOMParser","parseFromString","styleNode","styles","_i16","_total13","_temp","_style","14","muteText","unmuteText","allyVolumeControlText","hideVolumeOnTouchDevices","audioVolume","videoVolume","startVolume","buildvolume","volumeControlText","mute","volumeSlider","matches","muted","anchor","nextSibling","mouseIsOver","modified","volumeTotal","volumeCurrent","volumeHandle","positionVolumeHandle","firstElementChild","_button","volumePercentage","volumeStyles","marginBottom","handleVolumeMove","totalOffset","railHeight","pageY","top","railWidth","toggleMute","relatedTarget","rendered","15","16","_mediaelement2","_default2","dom","mepIndex","players","poster","showPosterWhenEnded","showPosterWhenPaused","defaultVideoWidth","defaultVideoHeight","videoWidth","videoHeight","defaultAudioWidth","defaultAudioHeight","audioWidth","audioHeight","enableAutosize","hideVideoControlsOnLoad","hideVideoControlsOnPause","clickToPlayPause","controlsTimeoutDefault","controlsTimeoutMouseEnter","controlsTimeoutMouseLeave","iPadUseNativeControls","iPhoneUseNativeControls","AndroidUseNativeControls","features","useDefaultControls","stretching","pauseOtherPlayers","customError","ended","MepDefaults","MediaElementPlayer","hasFocus","controlsEnabled","controlsTimer","currentMediaTime","JSON","calculateTimeFormat","init","playerOptions","_meReady","_handleError","isDynamic","IS_IPAD","IS_IPHONE","videoPlayerTitle","offscreen","btnSelector","isNodeAfter","background","outerContainer","tagType","capsTagName","initialAspectRatio","setPlayerSize","pluginWidth","pluginHeight","doAnimation","opacity","forceHide","timeout","killControlsTimer","hideControls","autoplayAttr","autoplay","enableControls","created","featurePosition","_setDefaultPlayer","buildposter","buildkeyboard","buildoverlays","defaultControls","filter","item","buildfeatures","clickToPlayPauseCallback","pressed","createIframeLayer","playerIndex","p","ignorePauseOtherPlayersOption","loadingElement","exp","currentTarget","keyboardAction","globalResizeCallback","webkitIsFullScreen","errorContainer","errorContent","imgError","outerHTML","disableControls","setFillMode","setResponsiveMode","hasFluidMode","maxWidth","currentStyle","parentEl","frameElement","parentStyles","nativeWidth","nativeHeight","aspectRatio","ratio","parentHeight","newHeight","parentWidth","innerHeight","clientHeight","layerChildren","isIframe","maxHeight","offsetHeight","targetElement","initHeight","initWidth","scaleX1","scaleY1","scaleX2","scaleY2","bScaleOnWidth","finalWidth","finalHeight","marginTop","totalMargin","marginRight","railStyles","railMargin","siblingsWidth","minWidth","child","layer","posterDiv","posterImg","backgroundImage","doc","ownerDocument","splitEvents","eventList","reduce","part","w","_eventList","_eventList2","feature","posterUrl","setPoster","getPosterUrl","loading","bigPlay","keyPressed","IS_STOCK_ANDROID","hasError","canplayTimeout","evt","initEvent","onkeydown","globalKeydownCallback","activeElement","globalClickCallback","keyAction","load","getVolume","featureIndex","source","_loop3","newTrack","17","DefaultPlayer","_duration","seekable","18","$","jQuery","Zepto","ender","mediaelementplayer","each","data","removeData","ready","19","NativeDash","dashjs","_createPlayer","path","loadScript","MediaPlayer","DashNativeRenderer","prefix","dash","debug","drm","robustnessLevel","HAS_MSE","dashPlayer","attachNativeEvents","reset","setProtectionData","getProtectionController","setRobustnessLevel","attachSource","_dashPlayer","dashEvents","initialize","attachView","setAutoPlay","assignMdashEvents","_event","eventType","on","typeChecks","add","20","PluginDetector","plugins","hasPluginVersion","plugin","v","pv","addPlugin","pluginName","mimeType","activeX","axDetect","detectPlugin","version","description","ax","NAV","mimeTypes","enabledPlugin","ActiveXObject","GetVariable","FlashMediaElementRenderer","flash","isActive","flashState","flashApi","flashApiStack","initEvents","flashReady","stackItem","details","flashWrapper","flashVars","flashHeight","flashWidth","enablePseudoStreaming","pseudoStreamingStartQueryParam","pseudoStreamingType","streamDelimiter","encodeURIComponent","proxyType","IS_IE","IS_EDGE","specialIEContainer","filename","flashNode","fire_setSize","FlashMediaElementVideoRenderer","FlashMediaElementHlsVideoRenderer","FlashMediaElementMdashVideoRenderer","FlashMediaElementAudioRenderer","FlashMediaElementAudioOggRenderer","21","NativeFlv","flvjs","LoggingControl","enableDebug","enableVerbose","createPlayer","configs","FlvNativeRenderer","flv","cors","flvPlayer","_flvOptions","_flvConfigs","attachMediaElement","_flvPlayer","flvEvents","Events","unload","detachMediaElement","assignFlvEvents","msg","flvOptions","flvConfigs","22","NativeHls","Hls","HlsNativeRenderer","hls","autoStartLoad","preload","hlsPlayer","loadSource","attachMedia","_hlsPlayer","hlsEvents","assignEvents","detachMedia","recoverDecodingErrorDate","recoverSwapAudioCodecDate","assignHlsEvents","fatal","now","getTime","recoverMediaError","swapAudioCodec","startLoad","stopLoad","23","HtmlMediaElement","SUPPORTS_NATIVE_HLS","24","YouTubeApi","isIframeStarted","isIframeLoaded","iframeQueue","enqueueIframe","YT","createIframe","loadIframeApi","iFrameReady","pop","Player","containerId","getYouTubeId","youTubeId","getYouTubeIdFromParam","getYouTubeIdFromUrl","parameters","paramParts","parts","getYouTubeNoCookieUrl","YouTubeIframeRenderer","youtube","disablekb","modestbranding","playsinline","rel","showinfo","iv_load_policy","nocookie","imageQuality","apiStack","youTubeApi","youTubeIframe","getPlaybackRate","isMuted","percentLoaded","getVideoLoadedFraction","getVideoUrl","_videoId","loadVideoById","cueVideoById","seekTo","unMute","setPlaybackRate","playVideo","pauseVideo","youtubeContainer","isAudio","videoId","youtubeSettings","host","playerVars","html5","origin","onReady","youTubeState","getIframe","newEvent","onStateChange","stopInterval","startInterval","onError","errorHandler","hasAttribute","playlist","onEvent","_youTubeState","interval","setInterval","clearInterval","quality","onYouTubePlayerAPIReady","25","HAS_NATIVE_FULLSCREEN_ENABLED","HAS_MS_NATIVE_FULLSCREEN","HAS_MOZ_NATIVE_FULLSCREEN","HAS_WEBKIT_NATIVE_FULLSCREEN","HAS_NATIVE_FULLSCREEN","IS_CHROME","IS_IPOD","UA","navigator","userAgent","MSStream","appName","pointerEvents","supports","supportsPassive","opts","html5Elements","video","hasiOSFullScreen","hasNativeFullscreen","requestFullscreen","hasWebkitNativeFullScreen","webkitRequestFullScreen","hasMozNativeFullScreen","hasMsNativeFullScreen","msRequestFullscreen","hasTrueNativeFullScreen","nativeFullScreenEnabled","fullScreenEventName","mozFullScreenEnabled","msFullscreenEnabled","mozFullScreen","msFullscreenElement","webkitCancelFullScreen","mozCancelFullScreen","msExitFullscreen","isiPad","isiPod","isiPhone","isiOS","isAndroid","isIE","isEdge","isChrome","isFirefox","isSafari","isStockAndroid","hasMSE","supportsNativeHLS","supportsPointerEvents","supportsPassiveEvent","26","toggleClass","script","async","onload","onerror","head","rect","getBoundingClientRect","scrollLeft","pageXOffset","scrollTop","pageYOffset","hasClassMethod","addClassMethod","removeClassMethod","classList","contains","RegExp","requestAnimationFrame","animate","timestamp","progress","elem","getClientRects","dataType","withCredentials","completed","accept","setRequestHeader","responseText","responseXML","27","debounce","func","wait","_arguments","immediate","context","callNow","getOwnPropertyNames","rwindow","forEach","eventFrags","namespace","CustomEvent","sourceNode","targetNode","compareDocumentPosition","28","getMimeFromType","getExtension","normalizeExtension","href","substr","normalizedExt","mime","baseName","extension","29","_promisePolyfill2","Element","CharacterData","DocumentType","removeChild","params","bubbles","cancelable","initCustomEvent","Event","to","nextSource","nextKey","String","searchString","position","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","lastTime","vendors","cancelAnimationFrame","currTime","timeToCall","pseudoEl","getPropertyValue","Node","nodes","childNodes","nodeType","30","isDropFrame","timeCodeToSeconds","fps","forceHours","showFrameCount","dropFrames","timeBase","framesPer24Hours","framesPer10Minutes","frameSep","hours","minutes","frames","timeBaseDivision","timeFormatFrags","timeFormatSettings","unique","result","h","output","totalMinutes","hFrames","mFrames","lis","format","firstTwoPlaces","separatorIndex","separator","firstChar","required","hasNextValue","SMPTE","decimalLen","secs","multiplier","reverse","pow","Number"],"mappings":"iFAAA;;;;;;;;;;;;CAUe,SAASA,EAAEC,EAAEC,EAAEC,GAAG,SAASC,EAAEC,EAAEC,GAAG,IAAIJ,EAAEG,GAAG,CAAC,IAAIJ,EAAEI,GAAG,CAAmE,GAAGE,EAAE,OAAOA,EAAEF,GAAE,GAAI,IAAIG,EAAE,IAAIC,MAAM,uBAAuBJ,EAAE,KAAK,MAAMG,EAAEE,KAAK,mBAAmBF,EAAE,IAAIG,EAAET,EAAEG,GAAG,CAACO,QAAQ,IAAIX,EAAEI,GAAG,GAAGQ,KAAKF,EAAEC,SAAQ,SAASZ,GAAG,IAAIE,EAAED,EAAEI,GAAG,GAAGL,GAAG,OAAOI,EAAEF,GAAIF,KAAIW,EAAEA,EAAEC,QAAQZ,EAAEC,EAAEC,EAAEC,GAAG,OAAOD,EAAEG,GAAGO,QAAkD,IAA1C,IAAIL,GAAE,EAA4CF,EAAE,EAAEA,EAAEF,EAAEW,OAAOT,IAAID,EAAED,EAAEE,IAAI,OAAOD,EAAlc,CAAid,CAACW,EAAE,CAAC,SAASC,EAAQC,EAAOL,KAE9e,IAAIM,EAAE,CAAC,SAASF,EAAQC,EAAOL,IACjC,SAAWO,GACX,IAIIC,EAJAC,OAA6B,IAAXF,EAAyBA,EACzB,oBAAXG,OAAyBA,OAAS,GACzCC,EAASP,EAAQ,GAIG,oBAAbQ,SACPJ,EAAQI,UAERJ,EAAQC,EAAS,gCAGbD,EAAQC,EAAS,6BAA+BE,GAIxDN,EAAOL,QAAUQ,IAEdP,KAAKY,UAAuB,IAAXN,EAAyBA,EAAyB,oBAATO,KAAuBA,KAAyB,oBAAXJ,OAAyBA,OAAS,KAClI,CAAC,EAAI,IAAIK,EAAE,CAAC,SAASX,EAAQC,EAAOL,IACtC,SAAWO,GACX,IAAIS,EAGAA,EADkB,oBAAXN,OACDA,YACmB,IAAXH,EACRA,EACiB,oBAATO,KACRA,KAEA,GAGVT,EAAOL,QAAUgB,IAEdf,KAAKY,UAAuB,IAAXN,EAAyBA,EAAyB,oBAATO,KAAuBA,KAAyB,oBAAXJ,OAAyBA,OAAS,KAClI,IAAIO,EAAE,CAAC,SAASb,EAAQC,EAAOL,IACjC,SAAWkB,GAIT,IAAIC,EAAiBC,WAErB,SAASC,KAST,SAASC,EAAQC,GACf,GAAoB,iBAATV,KAAmB,MAAM,IAAIW,UAAU,wCAClD,GAAkB,mBAAPD,EAAmB,MAAM,IAAIC,UAAU,kBAClDX,KAAKY,OAAS,EACdZ,KAAKa,UAAW,EAChBb,KAAKc,YAASC,EACdf,KAAKgB,WAAa,GAElBC,EAAUP,EAAIV,MAGhB,SAASkB,EAAOjB,EAAMkB,GACpB,KAAuB,IAAhBlB,EAAKW,QACVX,EAAOA,EAAKa,OAEM,IAAhBb,EAAKW,QAITX,EAAKY,UAAW,EAChBJ,EAAQW,cAAa,WACnB,IAAIC,EAAqB,IAAhBpB,EAAKW,OAAeO,EAASG,YAAcH,EAASI,WAC7D,GAAW,OAAPF,EAAJ,CAIA,IAAIG,EACJ,IACEA,EAAMH,EAAGpB,EAAKa,QACd,MAAOvC,GAEP,YADAkD,EAAON,EAASO,QAASnD,GAG3BoD,EAAQR,EAASO,QAASF,QAVP,IAAhBvB,EAAKW,OAAee,EAAUF,GAAQN,EAASO,QAASzB,EAAKa,YAPhEb,EAAKe,WAAWY,KAAKT,GAqBzB,SAASQ,EAAQ1B,EAAM4B,GACrB,IAEE,GAAIA,IAAa5B,EAAM,MAAM,IAAIU,UAAU,6CAC3C,GAAIkB,IAAiC,iBAAbA,GAA6C,mBAAbA,GAA0B,CAChF,IAAIC,EAAOD,EAASC,KACpB,GAAID,aAAoBpB,EAItB,OAHAR,EAAKW,OAAS,EACdX,EAAKa,OAASe,OACdE,EAAO9B,GAEF,GAAoB,mBAAT6B,EAEhB,YADAb,GAvDMP,EAuDSoB,EAvDLE,EAuDWH,EAtDpB,WACLnB,EAAGuB,MAAMD,EAASE,aAqDkBjC,GAIpCA,EAAKW,OAAS,EACdX,EAAKa,OAASe,EACdE,EAAO9B,GACP,MAAO1B,GACPkD,EAAOxB,EAAM1B,GA/DjB,IAAcmC,EAAIsB,EAmElB,SAASP,EAAOxB,EAAM4B,GACpB5B,EAAKW,OAAS,EACdX,EAAKa,OAASe,EACdE,EAAO9B,GAGT,SAAS8B,EAAO9B,GACM,IAAhBA,EAAKW,QAA2C,IAA3BX,EAAKe,WAAW3B,QACvCoB,EAAQW,cAAa,WACdnB,EAAKY,UACRJ,EAAQ0B,sBAAsBlC,EAAKa,WAKzC,IAAK,IAAIhC,EAAI,EAAGsD,EAAMnC,EAAKe,WAAW3B,OAAQP,EAAIsD,EAAKtD,IACrDoC,EAAOjB,EAAMA,EAAKe,WAAWlC,IAE/BmB,EAAKe,WAAa,KAGpB,SAASqB,EAAQf,EAAaC,EAAYG,GACxC1B,KAAKsB,YAAqC,mBAAhBA,EAA6BA,EAAc,KACrEtB,KAAKuB,WAAmC,mBAAfA,EAA4BA,EAAa,KAClEvB,KAAK0B,QAAUA,EASjB,SAAST,EAAUP,EAAIT,GACrB,IAAIqC,GAAO,EACX,IACE5B,GAAG,SAAU6B,GACPD,IACJA,GAAO,EACPX,EAAQ1B,EAAMsC,OACb,SAAUC,GACPF,IACJA,GAAO,EACPb,EAAOxB,EAAMuC,OAEf,MAAOC,GACP,GAAIH,EAAM,OACVA,GAAO,EACPb,EAAOxB,EAAMwC,IAIjBhC,EAAQiC,UAAR,MAA6B,SAAUnB,GACrC,OAAOvB,KAAK8B,KAAK,KAAMP,IAGzBd,EAAQiC,UAAUZ,KAAO,SAAUR,EAAaC,GAC9C,IAAIoB,EAAO,IAAK3C,KAAK4C,YAAapC,GAGlC,OADAU,EAAOlB,KAAM,IAAIqC,EAAQf,EAAaC,EAAYoB,IAC3CA,GAGTlC,EAAQoC,IAAM,SAAUC,GACtB,IAAIC,EAAOC,MAAMN,UAAUO,MAAM7D,KAAK0D,GAEtC,OAAO,IAAIrC,GAAQ,SAAUkB,EAASF,GACpC,GAAoB,IAAhBsB,EAAK1D,OAAc,OAAOsC,EAAQ,IACtC,IAAIuB,EAAYH,EAAK1D,OAErB,SAAS8D,EAAIrE,EAAGsE,GACd,IACE,GAAIA,IAAuB,iBAARA,GAAmC,mBAARA,GAAqB,CACjE,IAAItB,EAAOsB,EAAItB,KACf,GAAoB,mBAATA,EAIT,YAHAA,EAAK1C,KAAKgE,GAAK,SAAUA,GACvBD,EAAIrE,EAAGsE,KACN3B,GAIPsB,EAAKjE,GAAKsE,EACU,KAAdF,GACJvB,EAAQoB,GAEV,MAAON,GACPhB,EAAOgB,IAIX,IAAK,IAAI3D,EAAI,EAAGA,EAAIiE,EAAK1D,OAAQP,IAC/BqE,EAAIrE,EAAGiE,EAAKjE,QAKlB2B,EAAQkB,QAAU,SAAUY,GAC1B,OAAIA,GAA0B,iBAAVA,GAAsBA,EAAMK,cAAgBnC,EACvD8B,EAGF,IAAI9B,GAAQ,SAAUkB,GAC3BA,EAAQY,OAIZ9B,EAAQgB,OAAS,SAAUc,GACzB,OAAO,IAAI9B,GAAQ,SAAUkB,EAASF,GACpCA,EAAOc,OAIX9B,EAAQ4C,KAAO,SAAUC,GACvB,OAAO,IAAI7C,GAAQ,SAAUkB,EAASF,GACpC,IAAK,IAAI3C,EAAI,EAAGsD,EAAMkB,EAAOjE,OAAQP,EAAIsD,EAAKtD,IAC5CwE,EAAOxE,GAAGgD,KAAKH,EAASF,OAM9BhB,EAAQW,aAAwC,mBAAjBmC,GAA+B,SAAU7C,GAAM6C,EAAa7C,KACzF,SAAUA,GACRJ,EAAeI,EAAI,IAGvBD,EAAQ0B,sBAAwB,SAA+BqB,GACtC,oBAAZC,SAA2BA,SACpCA,QAAQC,KAAK,wCAAyCF,IAS1D/C,EAAQkD,gBAAkB,SAAyBjD,GACjDD,EAAQW,aAAeV,GAQzBD,EAAQmD,yBAA2B,SAAkClD,GACnED,EAAQ0B,sBAAwBzB,QAGZ,IAAXlB,GAA0BA,EAAOL,QAC1CK,EAAOL,QAAUsB,EACPJ,EAAKI,UACfJ,EAAKI,QAAUA,GArOnB,CAwOGT,OAED,IAAI6D,EAAE,CAAC,SAAStE,EAAQC,EAAOL,GACjC,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAGR,IAUgCyB,EAV5BC,EAA4B,mBAAXC,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUH,GAAO,cAAcA,GAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXE,QAAyBF,EAAIpB,cAAgBsB,QAAUF,IAAQE,OAAOxB,UAAY,gBAAkBsB,GAElQI,EAAQ7E,EAAQ,GAEhB8E,GAM4BL,EANII,IAMiBJ,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAJnFQ,EAAMjF,EAAQ,IAEdkF,EAAWlF,EAAQ,IAIvB,IAAImF,EAAO,CAAEC,KAAM,KAAMC,GAAIJ,EAAIK,GAEjCH,SAAgB,WACf,IAAK,IAAII,EAAO5C,UAAU7C,OAAQ0D,EAAOC,MAAM8B,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC5EhC,EAAKgC,GAAQ7C,UAAU6C,GAGxB,GAAIhC,SAAuCA,EAAK1D,OAAQ,CAEvD,GAAuB,iBAAZ0D,EAAK,GACf,MAAM,IAAIpC,UAAU,wCAGrB,IAAK,iCAAiCqE,KAAKjC,EAAK,IAC/C,MAAM,IAAIpC,UAAU,6GAGrB+D,EAAKC,KAAO5B,EAAK,QAEKhC,IAAlB2D,EAAK3B,EAAK,KACbA,EAAK,GAAiB,OAAZA,EAAK,SAA2BhC,IAAZgC,EAAK,IAAyC,WAArBkB,EAAQlB,EAAK,IAAmBA,EAAK,GAAK,GACjG2B,EAAK3B,EAAK,KAAO,EAAI0B,EAASQ,eAAelC,EAAK,IAAgByB,EAAIK,GAAd9B,EAAK,IACvC,OAAZA,EAAK,SAA2BhC,IAAZgC,EAAK,IAAyC,WAArBkB,EAAQlB,EAAK,MACpE2B,EAAK3B,EAAK,IAAMA,EAAK,IAIvB,OAAO2B,EAAKC,MAGbD,EAAS,SAAUQ,GAClB,IAAIC,EAAcjD,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,KAGtF,GAAuB,iBAAZgD,GAAwBA,EAAQ7F,OAAQ,CAElD,IAAI+F,OAAM,EACNC,OAAa,EAEbC,EAAWZ,EAAKY,WAEhBC,EAAU,SAAiBC,EAAOC,EAAQC,GAE7C,MAAsE,iBAAhD,IAAVF,EAAwB,YAAcvB,EAAQuB,KAA0C,iBAAXC,GAAuC,iBAATC,EAC/GF,EAIA,CAAC,WACP,OAAOtD,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IACnD,WACF,OAA8D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAYA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAAKA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IACjK,WACF,OAA8D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,KAAoE,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAYA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAAKA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC7N,WACF,OAAKA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAO,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAQ,GAC1HA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAClDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,KAAoE,MAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IACvGA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,KAAoE,MAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC9GA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,GAClHA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC3CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,MAAcA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,GAC1LA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAAKA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAO,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAQ,GAC1HA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,KAAOA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,KAAOA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAO,IACjMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9C,CAAC,IAEP,WACF,OAAKA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAO,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAQ,GAC1HA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,KAAOA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,KAAOA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAO,IACjQA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC3CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,KAAO,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,KAAO,EACpHA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC3CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,KAAOA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,KAAOA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAO,IACjQA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAAKA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAQ,EACzDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAQ,EAChEA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAQ,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAQ,EAClIA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC3CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAClDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,EAClHA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,GAClHA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC3CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAClDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAClDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAO,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAO,GAChIA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAO,GAC/DA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC3CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,MAAcA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,GAC1LA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,KAAOA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,GAC/HA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAAKA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAO,EACxDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAO,EAC/DA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA8D,MAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,MAAeA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAO,EAAIA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAAKA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IACnO,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC3CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC1CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,IAAMA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,KAAOA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,IAAM,KAAOA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAM,KAAO,IACjQA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC3CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAClDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,KAAoE,MAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC9GA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA8D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAAYA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAAKA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IACjK,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC3CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAClDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAClDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAEpD,WACF,OAA2D,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAC3CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GACY,KAAtDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,IAClDA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,GAE9CA,UAAU7C,QAAU,OAAI0B,EAAYmB,UAAU,KAKpCwD,GAAMzD,MAAM,KAAM,CAACwD,GAAQE,OAAOH,KAyBvD,YAtBuBzE,IAAnB2D,EAAKY,KACRF,EAAMV,EAAKY,GAAUJ,GACD,OAAhBC,GAA+C,iBAAhBA,IAClCE,EAAaX,EAAKY,GAAU,oBAC5BF,EAAMG,EAAQtD,MAAM,KAAM,CAACmD,EAAKD,EAAaE,OAI1CD,GAAOV,EAAKE,KAChBQ,EAAMV,EAAKE,GAAGM,GACM,OAAhBC,GAA+C,iBAAhBA,IAClCE,EAAaX,EAAKE,GAAG,oBACrBQ,EAAMG,EAAQtD,MAAM,KAAM,CAACmD,EAAKD,EAAaE,MAI/CD,EAAMA,GAAOF,EAEO,OAAhBC,GAA+C,iBAAhBA,IAClCC,EAAMA,EAAIQ,QAAQ,KAAMT,KAGlB,EAAIV,EAASoB,YAAYT,GAGjC,OAAOF,IAGRb,EAAOE,QAAQG,KAAOA,EAEE,oBAAboB,UACVzB,EAAOE,QAAQG,KAAKY,SAASQ,SAASR,SAAUQ,SAASC,SAG1D5G,EAAQoF,QAAUG,GAEhB,CAAC,GAAK,GAAG,GAAK,GAAG,EAAI,IAAIsB,EAAE,CAAC,SAASzG,EAAQC,EAAOL,GACtD,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAGR,IAAI0B,EAA4B,mBAAXC,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUH,GAAO,cAAcA,GAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXE,QAAyBF,EAAIpB,cAAgBsB,QAAUF,IAAQE,OAAOxB,UAAY,gBAAkBsB,GAIlQiC,EAAWC,EAFD3G,EAAQ,IAMlB4G,EAAaD,EAFD3G,EAAQ,IAMpB8E,EAAS6B,EAFD3G,EAAQ,IAIhBkF,EAAWlF,EAAQ,IAEnB6G,EAAU7G,EAAQ,IAElB8G,EAAY9G,EAAQ,GAEpB+G,EAAa/G,EAAQ,IAEzB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAIvF,IAAIuC,EAAe,SAASA,EAAaC,EAAUC,EAASC,GAC3D,IAAIC,EAAQ3G,MAHb,SAAyB4G,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIlG,UAAU,qCAK/GmG,CAAgB9G,KAAMuG,GAEtB,IAAI/H,EAAIwB,KAER0G,EAAU1D,MAAM+D,QAAQL,GAAWA,EAAU,KAE7ClI,EAAEwI,SAAW,CACZC,UAAW,GAEXC,aAAc,sBAEdC,WAAY,SAEZC,iBAAkB,cAGnBX,EAAU3C,OAAOuD,OAAO7I,EAAEwI,SAAUP,GAEpCjI,EAAE8I,aAAenB,EAAW5B,QAAQgD,cAAcd,EAAQS,cAE1D,IAAIM,EAAKhB,EACLiB,GAAQ,EASZ,GAPwB,iBAAbjB,EACVhI,EAAE8I,aAAaI,aAAevB,EAAW5B,QAAQoD,eAAenB,IAEhEhI,EAAE8I,aAAaI,aAAelB,EAC9BgB,EAAKhB,EAASgB,SAGqBzG,IAAhCvC,EAAE8I,aAAaI,cAA8D,OAAhClJ,EAAE8I,aAAaI,aAC/D,OAAO,KAGRlJ,EAAE8I,aAAab,QAAUA,EACzBe,EAAKA,GAAM,QAAUI,KAAKC,SAASC,WAAW7E,MAAM,GAEpDzE,EAAE8I,aAAaI,aAAaK,aAAa,KAAMP,EAAK,cAEpD,IAAIQ,EAAUxJ,EAAE8I,aAAaI,aAAaM,QAAQC,cAC9C,CAAC,QAAS,SAASC,QAAQF,IAAY,IAAMxJ,EAAE8I,aAAaI,aAAaS,aAAa,YACzF3J,EAAE8I,aAAaI,aAAaK,aAAa,UAAW,QAGrDvJ,EAAE8I,aAAaI,aAAaU,WAAWC,aAAa7J,EAAE8I,aAAc9I,EAAE8I,aAAaI,cAEnFlJ,EAAE8I,aAAagB,YAAY9J,EAAE8I,aAAaI,cAE1C,IAAIa,EAAa,SAAoBC,EAAKC,GACzC,GAA2C,WAAvCxC,EAAS1B,QAAQmE,SAASC,UAAkD,IAAzBH,EAAIN,QAAQ,UAAkB5B,EAAWsC,QAAUvE,EAAOE,QAAQsE,WAAWC,WAAWZ,QAAQO,IAAS,EAAG,CAClK,IAAIM,EAAM,IAAIC,eACdD,EAAIE,mBAAqB,WACxB,GAAwB,IAApBjJ,KAAKkJ,YAAoC,MAAhBlJ,KAAKmJ,OAAgB,CACjD,IACIC,GADOnD,EAAS1B,QAAQ8E,KAAOpD,EAAS1B,QAAQ+E,WACjCC,gBAAgBvJ,KAAKwJ,UAExC,OADAhL,EAAE8I,aAAaI,aAAaK,aAAa,MAAOqB,GACzCA,EAER,OAAOZ,GAERO,EAAIU,KAAK,MAAOjB,GAChBO,EAAIW,aAAe,OACnBX,EAAIY,OAGL,OAAOnB,GAGJoB,OAAa,EAEjB,GAAgB,OAAZlD,EACHkD,EAAalD,OACP,GAAoC,OAAhClI,EAAE8I,aAAaI,aAIzB,OAFAkC,EAAa,GAELpL,EAAE8I,aAAaI,aAAamC,SAAS5B,eAC5C,IAAK,SACJ2B,EAAWhI,KAAK,CACf6G,KAAM,GACNqB,IAAKtL,EAAE8I,aAAaI,aAAaS,aAAa,SAE/C,MACD,IAAK,QACL,IAAK,QACJ,IAAI4B,EAAWvL,EAAE8I,aAAaI,aAAasC,SAAS3K,OAChD4K,EAAazL,EAAE8I,aAAaI,aAAaS,aAAa,OAE1D,GAAI8B,EAAY,CACf,IAAIC,EAAO1L,EAAE8I,aAAaI,aACtBe,GAAO,EAAIrC,EAAQ+D,YAAYF,EAAYC,EAAK/B,aAAa,SACjEyB,EAAWhI,KAAK,CACf6G,KAAMA,EACNqB,IAAKvB,EAAW0B,EAAYxB,KAI9B,IAAK,IAAI3J,EAAI,EAAGA,EAAIiL,EAAUjL,IAAK,CAClC,IAAIL,EAAID,EAAE8I,aAAaI,aAAasC,SAASlL,GAC7C,GAAgC,WAA5BL,EAAEuJ,QAAQC,cAA4B,CACzC,IAAI6B,EAAMrL,EAAE0J,aAAa,OACrBiC,GAAQ,EAAIhE,EAAQ+D,YAAYL,EAAKrL,EAAE0J,aAAa,SACxDyB,EAAWhI,KAAK,CAAE6G,KAAM2B,EAAON,IAAKvB,EAAWuB,EAAKM,OAOzD5L,EAAE8I,aAAaE,GAAKA,EACpBhJ,EAAE8I,aAAaL,UAAY,GAC3BzI,EAAE8I,aAAa+C,OAAS,GACxB7L,EAAE8I,aAAagD,SAAW,GAC1B9L,EAAE8I,aAAaiD,SAAW,KAC1B/L,EAAE8I,aAAakD,aAAe,KAE9BhM,EAAE8I,aAAamD,eAAiB,SAAUD,EAAcZ,GAEvD,IAAIpL,EAAImI,EACJ+D,EAAQ5G,OAAO6G,KAAKf,EAAW,IAAIvK,OAAS,EAAIuK,EAAW,GAAKA,EAAW,GAAGE,IAElF,QAAgC/I,IAA5BvC,EAAE8I,aAAaiD,UAAsD,OAA5B/L,EAAE8I,aAAaiD,UAAqB/L,EAAE8I,aAAaiD,SAASK,OAASJ,EAOjH,OANAhM,EAAE8I,aAAaiD,SAASM,QACpBrM,EAAE8I,aAAaiD,SAASO,MAC3BtM,EAAE8I,aAAaiD,SAASO,OAEzBtM,EAAE8I,aAAaiD,SAASQ,OACxBvM,EAAE8I,aAAaiD,SAASS,OAAON,IACxB,OAGwB3J,IAA5BvC,EAAE8I,aAAaiD,UAAsD,OAA5B/L,EAAE8I,aAAaiD,WAC3D/L,EAAE8I,aAAaiD,SAASM,QACpBrM,EAAE8I,aAAaiD,SAASO,MAC3BtM,EAAE8I,aAAaiD,SAASO,OAEzBtM,EAAE8I,aAAaiD,SAASU,QAGzB,IAAIC,EAAc1M,EAAE8I,aAAaL,UAAUuD,GACvCW,EAAkB,KAEtB,GAAID,QAKH,OAJAA,EAAYH,OACZG,EAAYF,OAAON,GACnBlM,EAAE8I,aAAaiD,SAAWW,EAC1B1M,EAAE8I,aAAakD,aAAeA,GACvB,EAKR,IAFA,IAAIY,EAAgB5M,EAAE8I,aAAab,QAAQQ,UAAU5H,OAASb,EAAE8I,aAAab,QAAQQ,UAAYZ,EAAUkE,SAASc,MAE3GC,EAAK,EAAGC,EAAQH,EAAc/L,OAAQiM,EAAKC,EAAOD,IAAM,CAChE,IAAIE,EAAQJ,EAAcE,GAE1B,GAAIE,IAAUhB,EAAc,CAE3BW,EADmB9E,EAAUkE,SAAStD,UACPuE,GAE/B,IAAIC,EAAgB3H,OAAOuD,OAAO8D,EAAgB1E,QAASjI,EAAE8I,aAAab,SAQ1E,OAPAyE,EAAcC,EAAgBO,OAAOlN,EAAE8I,aAAcmE,EAAe7B,IACxDgB,KAAOJ,EAEnBhM,EAAE8I,aAAaL,UAAUkE,EAAgBP,MAAQM,EACjD1M,EAAE8I,aAAaiD,SAAWW,EAC1B1M,EAAE8I,aAAakD,aAAeA,EAC9BU,EAAYH,QACL,GAIT,OAAO,GAGRvM,EAAE8I,aAAaqE,QAAU,SAAUC,EAAOC,QACT9K,IAA5BvC,EAAE8I,aAAaiD,UAAsD,OAA5B/L,EAAE8I,aAAaiD,UAC3D/L,EAAE8I,aAAaiD,SAASoB,QAAQC,EAAOC,IAIzCrN,EAAE8I,aAAawE,cAAgB,SAAU5G,EAAS6G,GACjD7G,EAAUA,GAAW,GACrB6G,EAAU/I,MAAM+D,QAAQgF,GAAWA,EAAU,GAC7C,IAAIC,GAAQ,EAAIvH,EAASwH,aAAa,QAASzN,EAAE8I,cACjD0E,EAAM9G,QAAUA,EAChB8G,EAAME,KAAOH,EACbvN,EAAE8I,aAAa6E,cAAcH,GAC7BvE,GAAQ,GAGT,IAAI2E,EAAQ/H,EAAOE,QAAQsE,WAAWwD,WAClCC,EAAUjI,EAAOE,QAAQsE,WAAWyD,QACpCC,EAAc,SAAqBvI,EAAK4G,EAAM4B,EAAOC,GACxD,IAAIC,EAAW1I,EAAI4G,GASnB9G,OAAOC,eAAeC,EAAK4G,EAAM,CAChC+B,IATW,WACX,OAAOH,EAAMvK,MAAM+B,EAAK,CAAC0I,KASzBE,IAPW,SAAe/K,GAE1B,OADA6K,EAAWD,EAAMxK,MAAM+B,EAAK,CAACnC,QAS3BgL,EAAuB,SAA8BC,GACxD,GAAiB,QAAbA,EAAoB,CAEvB,IAAIC,EAAU,GAAKD,EAASE,UAAU,EAAG,GAAGC,cAAgBH,EAASE,UAAU,GAC3EE,EAAQ,WACX,YAAmCnM,IAA5BvC,EAAE8I,aAAaiD,UAAsD,OAA5B/L,EAAE8I,aAAaiD,UAAyE,mBAA7C/L,EAAE8I,aAAaiD,SAAS,MAAQwC,GAA0BvO,EAAE8I,aAAaiD,SAAS,MAAQwC,KAAa,MAE/LI,EAAQ,SAAe5K,QACMxB,IAA5BvC,EAAE8I,aAAaiD,UAAsD,OAA5B/L,EAAE8I,aAAaiD,UAAyE,mBAA7C/L,EAAE8I,aAAaiD,SAAS,MAAQwC,IACvHvO,EAAE8I,aAAaiD,SAAS,MAAQwC,GAASxK,IAI3CgK,EAAY/N,EAAE8I,aAAcwF,EAAUI,EAAOC,GAC7C3O,EAAE8I,aAAa,MAAQyF,GAAWG,EAClC1O,EAAE8I,aAAa,MAAQyF,GAAWI,IAGhCC,EAAS,WACZ,YAAmCrM,IAA5BvC,EAAE8I,aAAaiD,UAAsD,OAA5B/L,EAAE8I,aAAaiD,SAAoB/L,EAAE8I,aAAaiD,SAAS6C,SAAW,MAEnHpC,EAAS,SAAgBzI,GAC5B,IAAIqH,EAAa,GAEjB,GAAqB,iBAAVrH,EACVqH,EAAWhI,KAAK,CACfkI,IAAKvH,EACLkG,KAAMlG,GAAQ,EAAI6D,EAAQiH,iBAAiB9K,GAAS,UAE/C,GAAsE,iBAAhD,IAAVA,EAAwB,YAAc0B,EAAQ1B,UAAsCxB,IAAdwB,EAAMuH,IAAmB,CACjH,IAAIwD,GAAO,EAAIlH,EAAQmH,eAAehL,EAAMuH,KACxC0D,EAASjL,EAAMkG,KACfiC,EAAQ5G,OAAOuD,OAAO9E,EAAO,CAChCuH,IAAKwD,EACL7E,KAAkB,KAAX+E,GAAD,MAAkBA,IAA4CF,EAA4CE,GAArC,EAAIpH,EAAQiH,iBAAiBC,KAEzG1D,EAAWhI,KAAK8I,QACV,GAAI1H,MAAM+D,QAAQxE,GACxB,IAAK,IAAIkL,EAAM,EAAGlC,EAAQhJ,EAAMlD,OAAQoO,EAAMlC,EAAOkC,IAAO,CAE3D,IAAIC,GAAQ,EAAItH,EAAQmH,eAAehL,EAAMkL,GAAK3D,KAC9C6D,EAASpL,EAAMkL,GAAKhF,KACpBmF,EAAS9J,OAAOuD,OAAO9E,EAAMkL,GAAM,CACtC3D,IAAK4D,EACLjF,KAAkB,KAAXkF,GAAD,MAAkBA,IAA4CD,EAA8CC,GAAtC,EAAIvH,EAAQiH,iBAAiBK,KAG1G9D,EAAWhI,KAAKgM,GAIlB,IAAIC,EAAaxH,EAAUkE,SAASuD,OAAOlE,EAAYpL,EAAE8I,aAAab,QAAQQ,UAAU5H,OAASb,EAAE8I,aAAab,QAAQQ,UAAY,IAChI+E,OAAQ,EASZ,GAPKxN,EAAE8I,aAAayG,QAAkC,MAAtBvP,EAAE8I,aAAawC,KAAsC,KAAvBtL,EAAE8I,aAAawC,MAC5EtL,EAAE8I,aAAauD,QACfmB,GAAQ,EAAIvH,EAASwH,aAAa,QAASzN,EAAE8I,cAC7C9I,EAAE8I,aAAa6E,cAAcH,IAE9BxN,EAAE8I,aAAaI,aAAaoC,IAAMF,EAAW,GAAGE,KAAO,GAEpC,OAAf+D,IAAuBjE,EAAW,GAAGE,IAMzC,QADkD,MAArBF,EAAW,GAAGE,KAAqC,KAAtBF,EAAW,GAAGE,KAC1CtL,EAAE8I,aAAamD,eAAeoD,EAAWrD,aAAcZ,GAAc,KALlGpL,EAAE8I,aAAawE,cAAc,oBAAqBlC,IAOhDoE,EAAgB,SAAuBC,EAAYlL,GACtD,IACC,GAAmB,SAAfkL,GAA0D,gBAAhCzP,EAAE8I,aAAakD,cAAkE,eAAhChM,EAAE8I,aAAakD,cAAiE,iBAAhChM,EAAE8I,aAAakD,aAoB7I,OAAOhM,EAAE8I,aAAaiD,SAAS0D,GAAYlL,GAnB3C,IAAIyG,EAAWhL,EAAE8I,aAAaiD,SAAS0D,GAAYlL,GAiBnD,OAhBIyG,GAAqC,mBAAlBA,EAAS1H,MAC/B0H,EAAS0E,OAAM,WACV1P,EAAE8I,aAAayG,QAClBxN,YAAW,WACV,IAAI4N,EAAc3P,EAAE8I,aAAaiD,SAAS6D,YACtBrN,IAAhBoN,GACHA,EAAYD,OAAM,WACZ1P,EAAE8I,aAAaiD,SAASwD,QAC5BvP,EAAE8I,aAAaiD,SAASM,aAIzB,QAICrB,EAIP,MAAOjL,GAER,MADAC,EAAE8I,aAAawE,cAAcvN,EAAGqL,GAC1BrL,IAGJ8P,EAAgB,SAAuBJ,GAC1CzP,EAAE8I,aAAa2G,GAAc,WAC5B,IAAK,IAAInJ,EAAO5C,UAAU7C,OAAQ0D,EAAOC,MAAM8B,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC5EhC,EAAKgC,GAAQ7C,UAAU6C,GAGxB,YAAgChE,IAA5BvC,EAAE8I,aAAaiD,UAAsD,OAA5B/L,EAAE8I,aAAaiD,UAAoE,mBAAxC/L,EAAE8I,aAAaiD,SAAS0D,GAC3GzP,EAAE8I,aAAagD,SAASjL,OACpBoB,QAAQoC,IAAIrE,EAAE8I,aAAagD,UAAUxI,MAAK,WAChD,OAAOkM,EAAcC,EAAYlL,MAC/BmL,OAAM,SAAU3P,GAElB,OADAC,EAAE8I,aAAawE,cAAcvN,EAAGqL,GACzBnJ,QAAQgB,OAAOlD,MAGhByP,EAAcC,EAAYlL,GAG5B,OAITwJ,EAAY/N,EAAE8I,aAAc,MAAO8F,EAAQpC,GAC3CxM,EAAE8I,aAAa8F,OAASA,EACxB5O,EAAE8I,aAAa0D,OAASA,EAExB,IAAK,IAAIsD,EAAM,EAAG/C,EAAQa,EAAM/M,OAAQiP,EAAM/C,EAAO+C,IACpDzB,EAAqBT,EAAMkC,IAG5B,IAAK,IAAIC,EAAM,EAAGC,EAASlC,EAAQjN,OAAQkP,EAAMC,EAAQD,IACxDF,EAAc/B,EAAQiC,IA4EvB,OAzEA/P,EAAE8I,aAAamH,iBAAmB,SAAUC,EAAWC,GACtDnQ,EAAE8I,aAAa+C,OAAOqE,GAAalQ,EAAE8I,aAAa+C,OAAOqE,IAAc,GAEvElQ,EAAE8I,aAAa+C,OAAOqE,GAAW9M,KAAK+M,IAEvCnQ,EAAE8I,aAAasH,oBAAsB,SAAUF,EAAWC,GACzD,IAAKD,EAEJ,OADAlQ,EAAE8I,aAAa+C,OAAS,IACjB,EAGR,IAAIwE,EAAYrQ,EAAE8I,aAAa+C,OAAOqE,GAEtC,IAAKG,EACJ,OAAO,EAGR,IAAKF,EAEJ,OADAnQ,EAAE8I,aAAa+C,OAAOqE,GAAa,IAC5B,EAGR,IAAK,IAAII,EAAM,EAAGA,EAAMD,EAAUxP,OAAQyP,IACzC,GAAID,EAAUC,KAASH,EAEtB,OADAnQ,EAAE8I,aAAa+C,OAAOqE,GAAWK,OAAOD,EAAK,IACtC,EAGT,OAAO,GAGRtQ,EAAE8I,aAAa6E,cAAgB,SAAUH,GACxC,IAAI6C,EAAYrQ,EAAE8I,aAAa+C,OAAO2B,EAAMvD,MAC5C,GAAIoG,EACH,IAAK,IAAIG,EAAM,EAAGA,EAAMH,EAAUxP,OAAQ2P,IACzCH,EAAUG,GAAK/M,MAAM,KAAM,CAAC+J,KAK/BxN,EAAE8I,aAAa2H,QAAU,WACxB,IAAI3H,EAAe9I,EAAE8I,aAAaI,aAAawH,WAAU,GACrDC,EAAU3Q,EAAE8I,aAAa8H,cAC7B9H,EAAa+H,gBAAgB,MAC7B/H,EAAagI,SACb9Q,EAAE8I,aAAagI,SACfH,EAAQ7G,YAAYhB,IAGjBsC,EAAWvK,SACdb,EAAE8I,aAAawC,IAAMF,GAGlBpL,EAAE8I,aAAagD,SAASjL,OAC3BoB,QAAQoC,IAAIrE,EAAE8I,aAAagD,UAAUxI,MAAK,WACrCtD,EAAE8I,aAAab,QAAQ8I,SAC1B/Q,EAAE8I,aAAab,QAAQ8I,QAAQ/Q,EAAE8I,aAAc9I,EAAE8I,aAAaI,iBAE7DwG,OAAM,WACJzG,GAASjJ,EAAE8I,aAAab,QAAQgB,OACnCjJ,EAAE8I,aAAab,QAAQgB,MAAMjJ,EAAE8I,aAAc9I,EAAE8I,aAAaI,kBAI1DlJ,EAAE8I,aAAab,QAAQ8I,SAC1B/Q,EAAE8I,aAAab,QAAQ8I,QAAQ/Q,EAAE8I,aAAc9I,EAAE8I,aAAaI,cAG3DD,GAASjJ,EAAE8I,aAAab,QAAQgB,OACnCjJ,EAAE8I,aAAab,QAAQgB,MAAMjJ,EAAE8I,aAAc9I,EAAE8I,aAAaI,eAIvDlJ,EAAE8I,cAGVrB,EAAS1B,QAAQgC,aAAeA,EAChClC,EAAOE,QAAQgC,aAAeA,EAE9BpH,EAAQoF,QAAUgC,GAEhB,CAAC,EAAI,EAAE,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,EAAE,EAAI,EAAE,EAAI,IAAIiJ,EAAE,CAAC,SAASjQ,EAAQC,EAAOL,GAChF,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAGR,IAIgCyB,EAJ5ByL,EAAUlQ,EAAQ,GAMtB,IAAImQ,EAAO,CAEXA,QAAe,SAEfA,WAAkB,CACjBrD,WAAY,CAAC,SAAU,MAAO,cAAe,QAAS,WAAY,SAAU,QAAS,WAAY,QAAS,eAAgB,aAAc,UAAW,WAAY,aAAc,UAAW,gBAAiB,eAAgB,cAAe,kBAAmB,sBAAuB,eAAgB,SAAU,WAAY,OAAQ,YAChUsD,mBAAoB,CAAC,WAAY,SAAU,QAAS,WAAY,QAAS,eAAgB,aAAc,UAAW,YAElHrD,QAAS,CAAC,OAAQ,OAAQ,QAAS,eAEnCjC,OAAQ,CAAC,YAAa,iBAAkB,iBAAkB,aAAc,WAAY,UAAW,iBAAkB,UAAW,QAAS,QAAS,UAAW,UAAW,OAAQ,UAAW,QAAS,UAAW,UAAW,SAAU,aAAc,QAAS,aAAc,gBAErQvB,WAAY,CAAC,YAAa,YAAa,YAAa,YAAa,cAAe,aAAc,iBAAkB,aAAc,YAAa,YAAa,aAAc,YAAa,iBAdpJ9E,EAFMyL,IAEezL,EAAIM,WAAaN,EAAM,CAAEO,QAASP,IAiB9EO,QAAQmL,KAAOA,EAExBvQ,EAAQoF,QAAUmL,GAEhB,CAAC,EAAI,IAAIE,EAAE,CAAC,SAASrQ,EAAQC,EAAOL,GACtC,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAERpD,EAAQoL,cAAWxJ,EAEnB,IAQgCiD,EAR5BC,EAA4B,mBAAXC,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUH,GAAO,cAAcA,GAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXE,QAAyBF,EAAIpB,cAAgBsB,QAAUF,IAAQE,OAAOxB,UAAY,gBAAkBsB,GAElQ6L,EAAe,WAAc,SAASC,EAAiBC,EAAQ3D,GAAS,IAAK,IAAItN,EAAI,EAAGA,EAAIsN,EAAM/M,OAAQP,IAAK,CAAE,IAAIkR,EAAa5D,EAAMtN,GAAIkR,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMrM,OAAOC,eAAegM,EAAQC,EAAWI,IAAKJ,IAAiB,OAAO,SAAUnJ,EAAawJ,EAAYC,GAAiJ,OAA9HD,GAAYP,EAAiBjJ,EAAYnE,UAAW2N,GAAiBC,GAAaR,EAAiBjJ,EAAayJ,GAAqBzJ,GAA7gB,GAEfzC,EAAQ7E,EAAQ,GAEhB8E,GAE4BL,EAFII,IAEiBJ,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAIvF,IAAIuM,EAAW,WACd,SAASA,KAHV,SAAyB3J,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIlG,UAAU,qCAI9GmG,CAAgB9G,KAAMuQ,GAEtBvQ,KAAKiH,UAAY,GACjBjH,KAAKqL,MAAQ,GAkFd,OA/EAwE,EAAaU,EAAU,CAAC,CACvBH,IAAK,MACL7N,MAAO,SAAagI,GACnB,QAAsBxJ,IAAlBwJ,EAASK,KACZ,MAAM,IAAIjK,UAAU,kDAGrBX,KAAKiH,UAAUsD,EAASK,MAAQL,EAChCvK,KAAKqL,MAAMzJ,KAAK2I,EAASK,QAExB,CACFwF,IAAK,SACL7N,MAAO,SAAgBqH,GACtB,IAAI3C,EAAY/E,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,GAEhFsO,EAAkBvJ,EAAU5H,OAIhC,GAFA4H,EAAYA,EAAU5H,OAAS4H,EAAYjH,KAAKqL,OAE3CmF,EAAiB,CACrB,IAAIC,EAAoB,CAAC,mBAAoB,UAAW,YACpDC,EAAkB,SAAyBnG,GAC9C,IAAK,IAAIzL,EAAI,EAAGyM,EAAQkF,EAAkBpR,OAAQP,EAAIyM,EAAOzM,IAC5D,GAAI2R,EAAkB3R,GAAGkG,KAAKuF,GAC7B,OAAOzL,EAGT,OAAO2R,EAAkBpR,QAG1B4H,EAAU0J,MAAK,SAAUC,EAAGC,GAC3B,OAAOH,EAAgBE,GAAKF,EAAgBG,MAI9C,IAAK,IAAI/R,EAAI,EAAGyM,EAAQtE,EAAU5H,OAAQP,EAAIyM,EAAOzM,IAAK,CACzD,IAAIsR,EAAMnJ,EAAUnI,GAChBuH,EAAYrG,KAAKiH,UAAUmJ,GAE/B,GAAI/J,QACH,IAAK,IAAIyK,EAAI,EAAGC,EAAKnH,EAAWvK,OAAQyR,EAAIC,EAAID,IAC/C,GAAqC,mBAA1BzK,EAAU2K,aAA4D,iBAAvBpH,EAAWkH,GAAGrI,MAAqBpC,EAAU2K,YAAYpH,EAAWkH,GAAGrI,MAChI,MAAO,CACN+B,aAAcnE,EAAUuE,KACxBd,IAAKF,EAAWkH,GAAGhH,KAOxB,OAAO,OAEN,CACFsG,IAAK,QACLxD,IAAK,SAAavB,GACjB,IAAKrI,MAAM+D,QAAQsE,GAClB,MAAM,IAAI1K,UAAU,sCAGrBX,KAAKiR,OAAS5F,GAEfsB,IAAK,WACJ,OAAO3M,KAAKiR,SAEX,CACFb,IAAK,YACLxD,IAAK,SAAa3F,GACjB,GAAkB,OAAdA,GAAgG,iBAApD,IAAdA,EAA4B,YAAchD,EAAQgD,IACnF,MAAM,IAAItG,UAAU,0CAGrBX,KAAKkR,WAAajK,GAEnB0F,IAAK,WACJ,OAAO3M,KAAKkR,eAIPX,EAvFO,GA0FXhG,EAAWpL,EAAQoL,SAAW,IAAIgG,EAEtClM,EAAOE,QAAQ4M,UAAY5G,GAEzB,CAAC,EAAI,IAAI6G,EAAE,CAAC,SAAS7R,EAAQC,EAAOL,GACtC,aAEA,IAEI8G,EAAWC,EAFD3G,EAAQ,IAMlB4G,EAAaD,EAFD3G,EAAQ,IAMpB8R,EAASnL,EAFD3G,EAAQ,IAIhB+R,EAAU/R,EAAQ,IAElBgS,EAAWrL,EAAuBoL,GAIlCE,EAQJ,SAAiCxN,GAAO,GAAIA,GAAOA,EAAIM,WAAc,OAAON,EAAc,IAAIyN,EAAS,GAAI,GAAW,MAAPzN,EAAe,IAAK,IAAIoM,KAAOpM,EAAWF,OAAOpB,UAAUgP,eAAetS,KAAK4E,EAAKoM,KAAMqB,EAAOrB,GAAOpM,EAAIoM,IAAgC,OAAtBqB,EAAOlN,QAAUP,EAAYyN,EARnPE,CAFEpS,EAAQ,KAIrBkF,EAAWlF,EAAQ,IAEnBqS,EAAOrS,EAAQ,IAEfqO,EAASrO,EAAQ,IAIrB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvFF,OAAOuD,OAAOiK,EAAQO,OAAQ,CAC7BC,qBAAqB,EAErBC,eAAgB,KAEhBC,mBAAmB,IAGpBlO,OAAOuD,OAAOkK,EAAShN,QAAQ7B,UAAW,CACzCuP,cAAc,EAEdC,oBAAoB,EAEpBC,YAAY,EAEZC,6BAA6B,EAE7BC,eAAgB,GAEhBC,qBAAsB,KAEtBC,gBAAiB,SAAyBC,GACzC,GAAKA,EAAOC,QAAZ,CAIAD,EAAOL,WAAalM,EAAS1B,QAAQmE,WAAazC,EAAS1B,QAAQmO,OAAOhK,SAE1E8J,EAAOG,uBAEP,IAAInU,EAAIwB,KACJ4S,GAAkB,EAAInO,EAASoO,UAAUrU,EAAEiI,QAAQsL,gBAAkBvT,EAAEiI,QAAQsL,eAAiBV,EAAO9M,QAAQ/F,EAAE,mBACjHsU,EAAgB3M,EAAW5B,QAAQgD,cAAc,OA6CrD,GA3CAuL,EAAcC,UAAYvU,EAAEiI,QAAQuM,YAAc,UAAYxU,EAAEiI,QAAQuM,YAAc,oBACtFF,EAAcG,UAAY,wCAA0CzU,EAAEgJ,GAAK,YAAcoL,EAAkB,iBAAmBA,EAAkB,2BAChJpU,EAAE0U,kBAAkBJ,EAAe,cAEnCA,EAAcrE,iBAAiB,SAAS,WACpB+C,EAAS2B,4BAA8B3B,EAAS4B,eAAiBZ,EAAOP,aAG1FO,EAAOa,iBAEPb,EAAOc,qBAITd,EAAOM,cAAgBA,EAEvBtU,EAAEiI,QAAQ8M,WAAW3R,KAAK,CACzB+I,KAAM,CAAC,IACP6I,OAAQ,SAAgBhB,EAAQ9H,EAAO0F,EAAKpE,GACtCA,EAAMyH,cAC4B,IAA3BjB,EAAOc,kBACbd,EAAOP,aACVO,EAAOa,iBAEPb,EAAOc,sBAOZ9U,EAAEkV,uBAAyB,SAAUnV,GACpC,IAAI6R,EAAM7R,EAAEoV,OAASpV,EAAEqV,SAAW,EAC9BpV,EAAEiI,QAAQoN,gBAA0B,KAARzD,IAAeoB,EAAS2B,4BAA8B3B,EAAS4B,eAAiB5U,EAAEyT,eACjHO,EAAOa,kBAIT7U,EAAEsV,WAAW,UAAWtV,EAAEkV,wBAE1BlV,EAAEuV,aAAe,EACjBvV,EAAEwV,YAAc,EAEZxC,EAAS2B,2BAA4B,CAexCX,EAAOsB,WAAWtC,EAASyC,uBAdH,WACnBzB,EAAOP,eACNT,EAASS,gBACZO,EAAON,oBAAqB,EAE5BM,EAAO0B,oBAEP1B,EAAON,oBAAqB,EAE5BM,EAAOa,yBAQZc,gBAAiB,SAAyB3B,GACzCA,EAAOa,iBACPb,EAAO4B,aAAa,UAAW5B,EAAOkB,yBAEvCf,qBAAsB,WACrB,IAAInU,EAAIwB,KACJqU,EAAoC,OAAzB7V,EAAEkM,MAAMF,cAAyB,kBAAkBxF,KAAKxG,EAAEkM,MAAMF,cAE3E8J,EAAO,GAWX,OATI9C,EAAS2B,4BAA8BkB,EAC1CC,EAAO,gBACG9C,EAAS2B,6BAA+BkB,EAClDC,EAAO,gBACG9V,EAAEsT,qBAAuBN,EAAS+C,yBAC5CD,EAAO,gBAGR9V,EAAE6T,eAAiBiC,EACZA,GAERhB,gBAAiB,WAChB,IAAI9U,EAAIwB,KACJqU,EAAoC,OAAzB7V,EAAEkM,MAAMF,cAAyB,kBAAkBxF,KAAKxG,EAAEkM,MAAMF,cAC3EgK,EAAkBC,iBAAiBjW,EAAEkW,WAAWlW,EAAEmW,YAEtD,GAAKnW,EAAEiU,QAMP,GAFAjU,EAAEkW,WAAWlW,EAAEmW,WAAWxI,eAAc,EAAI1H,EAASwH,aAAa,qBAAsBzN,EAAEkW,WAAWlW,EAAEmW,cAEnE,IAAhCnW,EAAEiI,QAAQuL,oBAAgCR,EAAS5I,QAAU4I,EAASoD,YAAcpD,EAASqD,oBAA4E,mBAA/CrW,EAAEkM,MAAMhD,aAAaoN,uBAAwCtW,EAAEkM,MAAMhD,aAAasJ,aAAY,EAAIpD,EAAOP,iBAAiB7O,EAAEkM,MAAM0C,WAC/P5O,EAAEkM,MAAMhD,aAAaoN,4BADtB,CAKA,GAAItD,EAASuD,WAAY,CACxB,IAAIC,EAAUxW,EAAEkM,MAAMhD,aACtB,QAA4C,IAAjCsN,EAAQF,sBAElB,YADAE,EAAQF,wBAEF,QAA8C,IAAnCE,EAAQC,wBAEzB,YADAD,EAAQC,0BAEF,QAA2C,IAAhCD,EAAQE,qBAEzB,YADAF,EAAQE,uBA2CV,IAtCA,EAAItD,EAAKuD,UAAUhP,EAAW5B,QAAQ6Q,gBAAiB5W,EAAEiI,QAAQuM,YAAc,eAC/E,EAAIpB,EAAKuD,UAAU3W,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,wBAEtExU,EAAEuV,aAAesB,WAAWb,EAAgB3I,QAC5CrN,EAAEwV,YAAcqB,WAAWb,EAAgB5I,OAElB,kBAArBpN,EAAE6T,gBAA2D,kBAArB7T,EAAE6T,iBAC7Cb,EAAS8D,kBAAkB9W,EAAEkW,WAAWlW,EAAEmW,YAEtCnW,EAAE2T,YACL5R,YAAW,SAASgV,IAEnB,GAAI/W,EAAE0T,mBAAoB,CACzB,IACIsD,EAAcvP,EAAS1B,QAAQkR,YAActP,EAAW5B,QAAQ6Q,gBAAgBM,aAAevP,EAAW5B,QAAQoR,KAAKD,YACvHE,EAAcC,OAAOjK,MACXhE,KAAKkO,IAAIF,EAAcJ,GAHZ,KAIPI,EAGjBpX,EAAE6U,iBAEF9S,WAAWgV,EAAiB,QAG5B,MAIL/W,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMnK,MAAQ,OACxCpN,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMlK,OAAS,OAEzCrN,EAAE8T,qBAAuB/R,YAAW,WACnC/B,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMnK,MAAQ,OACxCpN,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMlK,OAAS,OACzCrN,EAAE0V,oBACA,KAECG,EACH7V,EAAE0L,KAAK6L,MAAMnK,MAAQ,OACrBpN,EAAE0L,KAAK6L,MAAMlK,OAAS,YAItB,IAFA,IAAImK,EAAWxX,EAAEkW,WAAWlW,EAAEmW,WAAWsB,iBAAiB,wBACtDzH,EAASwH,EAAS3W,OACbP,EAAI,EAAGA,EAAI0P,EAAQ1P,IAC3BkX,EAASlX,GAAGiX,MAAMnK,MAAQ,OAC1BoK,EAASlX,GAAGiX,MAAMlK,OAAS,OAIzBrN,EAAEiI,QAAQyP,eAA4C,mBAApB1X,EAAEkM,MAAMiB,SAC7CnN,EAAEkM,MAAMiB,QAAQkK,OAAOjK,MAAOiK,OAAOhK,QAKtC,IAFA,IAAIsK,EAAS3X,EAAEkW,WAAWlW,EAAE2X,QAAQnM,SAChCuB,EAAQ4K,EAAO9W,OACViM,EAAK,EAAGA,EAAKC,EAAOD,IAC5B6K,EAAO7K,GAAIyK,MAAMnK,MAAQ,OACzBuK,EAAO7K,GAAIyK,MAAMlK,OAAS,OAGvBrN,EAAEsU,iBACL,EAAIlB,EAAKwE,aAAa5X,EAAEsU,cAAetU,EAAEiI,QAAQuM,YAAc,eAC/D,EAAIpB,EAAKuD,UAAU3W,EAAEsU,cAAetU,EAAEiI,QAAQuM,YAAc,iBAG7DxU,EAAE0V,kBACF1V,EAAEyT,cAAe,EAEjB,IAAIoE,EAAazO,KAAK0O,IAAIT,OAAOjK,MAAQpN,EAAEoN,MAAOiK,OAAOhK,OAASrN,EAAEqN,QAChE0K,EAAc/X,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBACpFuD,IACHA,EAAYR,MAAMU,SAAwB,GAAbJ,EAAkB,IAC/CE,EAAYR,MAAMW,WAAa,UAEhC,IAAI1K,GAAQ,EAAIvH,EAASwH,aAAa,oBAAqBzN,EAAEkW,WAAWlW,EAAEmW,YAC1EnW,EAAEkW,WAAWlW,EAAEmW,WAAWxI,cAAcH,KAEzCqH,eAAgB,WACf,IAAI7U,EAAIwB,KACJqU,EAAoC,OAAzB7V,EAAEkM,MAAMF,cAAyB,kBAAkBxF,KAAKxG,EAAEkM,MAAMF,cAE/E,GAAKhM,EAAEiU,QAAP,CAaA,GATAkE,aAAanY,EAAE8T,sBAEXd,EAAS2B,6BAA+B3B,EAAS4B,eAAiB5U,EAAEyT,eACvET,EAASoF,oBAGV,EAAIhF,EAAKwE,aAAajQ,EAAW5B,QAAQ6Q,gBAAiB5W,EAAEiI,QAAQuM,YAAc,eAClF,EAAIpB,EAAKwE,aAAa5X,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,wBAErExU,EAAEiI,QAAQyP,cAAe,CAI5B,GAHA1X,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMnK,MAAQpN,EAAEwV,YAAc,KACxDxV,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMlK,OAASrN,EAAEuV,aAAe,KAEtDM,EACH7V,EAAE0L,KAAK6L,MAAMnK,MAAQpN,EAAEwV,YAAc,KACrCxV,EAAE0L,KAAK6L,MAAMlK,OAASrN,EAAEuV,aAAe,UAIvC,IAFA,IAAIiC,EAAWxX,EAAEkW,WAAWlW,EAAEmW,WAAWsB,iBAAiB,wBACtDY,EAAUb,EAAS3W,OACdP,EAAI,EAAGA,EAAI+X,EAAS/X,IAC5BkX,EAASlX,GAAGiX,MAAMnK,MAAQpN,EAAEwV,YAAc,KAC1CgC,EAASlX,GAAGiX,MAAMlK,OAASrN,EAAEuV,aAAe,KAIf,mBAApBvV,EAAEkM,MAAMiB,SAClBnN,EAAEkM,MAAMiB,QAAQnN,EAAEwV,YAAaxV,EAAEuV,cAKlC,IAFA,IAAIoC,EAAS3X,EAAEkW,WAAWlW,EAAE2X,QAAQnM,SAChCuB,EAAQ4K,EAAO9W,OACVoO,EAAM,EAAGA,EAAMlC,EAAOkC,IAC9B0I,EAAO1I,GAAKsI,MAAMnK,MAAQpN,EAAEwV,YAAc,KAC1CmC,EAAO1I,GAAKsI,MAAMlK,OAASrN,EAAEuV,aAAe,KAI1CvV,EAAEsU,iBACL,EAAIlB,EAAKwE,aAAa5X,EAAEsU,cAAetU,EAAEiI,QAAQuM,YAAc,iBAC/D,EAAIpB,EAAKuD,UAAU3W,EAAEsU,cAAetU,EAAEiI,QAAQuM,YAAc,eAG7DxU,EAAE0V,kBACF1V,EAAEyT,cAAe,EAEjB,IAAIsE,EAAc/X,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBACpFuD,IACHA,EAAYR,MAAMU,SAAW,GAC7BF,EAAYR,MAAMW,WAAa,GAC/BlY,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,qBAAqB+C,MAAMe,OAAS,IAE3G,IAAI9K,GAAQ,EAAIvH,EAASwH,aAAa,mBAAoBzN,EAAEkW,WAAWlW,EAAEmW,YACzEnW,EAAEkW,WAAWlW,EAAEmW,WAAWxI,cAAcH,QAIxC,CAAC,GAAK,GAAG,EAAI,EAAE,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,EAAE,EAAI,IAAI+K,GAAG,CAAC,SAASxX,EAAQC,EAAOL,GAC3F,aAEA,IAEIgH,EAAaD,EAFD3G,EAAQ,IAIpB+R,EAAU/R,EAAQ,IAElBgS,EAAWrL,EAAuBoL,GAIlCD,EAASnL,EAFD3G,EAAQ,IAIhBkF,EAAWlF,EAAQ,IAEnBqS,EAAOrS,EAAQ,IAEnB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvFF,OAAOuD,OAAOiK,EAAQO,OAAQ,CAC7BmF,SAAU,KAEVC,UAAW,OAGZnT,OAAOuD,OAAOkK,EAAShN,QAAQ7B,UAAW,CACzCwU,eAAgB,SAAwB1E,EAAQ2E,EAAUhB,EAAQzL,GACjE,IAAIlM,EAAIwB,KACJoX,EAAK5Y,EAAEiI,QACP4Q,GAAY,EAAI5S,EAASoO,UAAUuE,EAAGJ,UAAYI,EAAGJ,SAAW3F,EAAO9M,QAAQ/F,EAAE,aACjF8Y,GAAa,EAAI7S,EAASoO,UAAUuE,EAAGH,WAAaG,EAAGH,UAAY5F,EAAO9M,QAAQ/F,EAAE,cACpF4P,EAAOjI,EAAW5B,QAAQgD,cAAc,OAE5C6G,EAAK2E,UAAYvU,EAAEiI,QAAQuM,YAAc,UAAYxU,EAAEiI,QAAQuM,YAAc,oBAAsBxU,EAAEiI,QAAQuM,YAAc,OAC3H5E,EAAK6E,UAAY,wCAA0CzU,EAAEgJ,GAAK,YAAc6P,EAAY,iBAAmBC,EAAa,2BAC5HlJ,EAAKK,iBAAiB,SAAS,WAC1BjQ,EAAEuP,OACLvP,EAAE4P,OAEF5P,EAAEqM,WAIJ,IAAI0M,EAAUnJ,EAAKoI,cAAc,UAGjC,SAASgB,EAAgB7D,GACpB,SAAWA,IACd,EAAI/B,EAAKwE,aAAahI,EAAM5P,EAAEiI,QAAQuM,YAAc,SACpD,EAAIpB,EAAKwE,aAAahI,EAAM5P,EAAEiI,QAAQuM,YAAc,WACpD,EAAIpB,EAAKuD,UAAU/G,EAAM5P,EAAEiI,QAAQuM,YAAc,SACjDuE,EAAQxP,aAAa,QAASuP,GAC9BC,EAAQxP,aAAa,aAAcuP,MAGnC,EAAI1F,EAAKwE,aAAahI,EAAM5P,EAAEiI,QAAQuM,YAAc,UACpD,EAAIpB,EAAKwE,aAAahI,EAAM5P,EAAEiI,QAAQuM,YAAc,WACpD,EAAIpB,EAAKuD,UAAU/G,EAAM5P,EAAEiI,QAAQuM,YAAc,QACjDuE,EAAQxP,aAAa,QAASsP,GAC9BE,EAAQxP,aAAa,aAAcsP,IAfrC7Y,EAAE0U,kBAAkB9E,EAAM,aAmB1BoJ,EAAgB,OAEhB9M,EAAM+D,iBAAiB,kBAAkB,YACK,IAAzC/D,EAAMF,aAAatC,QAAQ,UAC9BsP,EAAgB,UAGlB9M,EAAM+D,iBAAiB,QAAQ,WAC9B+I,EAAgB,WAEjB9M,EAAM+D,iBAAiB,WAAW,WACjC+I,EAAgB,WAEjB9M,EAAM+D,iBAAiB,SAAS,WAC/B+I,EAAgB,UAEjB9M,EAAM+D,iBAAiB,SAAS,WAC1B+D,EAAO/L,QAAQgR,QACnB,EAAI7F,EAAKwE,aAAahI,EAAM5P,EAAEiI,QAAQuM,YAAc,UACpD,EAAIpB,EAAKwE,aAAahI,EAAM5P,EAAEiI,QAAQuM,YAAc,SACpD,EAAIpB,EAAKuD,UAAU/G,EAAM5P,EAAEiI,QAAQuM,YAAc,UACjDuE,EAAQxP,aAAa,QAASsP,GAC9BE,EAAQxP,aAAa,aAAcsP,WAMrC,CAAC,GAAK,GAAG,EAAI,EAAE,GAAK,GAAG,GAAK,GAAG,EAAI,IAAIK,GAAG,CAAC,SAASnY,EAAQC,EAAOL,GACrE,aAEA,IAEIgH,EAAaD,EAFD3G,EAAQ,IAIpB+R,EAAU/R,EAAQ,IAElBgS,EAAWrL,EAAuBoL,GAIlCD,EAASnL,EAFD3G,EAAQ,IAIhB+G,EAAa/G,EAAQ,IAErBoY,EAAQpY,EAAQ,IAEhBqS,EAAOrS,EAAQ,IAEnB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvFF,OAAOuD,OAAOiK,EAAQO,OAAQ,CAC7B+F,uBAAuB,EAEvBC,gBAAgB,EAEhBC,WAAW,IAGZhU,OAAOuD,OAAOkK,EAAShN,QAAQ7B,UAAW,CACzCqV,cAAe,SAAuBvF,EAAQ2E,EAAUhB,EAAQzL,GAE/D,IAAIsN,EAAmB,EACnBC,GAAc,EACdC,GAAgB,EAEhB1Z,EAAIwB,KACJmY,EAAoB3F,EAAO/L,QAAQ2R,WACnCC,EAAU7F,EAAO/L,QAAQmR,sBAAwB,gBAAkBpZ,EAAEiI,QAAQuM,YAA5B,4BAA8ExU,EAAEiI,QAAQuM,YAAxF,gDAA+JxU,EAAEiI,QAAQuM,YAAzK,oCAAmO,GACpRsF,EAAOnS,EAAW5B,QAAQgD,cAAc,OAE5C+Q,EAAKvF,UAAYvU,EAAEiI,QAAQuM,YAAc,YACzCsF,EAAKrF,UAAY,gBAAkBzU,EAAEiI,QAAQuM,YAAc,cAAgBxU,EAAEiI,QAAQuM,YAApE,6BAAuHxU,EAAEiI,QAAQuM,YAAjI,uCAA+LxU,EAAEiI,QAAQuM,YAAzM,oCAAoQxU,EAAEiI,QAAQuM,YAA9Q,qCAA0UxU,EAAEiI,QAAQuM,YAApV,8CAAyZxU,EAAEiI,QAAQuM,YAAc,6BAA+BxU,EAAEiI,QAAQuM,YAAc,sCAA+CqF,EAAW,UAEnjB7Z,EAAE0U,kBAAkBoF,EAAM,YAE1B9Z,EAAEiI,QAAQ8M,WAAW3R,KAAK,CACzB+I,KAAM,CAAC,GAAI,KACX6I,OAAQ,SAAgBhB,GACvB,IAAK+F,MAAM/F,EAAOgG,WAAahG,EAAOgG,SAAW,EAAG,CAC/ChG,EAAOC,UACVD,EAAOiG,eACPjG,EAAOkG,sBAGR,IAAIC,EAAanG,EAAOkC,WAAWlC,EAAOmC,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,cAC7F2F,GACHA,EAAWC,QAGZ,IAAIC,EAAUjR,KAAKkR,IAAItG,EAAOuG,YAAcvG,EAAO/L,QAAQuS,4BAA4BxG,GAAS,GAE3FA,EAAOzE,QACXyE,EAAO3H,QAGRtK,YAAW,WACViS,EAAOyG,eAAeJ,KACpB,GAEHtY,YAAW,WACViS,EAAOpE,SACL,MAGH,CACFzD,KAAM,CAAC,GAAI,KACX6I,OAAQ,SAAgBhB,GAEvB,IAAK+F,MAAM/F,EAAOgG,WAAahG,EAAOgG,SAAW,EAAG,CAC/ChG,EAAOC,UACVD,EAAOiG,eACPjG,EAAOkG,sBAGR,IAAIC,EAAanG,EAAOkC,WAAWlC,EAAOmC,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,cAC7F2F,GACHA,EAAWC,QAGZ,IAAIC,EAAUjR,KAAK0O,IAAI9D,EAAOuG,YAAcvG,EAAO/L,QAAQyS,2BAA2B1G,GAASA,EAAOgG,UAEjGhG,EAAOzE,QACXyE,EAAO3H,QAGRtK,YAAW,WACViS,EAAOyG,eAAeJ,KACpB,GAEHtY,YAAW,WACViS,EAAOpE,SACL,OAKN5P,EAAE8Z,KAAOnB,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,aAC9DxU,EAAE+M,MAAQ4L,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,cAC/DxU,EAAE2a,OAAShC,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,eAChExU,EAAE4a,QAAUjC,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,gBACjExU,EAAE0C,OAASiW,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,eAChExU,EAAE6a,UAAYlC,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,cACnExU,EAAE8a,iBAAmBnC,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,sBAC1ExU,EAAE+a,OAASpC,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,eAChExU,EAAEgb,QAAUrC,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,gBACjExU,EAAEib,OAAStC,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,kBAChExU,EAAEqa,QAAU,EACZra,EAAEkb,mBAAoB,EACtBlb,EAAEmb,kBAAoB,SAAUC,EAASrX,GACxCqX,EAAQ7D,MAAM8D,UAAYtX,EAC1BqX,EAAQ7D,MAAM+D,gBAAkBvX,EAChCqX,EAAQ7D,MAAMgE,aAAexX,EAC7BqX,EAAQ7D,MAAMiE,YAAczX,EAC5BqX,EAAQ7D,MAAMkE,WAAa1X,GAG5B/D,EAAEib,OAAO1D,MAAMmE,QAAU,OAEzB,IAAIC,EAAkB,SAAyB5b,GAC9C,IAAI6b,EAAc3F,iBAAiBjW,EAAE+M,OACjC8O,GAAe,EAAIzI,EAAK0I,QAAQ9b,EAAE+M,OAClCK,EAAQpN,EAAE+M,MAAMgP,YAChBV,OACiC9Y,IAAhCqZ,EAAYN,gBACR,uBACgC/Y,IAA7BqZ,EAAYI,aACf,qBAC8BzZ,IAA3BqZ,EAAYK,WACf,kBAC+B1Z,IAA5BqZ,EAAYJ,YACf,cAEA,YAGLU,EACC,oBAAqB7a,OACjB,kBACG,gBAAiBA,OACpB,cACG,cAAeA,OAClB,iBADD,EAKJ8a,EAAa,EACbC,EAAU,EACVC,EAAM,EACNC,OAAI,EAUR,GAPCA,EADGvc,EAAEwc,eAAiBxc,EAAEwc,cAAcC,eAClCzc,EAAEwc,cAAcC,eAAe,GAAGC,MAC5B1c,EAAEyc,eACRzc,EAAEyc,eAAe,GAAGC,MAEpB1c,EAAE0c,MAGHzc,EAAE0c,eAgBL,GAfIJ,EAAIT,EAAac,KACpBL,EAAIT,EAAac,KACPL,EAAIlP,EAAQyO,EAAac,OACnCL,EAAIlP,EAAQyO,EAAac,MAI1BR,GADAE,EAAMC,EAAIT,EAAac,MACJvP,EACnBpN,EAAEqa,QAAU8B,EAAanc,EAAE0c,cAEvBjD,GAAsC,OAAvBzZ,EAAE4c,kBAA6B5c,EAAEqa,QAAQwC,QAAQ,KAAO7c,EAAE4c,iBAAiBC,QAAQ,KACrG7c,EAAE8c,qBAAqB9c,EAAEqa,SACzBra,EAAE+c,cAAc/c,EAAEqa,WAGdvS,EAAWsC,SAAWtC,EAAWyO,WAAY,CAIjD,GAHI8F,EAAM,IACTA,EAAM,GAEHrc,EAAEiI,QAAQoR,gBAAgC,OAAd6C,QAAmD,IAAtB7a,OAAO6a,GAA4B,CAC/F,IACIc,EADS,IAAI3b,OAAO6a,GAAWjG,iBAAiBjW,EAAE0C,QAAQ2Y,IAClC4B,IACxBC,EAAcb,EAAMxF,WAAWZ,iBAAiBjW,EAAE+M,OAAOK,OAAS4P,EAAiBnG,WAAWZ,iBAAiBjW,EAAE+M,OAAOK,OAE5HpN,EAAEgb,QAAQzD,MAAMoF,KAAOK,EAAiB,KACxChd,EAAEmb,kBAAkBnb,EAAEgb,QAAS,UAAYkC,EAAc,KACzDld,EAAEgb,QAAQzR,aAAa,MAAO8S,GAE1Ba,GAAe,GAClB,EAAI9J,EAAKwE,aAAa5X,EAAEgb,QAAS,aAEjC,EAAI5H,EAAKuD,UAAU3W,EAAEgb,QAAS,YAIhC,GAAIhb,EAAE6a,UAAW,CAChB,IAAIsC,EAAOnd,EAAE6a,UAAUkB,YAAc,EACjCqB,EAAkBlM,KAAKmM,MAAMvB,OAAO9b,EAAEkW,WAAWlW,EAAEmW,YACnDmH,EAAgBrH,iBAAiBjW,EAAE6a,WAGtCuB,EADGE,EAAIc,EAAgBT,KAAO3c,EAAE6a,UAAUkB,YAChCoB,EACAb,EAAIc,EAAgBT,MAAQ3c,EAAEkW,WAAWlW,EAAEmW,WAAW4F,YAAcoB,EACpEnd,EAAE+M,MAAMgP,YAAcoB,EAEtBd,GAGP,EAAIjJ,EAAKmK,UAAUvd,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,gBACzE4H,GAAWvF,WAAWyG,EAAcE,YAAc,EAAIxd,EAAE6a,UAAUkB,YAAc,GAGjF/b,EAAE6a,UAAUtD,MAAMoF,KAAOP,EAAU,KACnCpc,EAAE8a,iBAAiBrG,WAAY,EAAI0E,EAAMsE,mBAAmBzd,EAAEqa,QAASrG,EAAO/L,QAAQyV,gBAAiB1J,EAAO/L,QAAQ0V,uBAAwB3J,EAAO/L,QAAQ2V,gBAAiB5J,EAAO/L,QAAQ4V,qBAAsB7J,EAAO/L,QAAQ6V,YAClO9d,EAAE6a,UAAUtD,MAAMmE,QAAU,eAGnB5T,EAAWsC,QAAWtC,EAAWyO,aAAcvW,EAAE6a,YAC5DuB,EAAUpc,EAAE6a,UAAUkB,YAAc3O,GAASpN,EAAEkW,WAAWlW,EAAEmW,WAAW4F,YAAc/b,EAAE6a,UAAUkB,YAAc,EAAI,EACnH/b,EAAE6a,UAAUtD,MAAMoF,KAAOP,EAAU,KACnCpc,EAAE6a,UAAUtD,MAAMoF,KAAOP,EAAU,KACnCpc,EAAE6a,UAAUtD,MAAMmE,QAAU,UA0B1BqC,EAAgB,WACf,IAAIC,KAASxE,GAAoB,KACpCxZ,EAAE4P,QAgBJ5P,EAAE+a,OAAO9K,iBAAiB,SAAS,WAClC+D,EAAO/L,QAAQ2R,YAAa,KAE7B5Z,EAAE+a,OAAO9K,iBAAiB,QAAQ,WACjC+D,EAAO/L,QAAQ2R,WAAaD,KAE7B3Z,EAAE+a,OAAO9K,iBAAiB,WAAW,SAAUlQ,GAK9C,GAJI,IAAIie,KAASxE,GAAoB,MACpCE,EAAgB1Z,EAAEuP,QAGfvP,EAAEiI,QAAQoN,gBAAkBrV,EAAEiI,QAAQ8M,WAAWlU,OAAQ,CAE5D,IAAIuU,EAAUrV,EAAEoV,OAASpV,EAAEqV,SAAW,EAClC4E,EAAWha,EAAE0c,cACbuB,EAAcjK,EAAO/L,QAAQyS,2BAA2BxO,GACxDgS,EAAelK,EAAO/L,QAAQuS,4BAA4BtO,GAE1DiS,EAAWne,EAAE4c,iBACbwB,EAASpe,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBAEnF,GAAgB,KAAZY,GAA8B,KAAZA,EAAgB,CACjCgJ,IACHA,EAAO7G,MAAMmE,QAAU,SAEpB1b,EAAEiU,UACLjU,EAAEia,eACFja,EAAEka,sBAGH,IAAImE,EAAwB,KAAZjJ,EAAiBhM,KAAK0O,IAAI9X,EAAEoe,OAAS,GAAK,GAAKhV,KAAKkR,IAAIta,EAAEoe,OAAS,GAAK,GACpFE,EAAaD,GAAa,EAG9B,OAFAre,EAAEue,UAAUF,QACZre,EAAEwe,SAASF,GAQZ,OALKF,IACHA,EAAO7G,MAAMmE,QAAU,QAIjBtG,GACP,KAAK,GACApV,EAAE0c,gBAAkB+B,MACvBN,GAAYD,GAEb,MACD,KAAK,GACAle,EAAE0c,gBAAkB+B,MACvBN,GAAYF,GAEb,MACD,KAAK,GACJE,EAAW,EACX,MACD,KAAK,GACJA,EAAWnE,EACX,MACD,KAAK,GACL,KAAK,GAQJ,YAPIlS,EAAW4W,aACV1e,EAAEuP,OACLvP,EAAE4P,OAEF5P,EAAEqM,UAIL,QACC,OAGF8R,EAAWA,EAAW,GAAKpE,MAAMoE,GAAY,EAAIA,GAAYnE,EAAWA,EAAW5Q,KAAKuV,MAAMR,GAC9F3E,EAAmB,IAAIwE,KAClBtE,GACJ1F,EAAO3H,QAGRtK,YAAW,WACV/B,EAAEya,eAAe0D,KACf,GAECA,EAAWne,EAAE0c,gBAAkBhD,GAClC3X,WAAWgc,EAAe,MAG3B/J,EAAOiG,eAEPla,EAAE6e,iBACF7e,EAAE8e,sBAIJ,IAAIhT,EAAS,CAAC,YAAa,cAE3B7L,EAAE+a,OAAO9K,iBAAiB,aAAa,WACtC,OAAO,KAGR,IAAK,IAAI3P,EAAI,EAAGyM,EAAQlB,EAAOhL,OAAQP,EAAIyM,EAAOzM,IACjDN,EAAE+a,OAAO9K,iBAAiBpE,EAAOvL,IAAI,SAAUP,GAE9C,GADAC,EAAEkb,mBAAoB,EAClBlb,EAAE0c,gBAAkB+B,KAAYze,EAAEqa,QAAUrG,EAAO8K,MAAMC,wBAC5C,IAAZhf,EAAEoV,OAA2B,IAAZpV,EAAEoV,OAAa,CAC9BnV,EAAEuP,SACNvP,EAAEqM,QACFrM,EAAEkb,mBAAoB,GAGvBzB,GAAc,EACdkC,EAAgB5b,GAGhB,IAFA,IAAIif,EAAY,CAAC,UAAW,YAEnB1M,EAAI,EAAG2M,EAAcD,EAAUne,OAAQyR,EAAI2M,EAAa3M,IAChEtS,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB+O,EAAU1M,IAAI,SAAU9E,GAClE,IAAI+D,EAAS/D,EAAM+D,QACfA,IAAWvR,EAAE+a,QAAUxJ,EAAO2N,QAAQ,IAAMlf,EAAEiI,QAAQuM,YAAc,iBACvEmH,EAAgBnO,MAInBxN,EAAEsV,WAAW,4BAA4B,WArIxCmE,GAAsC,OAAvBzZ,EAAE4c,kBAA6B5c,EAAEqa,QAAQwC,QAAQ,KAAO7c,EAAE4c,iBAAiBC,QAAQ,KACrG7c,EAAEya,eAAeza,EAAEqa,SACnBra,EAAE8c,qBAAqB9c,EAAEqa,SACzBra,EAAE+c,cAAc/c,EAAEqa,UAEfra,EAAEkb,oBACLlb,EAAE+a,OAAOX,QACTpa,EAAE4P,QAEH5P,EAAEkb,mBAAoB,EA8HlBzB,GAAc,EACVzZ,EAAE6a,YACL7a,EAAE6a,UAAUtD,MAAMmE,QAAU,iBAK9B5T,EAAWqX,uBAAuC,eAAdtT,EAAOvL,KAAsB,CAAE8e,SAAS,IAEhFpf,EAAE+a,OAAO9K,iBAAiB,cAAc,SAAUlQ,GAC7CA,EAAEwR,SAAWvR,EAAE+a,QAAU/a,EAAE0c,gBAAkB+B,MAChDze,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,aAAa,SAAUzC,GACjE,IAAI+D,EAAS/D,EAAM+D,QACfA,IAAWvR,EAAE+a,QAAUxJ,EAAO2N,QAAQ,IAAMlf,EAAEiI,QAAQuM,YAAc,iBACvEmH,EAAgBnO,OAGdxN,EAAE6a,WAAc/S,EAAWsC,QAAWtC,EAAWyO,aACpDvW,EAAE6a,UAAUtD,MAAMmE,QAAU,SAEzB1b,EAAEgb,UAAYlT,EAAWsC,SAAWtC,EAAWyO,YAAcvW,EAAEiI,QAAQoR,iBAC1E,EAAIjG,EAAKwE,aAAa5X,EAAEgb,QAAS,gBAIpChb,EAAE+a,OAAO9K,iBAAiB,cAAc,WACnCjQ,EAAE0c,gBAAkB+B,MAClBhF,IACAzZ,EAAE6a,YACL7a,EAAE6a,UAAUtD,MAAMmE,QAAU,QAEzB1b,EAAEgb,SAAWhb,EAAEiI,QAAQoR,iBAC1B,EAAIjG,EAAKuD,UAAU3W,EAAEgb,QAAS,iBAMlChb,EAAEqf,kBAAoB,SAAUtf,GAC/B,IA1MIuf,EACAC,EACAC,EACAxF,EAuMAyF,EAAY9G,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,aACrE,GAAKxU,EAAEiI,QAAQqR,WAAatZ,EAAE0c,gBAAkB+B,KAWzC,IAAKgB,GAAazf,EAAEiI,QAAQqR,UAAW,CAC7C,IAAIoG,EAAQ/X,EAAW5B,QAAQgD,cAAc,QAC7C2W,EAAMnL,UAAYvU,EAAEiI,QAAQuM,YAAc,YAC1CkL,EAAMC,UAAY9M,EAAO9M,QAAQ/F,EAAE,uBACnCA,EAAE+a,OAAOxD,MAAMmE,QAAU,OACzB1b,EAAE8Z,KAAKhQ,YAAY4V,SAffD,IACHzf,EAAE+a,OAAOxD,MAAMmE,QAAU,GACzB+D,EAAU3O,UAGXkD,EAAO4L,gBAAgB7f,GAClBC,EAAEkb,mBACNlH,EAAO6L,eAAe9f,GAnNpBuf,EAAUtf,EAAE4c,iBACZ2C,EAAiB1M,EAAO9M,QAAQ/F,EAAE,oBAClCwf,GAAO,EAAIrG,EAAMsE,mBAAmB6B,EAAStL,EAAO/L,QAAQyV,gBAAiB1J,EAAO/L,QAAQ0V,uBAAwB3J,EAAO/L,QAAQ2V,gBAAiB5J,EAAO/L,QAAQ4V,qBAAsB7J,EAAO/L,QAAQ6V,YACxM9D,EAAWha,EAAE0c,cAEjB1c,EAAE+a,OAAOxR,aAAa,OAAQ,UAC9BvJ,EAAE+a,OAAO+E,SAAW,EAEhB5T,EAAMqD,QACTvP,EAAE+a,OAAOxR,aAAa,aAAcgW,GACpCvf,EAAE+a,OAAOxR,aAAa,gBAAiB,GACvCvJ,EAAE+a,OAAOxR,aAAa,gBAAiBwQ,MAAMC,GAAY,EAAIA,GAC7Dha,EAAE+a,OAAOxR,aAAa,gBAAiB+V,GACvCtf,EAAE+a,OAAOxR,aAAa,iBAAkBiW,KAExCxf,EAAE+a,OAAOlK,gBAAgB,cACzB7Q,EAAE+a,OAAOlK,gBAAgB,iBACzB7Q,EAAE+a,OAAOlK,gBAAgB,iBACzB7Q,EAAE+a,OAAOlK,gBAAgB,iBACzB7Q,EAAE+a,OAAOlK,gBAAgB,oBA4M3B3E,EAAM+D,iBAAiB,WAAYjQ,EAAEqf,mBACrCnT,EAAM+D,iBAAiB,aAAcjQ,EAAEqf,mBACvCnT,EAAM+D,iBAAiB,QAAQ,WAC9BjQ,EAAEib,OAAO1D,MAAMmE,QAAU,UAE1BxP,EAAM+D,iBAAiB,WAAW,WACjCjQ,EAAEib,OAAO1D,MAAMmE,QAAU,UAE1BxP,EAAM+D,iBAAiB,WAAW,WACjCjQ,EAAEib,OAAO1D,MAAMmE,QAAU,MAE1BxP,EAAM+D,iBAAiB,UAAU,WAChCjQ,EAAEib,OAAO1D,MAAMmE,QAAU,UAE1BxP,EAAM+D,iBAAiB,SAAS,WAC/BjQ,EAAEib,OAAO1D,MAAMmE,QAAU,UAE1BxP,EAAM+D,iBAAiB,WAAW,WACjCjQ,EAAEib,OAAO1D,MAAMmE,QAAU,MAE1BxP,EAAM+D,iBAAiB,cAAc,WACpCjQ,EAAEib,OAAO1D,MAAMmE,QAAU,MAE1BxP,EAAM+D,iBAAiB,WAAW,WACjCjQ,EAAEib,OAAO1D,MAAMmE,QAAU,UAE1BxP,EAAM+D,iBAAiB,SAAS,WAC/BjQ,EAAEib,OAAO1D,MAAMmE,QAAU,UAG1B1b,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,kBAAkB,SAAUlQ,GAClEC,EAAE0c,gBAAkB+B,MACvBzK,EAAO4L,gBAAgB7f,GAClBC,EAAEkb,mBACNlH,EAAO6L,eAAe9f,QAK1BggB,cAAe,SAAuB/L,EAAQ2E,EAAUhB,EAAQzL,GAC/DA,EAAMkE,oBAAoB,WAAY4D,EAAOqL,mBAC7CnT,EAAMkE,oBAAoB,aAAc4D,EAAOqL,mBAC3CrL,EAAO8F,MACV9F,EAAO8F,KAAKhJ,UAGd8O,gBAAiB,SAAyB7f,GACzC,IAAIC,EAAIwB,KACJ+P,OAAehP,IAANxC,EAAkBA,EAAEigB,OAAOzO,QAAUxR,EAAEwR,OAASvR,EAAEkM,MAE3D+T,EAAU,KAEV1O,GAAUA,EAAO2O,UAAY3O,EAAO2O,SAASrf,OAAS,GAAK0Q,EAAO2O,SAASC,KAAOngB,EAAE0c,cACvFuD,EAAU1O,EAAO2O,SAASC,IAAI5O,EAAO2O,SAASrf,OAAS,GAAKb,EAAE0c,cACpDnL,QAAgChP,IAAtBgP,EAAO6O,YAA4B7O,EAAO6O,WAAa,QAA8B7d,IAAzBgP,EAAO8O,cACtFJ,EAAU1O,EAAO8O,cAAgB9O,EAAO6O,WAC9BrgB,GAAKA,EAAEugB,kBAAgC,IAAZvgB,EAAEgN,QACtCkT,EAAUlgB,EAAE4a,OAAS5a,EAAEgN,OAGV,OAAZkT,IACHA,EAAU7W,KAAK0O,IAAI,EAAG1O,KAAKkR,IAAI,EAAG2F,IAE9BjgB,EAAE2a,QACL3a,EAAEmb,kBAAkBnb,EAAE2a,OAAQ,UAAYsF,EAAU,OAIvDnD,qBAAsB,SAA8ByD,GAC3C/e,KACNgf,mBADMhf,KACgB+e,IAEzBV,eAAgB,WACPre,KACNgf,mBADMhf,OAGTgf,mBAAoB,SAA4BxgB,EAAGugB,GAClD,QAA2Bhe,IAAvBvC,EAAE4c,kBAAkC5c,EAAE0c,cAAe,CACxD,IAAI+D,OAA4B,IAAbF,EAA2BvgB,EAAE4c,iBAAmB2D,EAEnE,GAAIvgB,EAAE+M,OAAS/M,EAAE0C,OAAQ,CACxB,IAAIge,EAAK7J,WAAWZ,iBAAiBjW,EAAE+M,OAAOK,OAE1CuT,EAAWvX,KAAKwX,MAAMF,EAAKD,EAAQzgB,EAAE0c,eACrCmE,EAAYF,EAAWvX,KAAKwX,MAAM5gB,EAAE0C,OAAOqZ,YAAc,GAM7D,GAJA8E,EAAYA,EAAY,EAAI,EAAIA,EAChC7gB,EAAEmb,kBAAkBnb,EAAE4a,QAAS,UAAY+F,EAAWD,EAAK,KAC3D1gB,EAAEmb,kBAAkBnb,EAAE0C,OAAQ,cAAgBme,EAAY,OAEtD7gB,EAAEiI,QAAQoR,kBAAmB,EAAIjG,EAAKmK,UAAUvd,EAAEgb,QAAS,YAAa,CAC3E,IAAIqB,EAAMyE,SAAS9gB,EAAEgb,QAAQrR,aAAa,OAAQ,IAG9CuT,GAFJb,EAAMtC,MAAMsC,GAAO,EAAIA,GAECqE,EAAKG,EAAYH,EAEzC1gB,EAAEgb,QAAQzD,MAAMoF,KAAOkE,EAAY,KACnC7gB,EAAEmb,kBAAkBnb,EAAEgb,QAAS,UAAYkC,EAAc,KAErDA,GAAe,GAClB,EAAI9J,EAAKwE,aAAa5X,EAAEgb,QAAS,aAEjC,EAAI5H,EAAKuD,UAAU3W,EAAEgb,QAAS,mBAQlC,CAAC,GAAK,GAAG,EAAI,EAAE,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,IAAI+F,GAAG,CAAC,SAAShgB,EAAQC,EAAOL,GAC7E,aAEA,IAEIgH,EAAaD,EAFD3G,EAAQ,IAIpB+R,EAAU/R,EAAQ,IAElBgS,EAAWrL,EAAuBoL,GAElCqG,EAAQpY,EAAQ,IAEhBqS,EAAOrS,EAAQ,IAEnB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvFF,OAAOuD,OAAOiK,EAAQO,OAAQ,CAC7B2G,SAAU,EAEVgH,yBAA0B,qBAG3B1b,OAAOuD,OAAOkK,EAAShN,QAAQ7B,UAAW,CACzC+c,aAAc,SAAsBjN,EAAQ2E,EAAUhB,EAAQzL,GAC7D,IAAIlM,EAAIwB,KACJge,EAAO7X,EAAW5B,QAAQgD,cAAc,OAE5CyW,EAAKjL,UAAYvU,EAAEiI,QAAQuM,YAAc,OACzCgL,EAAKjW,aAAa,OAAQ,SAC1BiW,EAAKjW,aAAa,YAAa,OAC/BiW,EAAK/K,UAAY,gBAAkBzU,EAAEiI,QAAQuM,YAAc,iBAAkB,EAAI2E,EAAMsE,mBAAmB,EAAGzJ,EAAO/L,QAAQyV,gBAAiB1J,EAAO/L,QAAQ0V,uBAAwB3J,EAAO/L,QAAQ2V,gBAAiB5J,EAAO/L,QAAQ4V,qBAAsB7J,EAAO/L,QAAQ6V,YAAc,UAEtR9d,EAAE0U,kBAAkB8K,EAAM,WAC1BxL,EAAO+I,gBACP/c,EAAEkhB,mBAAqB,WAClBlhB,EAAEmhB,oBACLnN,EAAO+I,iBAGT7Q,EAAM+D,iBAAiB,aAAcjQ,EAAEkhB,qBAExCE,aAAc,SAAsBpN,EAAQ2E,EAAUhB,EAAQzL,GAC7DA,EAAMkE,oBAAoB,aAAc4D,EAAOkN,qBAEhDG,cAAe,SAAuBrN,EAAQ2E,EAAUhB,EAAQzL,GAC/D,IAAIlM,EAAIwB,KAGR,GAFemX,EAAS2I,UAAUtJ,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,eAG7EmE,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,QAAQC,WAAazU,EAAEiI,QAAQ+Y,yBAA2B,gBAAkBhhB,EAAEiI,QAAQuM,YAAc,cAAgB,EAAI2E,EAAMsE,mBAAmBzd,EAAEiI,QAAQ+R,SAAUha,EAAEiI,QAAQyV,gBAAiB1d,EAAEiI,QAAQ0V,uBAAwB3d,EAAEiI,QAAQ2V,gBAAiB5d,EAAEiI,QAAQ4V,qBAAsB7d,EAAEiI,QAAQ6V,YAAc,cACpW,CACFnF,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBACxD,EAAIpB,EAAKuD,UAAUgC,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,eAAe5K,WAAY5J,EAAEiI,QAAQuM,YAAc,yBAG5H,IAAIwF,EAAWrS,EAAW5B,QAAQgD,cAAc,OAChDiR,EAASzF,UAAYvU,EAAEiI,QAAQuM,YAAc,QAAUxU,EAAEiI,QAAQuM,YAAc,qBAC/EwF,EAASvF,UAAY,gBAAkBzU,EAAEiI,QAAQuM,YAAc,cAAgB,EAAI2E,EAAMsE,mBAAmBzd,EAAEiI,QAAQ+R,SAAUha,EAAEiI,QAAQyV,gBAAiB1d,EAAEiI,QAAQ0V,uBAAwB3d,EAAEiI,QAAQ2V,gBAAiB5d,EAAEiI,QAAQ4V,qBAAsB7d,EAAEiI,QAAQ6V,YAAc,UAEhR9d,EAAE0U,kBAAkBsF,EAAU,YAG/Bha,EAAEuhB,uBAAyB,WACtBvhB,EAAEmhB,oBACLnN,EAAOwN,kBAITtV,EAAM+D,iBAAiB,aAAcjQ,EAAEuhB,yBAExCE,cAAe,SAAuBzN,EAAQ2E,EAAUhB,EAAQzL,GAC/DA,EAAMkE,oBAAoB,aAAc4D,EAAOuN,yBAEhDxE,cAAe,WACd,IAAI/c,EAAIwB,KAEJ+Y,EAAcva,EAAE4c,iBAEhB7C,MAAMQ,KACTA,EAAc,GAGf,IAAImH,GAAW,EAAIvI,EAAMsE,mBAAmBlD,EAAava,EAAEiI,QAAQyV,gBAAiB1d,EAAEiI,QAAQ0V,uBAAwB3d,EAAEiI,QAAQ2V,gBAAiB5d,EAAEiI,QAAQ4V,qBAAsB7d,EAAEiI,QAAQ6V,YAEvL4D,EAAS7gB,OAAS,GACrB,EAAIuS,EAAKuD,UAAU3W,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,eAEtE,EAAIpB,EAAKwE,aAAa5X,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,cAGtExU,EAAEkW,WAAWlW,EAAE2Y,UAAUX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBACxExU,EAAEkW,WAAWlW,EAAE2Y,UAAUX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,eAAemL,UAAY+B,IAGlGF,eAAgB,WACf,IAAIxhB,EAAIwB,KAEJwY,EAAWha,EAAE0c,mBAEDna,IAAZvC,EAAEkM,QAAwB6N,MAAMC,IAAaA,IAAayE,KAAYzE,EAAW,KACpFha,EAAEkM,MAAM8N,SAAWha,EAAEiI,QAAQ+R,SAAWA,EAAW,GAGhDha,EAAEiI,QAAQ+R,SAAW,IACxBA,EAAWha,EAAEiI,QAAQ+R,UAGtB,IAAI0H,GAAW,EAAIvI,EAAMsE,mBAAmBzD,EAAUha,EAAEiI,QAAQyV,gBAAiB1d,EAAEiI,QAAQ0V,uBAAwB3d,EAAEiI,QAAQ2V,gBAAiB5d,EAAEiI,QAAQ4V,qBAAsB7d,EAAEiI,QAAQ6V,YAEpL4D,EAAS7gB,OAAS,GACrB,EAAIuS,EAAKuD,UAAU3W,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,eAEtE,EAAIpB,EAAKwE,aAAa5X,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,cAGtExU,EAAEkW,WAAWlW,EAAE2Y,UAAUX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,aAAewF,EAAW,IAClGha,EAAEkW,WAAWlW,EAAE2Y,UAAUX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,YAAYC,UAAYiN,OAK9F,CAAC,GAAK,GAAG,EAAI,EAAE,GAAK,GAAG,GAAK,KAAKC,GAAG,CAAC,SAAS5gB,EAAQC,EAAOL,GAC/D,aAEA,IAEIgH,EAAaD,EAFD3G,EAAQ,IAMpB8E,EAAS6B,EAFD3G,EAAQ,IAMhB8R,EAASnL,EAFD3G,EAAQ,IAIhB+R,EAAU/R,EAAQ,IAElBgS,EAAWrL,EAAuBoL,GAElCqG,EAAQpY,EAAQ,IAEhBkF,EAAWlF,EAAQ,IAEnBqS,EAAOrS,EAAQ,IAEnB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvFF,OAAOuD,OAAOiK,EAAQO,OAAQ,CAC7BuO,cAAe,GAEfC,WAAY,KAEZC,aAAc,KAEdC,gBAAgB,EAEhBC,6BAA6B,EAE7BC,iCAAiC,EAEjCC,eAAgB,KAGjB5c,OAAOuD,OAAOkK,EAAShN,QAAQ7B,UAAW,CACzCie,aAAa,EAEbC,YAAa,SAAqBpO,EAAQ2E,EAAUhB,EAAQzL,GAI3D,GAFA1K,KAAK6gB,aAEArO,EAAOsO,OAAOzhB,QAAYmT,EAAOuO,YAA4C,KAA7BvO,EAAOuO,WAAW1hB,OAAvE,CAIA,IAAIb,EAAIwB,KACJghB,EAAOxiB,EAAEiI,QAAQ8Z,eAAiB,wDAA0D,GAC5FU,GAAc,EAAIxc,EAASoO,UAAUrU,EAAEiI,QAAQ4Z,YAAc7hB,EAAEiI,QAAQ4Z,WAAahP,EAAO9M,QAAQ/F,EAAE,2BACrG0iB,GAAgB,EAAIzc,EAASoO,UAAUrU,EAAEiI,QAAQ6Z,cAAgB9hB,EAAEiI,QAAQ6Z,aAAejP,EAAO9M,QAAQ/F,EAAE,0BAC3G+M,EAA8B,OAAtBiH,EAAOuO,WAAsBvO,EAAOsO,OAAOzhB,OAASmT,EAAOuO,WAAW1hB,OAElF,GAAIb,EAAE2iB,QAAQC,WACb,IAAK,IAAItiB,EAAIN,EAAE2iB,QAAQC,WAAW/hB,OAAS,EAAGP,GAAK,EAAGA,IACrDN,EAAE2iB,QAAQC,WAAWtiB,GAAGwV,KAAO,SAIjC9V,EAAE6iB,YAAY7O,GAEdA,EAAO8O,SAAWnb,EAAW5B,QAAQgD,cAAc,OACnDiL,EAAO8O,SAASvO,UAAYvU,EAAEiI,QAAQuM,YAAc,kBAAoBxU,EAAEiI,QAAQuM,YAAc,QAChGR,EAAO8O,SAASrO,UAAY,eAAiBzU,EAAEiI,QAAQuM,YAAc,qBAAuBxU,EAAEiI,QAAQuM,YAAc,2BAA6BgO,EAArH,iBAAqJxiB,EAAEiI,QAAQuM,YAA/J,+BAC5BR,EAAO8O,SAASvL,MAAMmE,QAAU,OAChC/D,EAAO9N,aAAamK,EAAO8O,SAAUnL,EAAOoL,YAE5C/O,EAAOgP,aAAehP,EAAO8O,SAAS9K,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBAElFR,EAAOiP,eAAiBtb,EAAW5B,QAAQgD,cAAc,OACzDiL,EAAOiP,eAAe1O,UAAYvU,EAAEiI,QAAQuM,YAAc,UAAYxU,EAAEiI,QAAQuM,YAAc,kBAC9FR,EAAOiP,eAAexO,UAAY,wCAA0CzU,EAAEgJ,GAAK,YAAcyZ,EAAc,iBAAmBA,EAAhG,uCAA6JziB,EAAEiI,QAAQuM,YAAc,qBAAuBxU,EAAEiI,QAAQuM,YAAtN,yBAAsQxU,EAAEiI,QAAQuM,YAAhR,sCAA6UxU,EAAEiI,QAAQuM,YAAvV,2DAAyaxU,EAAEiI,QAAQuM,YAAnb,kCAA4eR,EAAOhL,GAAK,kBAAoBgL,EAAOhL,GAAnhB,+DAAqmBhJ,EAAEiI,QAAQuM,YAAc,2BAA+BxU,EAAEiI,QAAQuM,YAAtqB,2BAAwtBR,EAAOhL,GAAK,mBAAqB6J,EAAO9M,QAAQ/F,EAAE,aAA1wB,2BAElCA,EAAE0U,kBAAkBV,EAAOiP,eAAgB,UAE3CjP,EAAOiP,eAAejL,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,2BAA2B0O,UAAW,EAExGlP,EAAOmP,eAAiBxb,EAAW5B,QAAQgD,cAAc,OACzDiL,EAAOmP,eAAe5O,UAAYvU,EAAEiI,QAAQuM,YAAc,UAAYxU,EAAEiI,QAAQuM,YAAc,kBAC9FR,EAAOmP,eAAe1O,UAAY,wCAA0CzU,EAAEgJ,GAAK,YAAc0Z,EAAgB,iBAAmBA,EAAlG,uCAAiK1iB,EAAEiI,QAAQuM,YAAc,qBAAuBxU,EAAEiI,QAAQuM,YAA1N,yBAA0QxU,EAAEiI,QAAQuM,YAApR,sCAIlC,IAFA,IAAI4O,EAAgB,EAEXtW,EAAK,EAAGA,EAAKC,EAAOD,IAAM,CAClC,IAAIuW,EAAOrP,EAAOsO,OAAOxV,GAAIuW,KACnBrP,EAAOsO,OAAOxV,GAAIxB,IACpBgY,SACM,cAATD,GAAiC,aAATA,EAC3BD,IACmB,aAATC,GAAwB1K,EAASX,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,qBACvFR,EAAOiP,eAAerZ,WAAWC,aAAamK,EAAOmP,eAAgBnP,EAAOiP,iBAK/EjP,EAAOuP,aAAe,EACtBvP,EAAOwP,cAAgB,KACvBxP,EAAOyP,gBAAiB,EAExB,IAAK,IAAIxU,EAAM,EAAGA,EAAMlC,EAAOkC,IAAO,CACrC,IAAIyU,EAAQ1P,EAAOsO,OAAOrT,GAAKoU,MAC3BrP,EAAOsO,OAAOrT,GAAK3D,IAAIgY,QAAqB,cAAVI,GAAmC,aAAVA,GAC9D1P,EAAO2P,eAAe3P,EAAOsO,OAAOrT,GAAK2U,QAAS5P,EAAOsO,OAAOrT,GAAK4U,QAAS7P,EAAOsO,OAAOrT,GAAKyQ,OAInG1L,EAAO8P,gBAEP,IAAIC,EAAW,CAAC,aAAc,WAC1BC,EAAY,CAAC,aAAc,YAE/B,GAAIhkB,EAAEiI,QAAQga,iCAAqD,IAAlBmB,EAChDpP,EAAOiP,eAAehT,iBAAiB,SAAS,SAAUlQ,GACzD,IAAI6jB,EAAU,OACe,OAAzB5P,EAAOwP,gBACVI,EAAU5P,EAAOsO,OAAO,GAAGsB,SAE5B,IAAIK,EAAWlkB,EAAEqV,SAAWrV,EAAEoV,MAC9BnB,EAAOkQ,SAASN,OAA6B,IAAbK,UAE3B,CAIN,IAHA,IAAIE,EAASnQ,EAAOiP,eAAexL,iBAAiB,IAAMzX,EAAEiI,QAAQuM,YAAc,2BAC9EsO,EAAW9O,EAAOiP,eAAexL,iBAAiB,qBAE7C3H,EAAM,EAAGE,EAAS+T,EAASljB,OAAQiP,EAAME,EAAQF,IACzDkE,EAAOiP,eAAehT,iBAAiB8T,EAASjU,IAAM,YACrD,EAAIsD,EAAKwE,aAAapW,KAAKwW,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,qBAAsBxU,EAAEiI,QAAQuM,YAAc,gBAIvH,IAAK,IAAIzE,EAAM,EAAGsI,EAAU2L,EAAUnjB,OAAQkP,EAAMsI,EAAStI,IAC5DiE,EAAOiP,eAAehT,iBAAiB+T,EAAUjU,IAAM,YACtD,EAAIqD,EAAKuD,UAAUnV,KAAKwW,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,qBAAsBxU,EAAEiI,QAAQuM,YAAc,gBAIpH,IAAK,IAAIlE,EAAM,EAAG8T,EAAUtB,EAASjiB,OAAQyP,EAAM8T,EAAS9T,IAC3DwS,EAASxS,GAAKL,iBAAiB,SAAS,SAAUlQ,GACjD,IAAIkkB,EAAWlkB,EAAEqV,SAAWrV,EAAEoV,MAC9BnB,EAAOkQ,SAAS1iB,KAAKuC,WAA2B,IAAbkgB,MAIrC,IAAK,IAAIzT,EAAM,EAAG6T,EAAUF,EAAOtjB,OAAQ2P,EAAM6T,EAAS7T,IACzD2T,EAAO3T,GAAKP,iBAAiB,SAAS,SAAUlQ,GAC/C,IAAIukB,GAAQ,EAAIlR,EAAKmR,UAAU/iB,MAAM,SAAUgjB,GAC9C,MAAsB,UAAfA,EAAGhb,WACR,GACCgE,GAAQ,EAAIvH,EAASwH,aAAa,QAAS6W,GAC/CA,EAAM3W,cAAcH,GACpBzN,EAAE6e,oBAIJ5K,EAAOiP,eAAehT,iBAAiB,WAAW,SAAUlQ,GAC3DA,EAAE8e,qBAIJ,IAAK,IAAI4F,EAAM,EAAGC,EAAUX,EAASljB,OAAQ4jB,EAAMC,EAASD,IAC3DzQ,EAAOmP,eAAelT,iBAAiB8T,EAASU,IAAM,WACjDjjB,KAAKwW,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,0BAA0BhJ,SAAS3K,SACvF,EAAIuS,EAAKwE,aAAapW,KAAKwW,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,qBAAsBxU,EAAEiI,QAAQuM,YAAc,gBAKxH,IAAK,IAAImQ,EAAM,EAAGC,EAAUZ,EAAUnjB,OAAQ8jB,EAAMC,EAASD,IAC5D3Q,EAAOmP,eAAelT,iBAAiB+T,EAAUW,IAAM,YACtD,EAAIvR,EAAKuD,UAAUnV,KAAKwW,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,qBAAsBxU,EAAEiI,QAAQuM,YAAc,gBAIpHR,EAAOmP,eAAelT,iBAAiB,WAAW,SAAUlQ,GAC3DA,EAAE8e,qBAGE7K,EAAO/L,QAAQ4c,oBAWnB,EAAIzR,EAAKuD,UAAU3C,EAAOkC,WAAWlC,EAAOmC,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,qBAAsBxU,EAAEiI,QAAQuM,YAAc,4BAVjJR,EAAOkC,WAAWlC,EAAOmC,WAAWlG,iBAAiB,iBAAiB,YACrE,EAAImD,EAAKuD,UAAU3C,EAAOkC,WAAWlC,EAAOmC,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,qBAAsBxU,EAAEiI,QAAQuM,YAAc,8BAGlJR,EAAOkC,WAAWlC,EAAOmC,WAAWlG,iBAAiB,kBAAkB,WACjE/D,EAAMqD,SACV,EAAI6D,EAAKwE,aAAa5D,EAAOkC,WAAWlC,EAAOmC,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,qBAAsBxU,EAAEiI,QAAQuM,YAAc,+BAOvJtI,EAAM+D,iBAAiB,cAAc,WACpC+D,EAAO8Q,qBAG8B,KAAlC9Q,EAAO/L,QAAQia,iBAClBlO,EAAO+Q,gBAAkBpd,EAAW5B,QAAQ0R,iBAAiBzD,EAAO/L,QAAQia,gBAE5EhW,EAAM+D,iBAAiB,cAAc,WACpC+D,EAAOgR,sBAIVnC,YAAa,SAAqB7O,GAC7BA,IACCA,EAAO8O,UACV9O,EAAO8O,SAAShS,SAEbkD,EAAOiR,UACVjR,EAAOiR,SAASnU,SAEbkD,EAAOgP,cACVhP,EAAOgP,aAAalS,SAEjBkD,EAAOiP,gBACVjP,EAAOiP,eAAenS,SAEnBkD,EAAOmP,gBACVnP,EAAOmP,eAAerS,WAIzBoU,cAAe,WACd,IAAIllB,EAAIwB,KACRxB,EAAEqiB,aACFriB,EAAEoiB,YAAYpiB,EAAGA,EAAEkW,WAAWlW,EAAE2Y,UAAW3Y,EAAEkW,WAAWlW,EAAE2X,QAAS3X,EAAEkM,QAEtEmW,WAAY,WACX,IAAIriB,EAAIwB,KACJ2jB,EAA6B,OAAjBnlB,EAAEuiB,WAAsBviB,EAAE0L,KAAK+L,iBAAiB,SAAWzX,EAAEuiB,WACzExV,EAAQoY,EAAUtkB,OAEtBb,EAAEsiB,OAAS,GACX,IAAK,IAAIhiB,EAAI,EAAGA,EAAIyM,EAAOzM,IAAK,CAC/B,IAAI8kB,EAAQD,EAAU7kB,GAClBujB,EAAUuB,EAAMzb,aAAa,WAAWF,eAAiB,GACzDma,EAAU5jB,EAAEgJ,GAAK,UAAY1I,EAAI,IAAM8kB,EAAMzb,aAAa,QAAU,IAAMka,EAC9E7jB,EAAEsiB,OAAOlf,KAAK,CACbwgB,QAASA,EACTC,QAASA,EACTvY,IAAK8Z,EAAMzb,aAAa,OACxB0Z,KAAM+B,EAAMzb,aAAa,QACzB+V,MAAO0F,EAAMzb,aAAa,UAAY,GACtC0b,QAAS,GACTC,UAAU,MAIbpB,SAAU,SAAkBN,EAAS2B,GAOpC,IALA,IAAIvlB,EAAIwB,KACJgkB,EAASxlB,EAAEijB,eAAexL,iBAAiB,uBAC3CqL,EAAW9iB,EAAEijB,eAAexL,iBAAiB,IAAMzX,EAAEiI,QAAQuM,YAAc,qBAC3E4Q,EAAQplB,EAAEijB,eAAejL,cAAc,gBAAkB4L,EAAU,MAE9DtjB,EAAI,EAAGyM,EAAQyY,EAAO3kB,OAAQP,EAAIyM,EAAOzM,IACjDklB,EAAOllB,GAAGmlB,SAAU,EAGrB,IAAK,IAAIC,EAAM,EAAGC,EAAU7C,EAASjiB,OAAQ6kB,EAAMC,EAASD,KAC3D,EAAItS,EAAKwE,aAAakL,EAAS4C,GAAM1lB,EAAEiI,QAAQuM,YAAc,qBAG9D4Q,EAAMK,SAAU,EAIhB,IAHA,IAAItB,GAAS,EAAI/Q,EAAKmR,UAAUa,GAAO,SAAUZ,GAChD,OAAO,EAAIpR,EAAKmK,UAAUiH,EAAIxkB,EAAEiI,QAAQuM,YAAc,8BAE9CoR,EAAO,EAAGC,EAAU1B,EAAOtjB,OAAQ+kB,EAAOC,EAASD,KAC3D,EAAIxS,EAAKuD,UAAUwN,EAAOyB,GAAO5lB,EAAEiI,QAAQuM,YAAc,qBAG1D,GAAgB,SAAZoP,EACH5jB,EAAEwjB,cAAgB,MAClB,EAAIpQ,EAAKwE,aAAa5X,EAAEijB,eAAgBjjB,EAAEiI,QAAQuM,YAAc,yBAEhE,IAAK,IAAIsR,EAAO,EAAGC,EAAU/lB,EAAEsiB,OAAOzhB,OAAQilB,EAAOC,EAASD,IAAQ,CACrE,IAAIE,EAAShmB,EAAEsiB,OAAOwD,GACtB,GAAIE,EAAOpC,UAAYA,EAAS,CACP,OAApB5jB,EAAEwjB,gBACL,EAAIpQ,EAAKuD,UAAU3W,EAAEijB,eAAgBjjB,EAAEiI,QAAQuM,YAAc,oBAE9DxU,EAAEwjB,cAAgBwC,EAClBhmB,EAAE8iB,SAASvZ,aAAa,OAAQvJ,EAAEwjB,cAAcK,SAChD7jB,EAAE8kB,kBACF,OAKH,IAAItX,GAAQ,EAAIvH,EAASwH,aAAa,iBAAkBzN,EAAEkM,OAC1DsB,EAAMwS,OAAOiG,QAAUjmB,EAAEwjB,cACzBxjB,EAAEkM,MAAMyB,cAAcH,GAEjB+X,GACJxjB,YAAW,WACV/B,EAAEkW,WAAWlW,EAAEmW,WAAWiE,UACxB,MAGL0J,cAAe,WACd,IAAI9jB,EAAIwB,KAERxB,EAAEujB,cACEvjB,EAAEujB,YAAcvjB,EAAEsiB,OAAOzhB,QAC5Bb,EAAEyjB,gBAAiB,EACnBzjB,EAAEkmB,UAAUlmB,EAAEujB,eAEdvjB,EAAEyjB,gBAAiB,EACnBzjB,EAAEmmB,mBAGJC,UAAW,SAAmBpc,GAC7B,OAAOA,EAAIqc,MAAM,qDAElBC,iBAAkB,SAA0B1f,GAC3C,OAAO2f,mBAAmBC,KAAK5f,GAAK6f,MAAM,IAAIC,KAAI,SAAUC,GAC3D,MAAO,KAAO,KAAOA,EAAEC,WAAW,GAAGtd,SAAS,KAAK7E,OAAO,MACxDoiB,KAAK,MAETC,QAAS,SAAiBxb,EAAK6E,GAC1B3O,KAAK4kB,UAAU9a,GAElB6E,EADiB3O,KAAK8kB,iBAAiBhb,EAAImb,MAAM,KAAK,MAGtD,EAAIrT,EAAK2T,MAAMzb,EAAK,OAAQ6E,IAG9B6W,iBAAkB,SAA0BC,EAAQ3b,GACnD,IAAI4b,EAAYD,EAAOzY,UAAU,EAAGyY,EAAOE,YAAY,KAAO,GAC1DC,EAAY,GACZC,EAAQ/b,EAAImb,MAAM,MAClB7L,EAAU,EACV0M,EAAM,EACNC,EAAW,CAAEC,MAAO5M,GACpB6M,GAA4B,EAC5BC,GAAoB,EACpBC,OAAiBplB,EAErB,IACC,IAAK,IAA0CqlB,EAAtCC,EAAYR,EAAM3hB,OAAOC,cAAsB8hB,GAA6BG,EAAQC,EAAUC,QAAQhkB,MAAO2jB,GAA4B,EAAM,CACvJ,IAAI/mB,EAAIknB,EAAM7jB,MAEVgkB,EAAIrnB,EAAE2lB,MAAM,sBACZ0B,IACHR,EAASD,IAAMA,EACfC,EAASpH,IAAMoH,EAASC,MAAQ3Q,WAAWkR,EAAE,IAC7CT,KAEG5mB,EAAE2lB,MAAM,WACXkB,EAASnb,KAAO1L,EAChB6mB,EAASjc,IAAM4b,EAAYK,EAASnb,WAEf7J,IAAlBglB,EAASnb,OACZgb,EAAUhkB,KAAKmkB,GACf3M,EAAU2M,EAASpH,IACnBoH,EAASS,QAAU,SAAUznB,GAC5B,IAAI4D,EAAO,KACX,OAAO,WAMN,OALa,OAATA,IACHA,EAAO,IAAIlC,SAAQ,SAAUkB,IAC5B,EAAIiQ,EAAK2T,MAAMxmB,EAAE+K,IAAK,OAAQnI,OAGzBgB,GARU,CAUjBojB,GACFA,EAAW,CAAEC,MAAO5M,KAGrB,MAAO5V,GACR0iB,GAAoB,EACpBC,EAAiB3iB,EAjClB,QAmCC,KACMyiB,GAA6BI,EAAUI,QAC3CJ,EAAUI,SAFZ,QAKC,GAAIP,EACH,MAAMC,GAKT,OAAOP,GAERlB,UAAW,SAAmBlZ,GAC7B,IAAI7E,EAAQ3G,KAERxB,EAAIwB,KACJ4jB,EAAQplB,EAAEsiB,OAAOtV,QAEPzK,IAAV6iB,QAAsC7iB,IAAd6iB,EAAM9Z,KAAmC,KAAd8Z,EAAM9Z,KAC5D9J,KAAKslB,QAAQ1B,EAAM9Z,KAAK,SAAU4c,GACjC,GAAI9C,EAAM9Z,IAAI+a,MAAM,UAAW,CAC9B,IAAIe,EAAYjf,EAAM6e,iBAAiB5B,EAAM9Z,IAAK4c,GAC9CC,GAAQ,EACZ/C,EAAMgD,WAAa,SAAU5I,EAAMrP,GAClC,IAAIgY,EAAJ,CACA,IAAIE,GAAQ,EAERC,EAAQ,SAAe/nB,GACtBif,EAAOjf,EAAEinB,OAAShI,EAAOjf,EAAE4f,MAC9BkI,GAAQ,EACR9nB,EAAEynB,UAAU1kB,MAAK,SAAUqjB,GAC1B,IAAItB,EAAUxf,EAAOE,QAAQwiB,kBAAkBC,OAAOC,MAAM9B,GAC5DxW,EAASkV,GACT,IAAK,IAAIqD,EAAU,EAAGA,EAAU,EAAGA,IAAW,CAC7C,IAAIC,EAAUpoB,EAAE+mB,IAAMoB,OACKnmB,IAAvB6kB,EAAUuB,IACbvB,EAAUuB,GAASX,gBAOpBY,GAA6B,EAC7BC,GAAqB,EACrBC,OAAkBvmB,EAEtB,IACC,IAAK,IAA+CwmB,EAA3CC,EAAa5B,EAAU1hB,OAAOC,cAAuBijB,GAA8BG,EAASC,EAAWlB,QAAQhkB,MAAO8kB,GAA6B,EAAM,CAGjKN,EAFQS,EAAOhlB,QAIf,MAAOiB,GACR6jB,GAAqB,EACrBC,EAAkB9jB,EARnB,QAUC,KACM4jB,GAA8BI,EAAWf,QAC7Ce,EAAWf,SAFb,QAKC,GAAIY,EACH,MAAMC,GAsDT,OAjDKT,GACJroB,EAAE8mB,QAAQ1B,EAAM9Z,KAAK,SAAU4c,GAE9B,GAAwB,IADxBd,EAAYpnB,EAAEgnB,iBAAiB5B,EAAM9Z,IAAK4c,IAC5BrnB,OACbsnB,GAAQ,MACF,CACN,IAAIc,EAAS,SAAgB1oB,GACxBif,EAAOjf,EAAEinB,OAAShI,EAAOjf,EAAE4f,MAC9BkI,GAAQ,EACR9nB,EAAEynB,UAAU1kB,MAAK,SAAUqjB,GAC1B,IAAItB,EAAUxf,EAAOE,QAAQwiB,kBAAkBC,OAAOC,MAAM9B,GAC5DxW,EAASkV,GACT,IAAK,IAAI6D,EAAS,EAAGA,EAAS,EAAGA,IAAU,CAC1C,IAAIP,EAAUpoB,EAAE+mB,IAAM4B,OACK3mB,IAAvB6kB,EAAUuB,IACbvB,EAAUuB,GAASX,gBAOpBmB,GAA6B,EAC7BC,GAAqB,EACrBC,OAAkB9mB,EAEtB,IACC,IAAK,IAA+C+mB,EAA3CC,EAAanC,EAAU1hB,OAAOC,cAAuBwjB,GAA8BG,EAASC,EAAWzB,QAAQhkB,MAAOqlB,GAA6B,EAAM,CAGjKF,EAFQK,EAAOvlB,QAIf,MAAOiB,GACRokB,GAAqB,EACrBC,EAAkBrkB,EARnB,QAUC,KACMmkB,GAA8BI,EAAWtB,QAC7CsB,EAAWtB,SAFb,QAKC,GAAImB,EACH,MAAMC,QAOL,YAGRjE,EAAMC,QAAuB,iBAAN6C,GAAkB,cAAcsB,KAAKtB,GAAKriB,EAAOE,QAAQwiB,kBAAkBkB,KAAKhB,MAAMP,GAAKriB,EAAOE,QAAQwiB,kBAAkBC,OAAOC,MAAMP,GAChK9C,EAAMgD,WAAa,SAAU5I,EAAMrP,GAClC,OAAOA,EAASiV,EAAMC,UAGxBD,EAAME,UAAW,EACjBtlB,EAAE0pB,kBAAkBtE,GACpBplB,EAAE8jB,gBAEiB,WAAfsB,EAAM/B,KACTrjB,EAAE2pB,YAAYvE,GACW,aAAfA,EAAM/B,MAAwBrjB,EAAEmiB,cACzCniB,EAAE4pB,aAAaxE,GACfplB,EAAEmiB,aAAc,MAEhB,WACFniB,EAAE6pB,kBAAkBzE,EAAMxB,SAC1B5jB,EAAE8jB,oBAIL4F,kBAAmB,SAA2BtE,GAC7C,IAAIplB,EAAIwB,KACJ2E,EAAOif,EAAMvB,QACbtS,EAAS5J,EAAW5B,QAAQoD,eAAe,GAAKic,EAAMxB,SAE1D,GAAKrS,EAAL,CAIA,IAAImO,EAAQ0F,EAAM1F,MAEJ,KAAVA,IACHA,EAAQ7M,EAAO9M,QAAQ/F,EAAE6F,EAAOE,QAAQe,SAASgjB,MAAM3jB,KAAUA,GAElEoL,EAAO2R,UAAW,EAIlB,IAHA,IAAI6G,GAAiB,EAAI3W,EAAKmR,UAAUhT,GAAQ,SAAUiT,GACzD,OAAO,EAAIpR,EAAKmK,UAAUiH,EAAIxkB,EAAEiI,QAAQuM,YAAc,8BAE9ClU,EAAI,EAAGyM,EAAQgd,EAAelpB,OAAQP,EAAIyM,EAAOzM,IACzDypB,EAAezpB,GAAGmU,UAAYiL,EAG/B,GAAI1f,EAAEiI,QAAQ2Z,gBAAkBzb,EAAM,CACrCoL,EAAOkU,SAAU,EACjB,IAAIjY,GAAQ,EAAIvH,EAASwH,aAAa,QAAS8D,GAC/CA,EAAO5D,cAAcH,MAGvBqc,kBAAmB,SAA2BjG,GAC7C,IAAIxI,EAAUzT,EAAW5B,QAAQoD,eAAe,GAAKya,GACrD,GAAIxI,EAAS,CACZ,IAAI4O,EAAS5O,EAAQ8D,QAAQ,MACzB8K,GACHA,EAAOlZ,WAIV6S,eAAgB,SAAwBC,EAASzd,EAAMuZ,GACtD,IAAI1f,EAAIwB,KACM,KAAVke,IACHA,EAAQ7M,EAAO9M,QAAQ/F,EAAE6F,EAAOE,QAAQe,SAASgjB,MAAM3jB,KAAUA,GAGlEnG,EAAEijB,eAAejL,cAAc,MAAMvD,WAAa,cAAgBzU,EAAEiI,QAAQuM,YAA1B,2DAA2GxU,EAAEiI,QAAQuM,YAArH,kCAA8KxU,EAAEgJ,GAAK,kBAAoB4a,EAAU,YAAcA,EAAjO,4BAAgR5jB,EAAEiI,QAAQuM,YAA1R,gCAAiVoP,EAAU,KAAOlE,EAAlW,2BAEnDyG,eAAgB,WACf,IAAInmB,EAAIwB,KAEJyoB,GAAe,EAEnB,GAAIjqB,EAAEiI,QAAQ+Z,4BAA6B,CAC1C,IAAK,IAAI1hB,EAAI,EAAGyM,EAAQ/M,EAAEsiB,OAAOzhB,OAAQP,EAAIyM,EAAOzM,IAAK,CACxD,IAAI+iB,EAAOrjB,EAAEsiB,OAAOhiB,GAAG+iB,KACvB,IAAc,cAATA,GAAiC,aAATA,IAAwBrjB,EAAEsiB,OAAOhiB,GAAGglB,SAAU,CAC1E2E,GAAe,EACf,OAIFjqB,EAAEijB,eAAe1L,MAAMmE,QAAUuO,EAAe,GAAK,OACrDjqB,EAAE0V,oBAGJoP,gBAAiB,WAChB,QAAoBviB,IAAhBf,KAAK8gB,OAAT,CAIA,IAAItiB,EAAIwB,KACJ4jB,EAAQplB,EAAEwjB,cA2Bd,GAAc,OAAV4B,GAAkBA,EAAME,SAAU,CACrC,IAAIhlB,EAAIN,EAAEkqB,oBAAoB9E,EAAMC,QAASrlB,EAAEkM,MAAMqO,aACrD,GAAIja,GAAK,EAAG,CACX,IAAI6pB,EAAO/E,EAAMC,QAAQ/kB,GAAG6pB,KAM5B,MALiD,mBAAtCnqB,EAAEiI,QAAQmiB,0BAAwCD,EAAOnqB,EAAEiI,QAAQmiB,wBAAwBD,IACtGnqB,EAAEgjB,aAAavO,UA/BF,SAAkB4V,GAChC,IAAIC,EAAM3iB,EAAW5B,QAAQgD,cAAc,OAC3CuhB,EAAI7V,UAAY4V,EAIhB,IAFA,IAAIE,EAAUD,EAAIE,qBAAqB,UACnClqB,EAAIiqB,EAAQ1pB,OACTP,KACNiqB,EAAQjqB,GAAGwQ,SAIZ,IADA,IAAI2Z,EAAcH,EAAIE,qBAAqB,KAClCE,EAAO,EAAGzqB,EAAIwqB,EAAY5pB,OAAQ6pB,EAAOzqB,EAAGyqB,IAIpD,IAHA,IAAIC,EAAgBF,EAAYC,GAAME,WAClCA,EAAapmB,MAAMN,UAAUO,MAAM7D,KAAK+pB,GAEnCrY,EAAI,EAAGvF,EAAQ6d,EAAW/pB,OAAQyR,EAAIvF,EAAOuF,IACjDsY,EAAWtY,GAAGlG,KAAKye,WAAW,OAASD,EAAWtY,GAAGvO,MAAM8mB,WAAW,cACzEJ,EAAYC,GAAM5Z,SACe,UAAvB8Z,EAAWtY,GAAGlG,MACxBqe,EAAYC,GAAM7Z,gBAAgB+Z,EAAWtY,GAAGlG,MAInD,OAAOke,EAAI7V,UAQiBqW,CAASX,GACpCnqB,EAAEgjB,aAAazO,UAAYvU,EAAEiI,QAAQuM,YAAc,kBAAoB4Q,EAAMC,QAAQ/kB,GAAGyqB,YAAc,IACtG/qB,EAAE8iB,SAASvL,MAAMmE,QAAU,QAC3B1b,EAAE8iB,SAASvL,MAAMlK,OAAS,OAG3BrN,EAAE8iB,SAASvL,MAAMmE,QAAU,YAE3B1b,EAAE8iB,SAASvL,MAAMmE,QAAU,SAG7BiO,YAAa,SAAqBvE,GACjC,IAAIplB,EAAIwB,KACRxB,EAAEgrB,OAAS5F,EACXplB,EAAEgrB,OAAO3F,QAAQ4F,KAAO,CAACjrB,EAAEgrB,OAAO3F,QAAQxkB,QAC1Cb,EAAEkrB,UAAU,IAEbA,UAAW,SAAmBle,GAC7B,IAAIme,EAAS3pB,KAETxB,EAAIwB,KAER,QAAiBe,IAAbvC,EAAEsiB,aAA8C/f,IAAtBvC,EAAE+kB,gBAAhC,CAIA,IAAI/a,EAAMhK,EAAEgrB,OAAO3F,QAAQrY,GAAOmd,KAE9BiB,EAAMprB,EAAEgrB,OAAO3F,QAAQrY,GAAOie,KAElC,QAAY1oB,IAAR6oB,QAAoC7oB,IAAf6oB,EAAIC,OAAsB,CAClD,IAAIC,EAAQ3jB,EAAW5B,QAAQgD,cAAc,OAC7CuiB,EAAMhgB,IAAMtB,EACZshB,EAAMrb,iBAAiB,QAAQ,WAC9B,IAAIxO,EAAO0pB,EACPI,GAAU,EAAInY,EAAKmR,UAAU9iB,GAAM,SAAU+iB,GAChD,OAAO+G,EAAQ/G,MAEhB/iB,EAAK8V,MAAMmE,QAAU,OACrB1b,EAAE+kB,gBAAgBtQ,WAAahT,EAAKgT,WACpC,EAAIrB,EAAKiY,QAAQrrB,EAAE+kB,gBAAgB/M,cAAcsT,IACjD,IAAK,IAAIhrB,EAAI,EAAGyM,EAAQwe,EAAQ1qB,OAAQP,EAAIyM,EAAOzM,KAClD,EAAI8S,EAAKoY,SAASD,EAAQjrB,GAAI,QAGhCN,EAAEgrB,OAAO3F,QAAQrY,GAAOie,KAAOG,EAAME,OAC/B,KAAK,EAAIlY,EAAKmY,SAASH,GAAM,CACnC,IAAIK,GAAW,EAAIrY,EAAKmR,UAAU9iB,MAAM,SAAU+iB,GACjD,OAAOiH,EAASjH,OAEjB,EAAIpR,EAAKiY,QAAQrrB,EAAE+kB,gBAAgB/M,cAAcoT,IACjD,IAAK,IAAI9qB,EAAI,EAAGyM,EAAQ0e,EAAS5qB,OAAQP,EAAIyM,EAAOzM,KACnD,EAAI8S,EAAKoY,SAASC,EAASnrB,OAI9B0kB,cAAe,WACd,IAAIhlB,EAAIwB,KAER,QAAoBe,IAAhBf,KAAKwpB,OAAT,CAIA,IAAIA,EAAShrB,EAAEgrB,OACX1qB,EAAIN,EAAEkqB,oBAAoBc,EAAO3F,QAASrlB,EAAEkM,MAAMqO,aAElDja,GAAK,GACRN,EAAEkrB,UAAU5qB,KAGdspB,aAAc,SAAsB3E,GACnC,IAAIjlB,EAAIwB,KACJuL,EAAQkY,EAASI,QAAQxkB,OAE7B,GAAKkM,EAAL,CAIA/M,EAAEmjB,eAAenL,cAAc,MAAMvD,UAAY,GAEjD,IAAK,IAAInU,EAAI,EAAGA,EAAIyM,EAAOzM,IAC1BN,EAAEmjB,eAAenL,cAAc,MAAMvD,WAAa,cAAgBzU,EAAEiI,QAAQuM,YAA1B,iJAAsMxU,EAAEiI,QAAQuM,YAAhN,kCAAyQxU,EAAEgJ,GAAK,kBAAoBhJ,EAAEgJ,GAAK,aAAe1I,EAAI,YAAc2kB,EAASI,QAAQ/kB,GAAGknB,MAAhW,4BAA6YxnB,EAAEiI,QAAQuM,YAAvZ,gCAA8cxU,EAAEgJ,GAAK,aAAe1I,EAAI,KAAO2kB,EAASI,QAAQ/kB,GAAG6pB,KAAngB,gBAMnD,IAHA,IAAI3E,EAASxlB,EAAEmjB,eAAe1L,iBAAiB,uBAC3C0M,EAASnkB,EAAEmjB,eAAe1L,iBAAiB,IAAMzX,EAAEiI,QAAQuM,YAAc,2BAEpEkX,EAAO,EAAGC,EAAWnG,EAAO3kB,OAAQ6qB,EAAOC,EAAUD,IAC7DlG,EAAOkG,GAAMxI,UAAW,EACxBsC,EAAOkG,GAAMjG,SAAU,EACvBD,EAAOkG,GAAMzb,iBAAiB,SAAS,SAAUlQ,GAChD,IACI6rB,EAAY5rB,EAAEmjB,eAAe1L,iBAAiB,MAC9CiI,GAAQ,EAAItM,EAAKmR,UAFV/iB,MAE0B,SAAUgjB,GAC9C,OAAO,EAAIpR,EAAKmK,UAAUiH,EAAIxkB,EAAEiI,QAAQuM,YAAc,8BACpD,GAJQhT,KAMNikB,SAAU,EANJjkB,KAONoI,WAAWL,aAAa,gBAAgB,IAC7C,EAAI6J,EAAKuD,UAAU+I,EAAO1f,EAAEiI,QAAQuM,YAAc,sBAClD,EAAIpB,EAAKwE,aAAa5X,EAAEmjB,eAAenL,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,qBAAsBxU,EAAEiI,QAAQuM,YAAc,qBAEjI,IAAK,IAAIqX,EAAO,EAAGC,EAAWF,EAAU/qB,OAAQgrB,EAAOC,EAAUD,IAChED,EAAUC,GAAMtiB,aAAa,gBAAgB,QAItB,KADTxJ,EAAEqV,SAAWrV,EAAEoV,QAE7BpT,YAAW,WACV/B,EAAEkW,WAAWlW,EAAEmW,WAAWiE,UACxB,KAGJpa,EAAEkM,MAAMuO,eAAe5D,WAtBZrV,KAsB4BuC,QACnC/D,EAAEkM,MAAMqD,QACXvP,EAAEkM,MAAM0D,UAKX,IAAK,IAAImc,EAAO,EAAGC,EAAW7H,EAAOtjB,OAAQkrB,EAAOC,EAAUD,IAC7D5H,EAAO4H,GAAM9b,iBAAiB,SAAS,SAAUlQ,GAChD,IAAIukB,GAAQ,EAAIlR,EAAKmR,UAAU/iB,MAAM,SAAUgjB,GAC9C,MAAsB,UAAfA,EAAGhb,WACR,GACCgE,GAAQ,EAAIvH,EAASwH,aAAa,QAAS6W,GAC/CA,EAAM3W,cAAcH,GACpBzN,EAAE6e,sBAILsL,oBAAqB,SAA6B5H,EAAQ/H,GAOzD,IANA,IAAI0R,EAAK,EACLC,EAAK5J,EAAOzhB,OAAS,EACrBsrB,OAAM,EACN3E,OAAQ,EACRlb,OAAO,EAEJ2f,GAAMC,GAAI,CAKhB,GAHA1E,EAAQlF,EADR6J,EAAMF,EAAKC,GAAM,GACG1E,MACpBlb,EAAOgW,EAAO6J,GAAK7f,KAEfiO,GAAeiN,GAASjN,EAAcjO,EACzC,OAAO6f,EACG3E,EAAQjN,EAClB0R,EAAKE,EAAM,EACD3E,EAAQjN,IAClB2R,EAAKC,EAAM,GAIb,OAAQ,KAIVtmB,EAAOE,QAAQe,SAAW,CACzBgjB,MAAO,CACNsC,GAAI,iBACJC,GAAI,gBACJC,GAAI,cACJC,GAAI,kBACJC,GAAI,iBACJC,GAAI,eACJC,GAAI,eACJ,QAAS,0BACT,QAAS,0BACTC,GAAI,gBACJC,GAAI,aACJC,GAAI,cACJC,GAAI,aACJ1mB,GAAI,eACJ2mB,GAAI,gBACJC,GAAI,gBACJC,GAAI,eACJC,GAAI,cACJC,GAAI,gBACJC,GAAI,cACJ5I,GAAI,aACJ6I,GAAI,sBACJC,GAAI,cACJpB,GAAI,aACJqB,GAAI,iBACJC,GAAI,iBACJxkB,GAAI,kBACJykB,GAAI,aACJC,GAAI,eACJC,GAAI,gBACJC,GAAI,cACJC,GAAI,eACJC,GAAI,kBACJC,GAAI,kBACJC,GAAI,aACJC,GAAI,eACJC,GAAI,iBACJC,GAAI,eACJC,GAAI,cACJC,GAAI,kBACJC,GAAI,gBACJC,GAAI,eACJC,GAAI,eACJC,GAAI,cACJC,GAAI,iBACJC,GAAI,eACJC,GAAI,eACJC,GAAI,eACJC,GAAI,eACJC,GAAI,YACJC,GAAI,eACJC,GAAI,iBACJC,GAAI,kBACJC,GAAI,aACJC,GAAI,iBAINvpB,EAAOE,QAAQwiB,kBAAoB,CAClCC,OAAQ,CACP6G,QAAS,qHAET5G,MAAO,SAAe6G,GAQrB,IAPA,IAAIjI,EAAQiI,EAAU7I,MAAM,SACxBpB,EAAU,GAEV3D,OAAW,EACXyI,OAAO,EACPY,OAAa,EAERzqB,EAAI,EAAGyM,EAAQsa,EAAMxmB,OAAQP,EAAIyM,EAAOzM,IAAK,CAGrD,IAFAohB,EAAWlgB,KAAK6tB,QAAQ7F,KAAKnC,EAAM/mB,MAEnBA,EAAI+mB,EAAMxmB,OAAQ,CAQjC,IAPIP,EAAI,GAAK,GAAsB,KAAjB+mB,EAAM/mB,EAAI,KAC3ByqB,EAAa1D,EAAM/mB,EAAI,IAIxB6pB,EAAO9C,IAFP/mB,GAGAA,IACoB,KAAb+mB,EAAM/mB,IAAaA,EAAI+mB,EAAMxmB,QACnCspB,EAAOA,EAAO,KAAO9C,EAAM/mB,GAC3BA,IAED6pB,EAAgB,OAATA,EAAgB,GAAKA,EAAK7G,OAAOlc,QAAQ,8EAA+E,uCAC/Hie,EAAQjiB,KAAK,CACZ2nB,WAAYA,EACZvD,MAAyD,KAAlD,EAAIrO,EAAMoW,uBAAuB7N,EAAS,IAAY,IAAQ,EAAIvI,EAAMoW,uBAAuB7N,EAAS,IAC/GpV,MAAM,EAAI6M,EAAMoW,uBAAuB7N,EAAS,IAChDyI,KAAMA,EACNqF,SAAU9N,EAAS,KAGrBqJ,EAAa,GAEd,OAAO1F,IAIToE,KAAM,CACLhB,MAAO,SAAe6G,GACrB,IACInZ,EADYxO,EAAW5B,QAAQ0pB,WAAU,IAAIC,WAAYC,gBAAgBL,EAAW,mBAAmB1Y,iBACjFoB,cAAc,OACpCqP,EAAQlR,EAAUsB,iBAAiB,KACnCmY,EAAYjoB,EAAW5B,QAAQoD,eAAegN,EAAUxM,aAAa,UACrE0b,EAAU,GAEVwK,OAAS,EAEb,GAAID,EAAW,CACdA,EAAU/e,gBAAgB,MAC1B,IAAI+Z,EAAagF,EAAUhF,WAC3B,GAAIA,EAAW/pB,OAAQ,CACtBgvB,EAAS,GACT,IAAK,IAAIvvB,EAAI,EAAGyM,EAAQ6d,EAAW/pB,OAAQP,EAAIyM,EAAOzM,IACrDuvB,EAAOjF,EAAWtqB,GAAG8L,KAAKqa,MAAM,KAAK,IAAMmE,EAAWtqB,GAAGyD,OAK5D,IAAK,IAAI+rB,EAAO,EAAGC,EAAW1I,EAAMxmB,OAAQivB,EAAOC,EAAUD,IAAQ,CACpE,IAAIvY,OAAQ,EACRyY,EAAQ,CACXxI,MAAO,KACPlb,KAAM,KACNiL,MAAO,KACP4S,KAAM,MAgBP,GAbI9C,EAAMyI,GAAMnmB,aAAa,WAC5BqmB,EAAMxI,OAAQ,EAAIrO,EAAMoW,uBAAuBlI,EAAMyI,GAAMnmB,aAAa,YAEpEqmB,EAAMxI,OAASH,EAAMyI,EAAO,GAAGnmB,aAAa,SAChDqmB,EAAMxI,OAAQ,EAAIrO,EAAMoW,uBAAuBlI,EAAMyI,EAAO,GAAGnmB,aAAa,SAEzE0d,EAAMyI,GAAMnmB,aAAa,SAC5BqmB,EAAM1jB,MAAO,EAAI6M,EAAMoW,uBAAuBlI,EAAMyI,GAAMnmB,aAAa,UAEnEqmB,EAAM1jB,MAAQ+a,EAAMyI,EAAO,GAAGnmB,aAAa,WAC/CqmB,EAAM1jB,MAAO,EAAI6M,EAAMoW,uBAAuBlI,EAAMyI,EAAO,GAAGnmB,aAAa,WAGxEkmB,EAEH,IAAK,IAAII,KADT1Y,EAAQ,GACWsY,EAClBtY,GAAS0Y,EAAS,KAAOJ,EAAOI,GAAU,IAGxC1Y,IACHyY,EAAMzY,MAAQA,GAEK,IAAhByY,EAAMxI,QACTwI,EAAMxI,MAAQ,IAEfwI,EAAM7F,KAAO9C,EAAMyI,GAAMrb,UAAU6O,OAAOlc,QAAQ,iFAAkF,uCACpIie,EAAQjiB,KAAK4sB,GAEd,OAAO3K,MAKR,CAAC,GAAK,GAAG,EAAI,EAAE,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,EAAE,EAAI,IAAI6K,GAAG,CAAC,SAASnvB,EAAQC,EAAOL,GACnF,aAEA,IAEIgH,EAAaD,EAFD3G,EAAQ,IAIpB+R,EAAU/R,EAAQ,IAElBgS,EAAWrL,EAAuBoL,GAIlCD,EAASnL,EAFD3G,EAAQ,IAIhB+G,EAAa/G,EAAQ,IAErBkF,EAAWlF,EAAQ,IAEnBqS,EAAOrS,EAAQ,IAEnB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvFF,OAAOuD,OAAOiK,EAAQO,OAAQ,CAC7B8c,SAAU,KAEVC,WAAY,KAEZC,sBAAuB,KAEvBC,0BAA0B,EAE1BC,YAAa,aAEbC,YAAa,WAEbC,YAAa,KAGdnrB,OAAOuD,OAAOkK,EAAShN,QAAQ7B,UAAW,CACzCwsB,YAAa,SAAqB1c,EAAQ2E,EAAUhB,EAAQzL,GAC3D,IAAKpE,EAAWyO,aAAczO,EAAWsC,SAAW5I,KAAKyG,QAAQqoB,yBAAjE,CAIA,IAAItwB,EAAIwB,KACJsU,EAAO9V,EAAEiU,QAAUjU,EAAEiI,QAAQuoB,YAAcxwB,EAAEiI,QAAQsoB,YACrDJ,GAAW,EAAIlqB,EAASoO,UAAUrU,EAAEiI,QAAQkoB,UAAYnwB,EAAEiI,QAAQkoB,SAAWtd,EAAO9M,QAAQ/F,EAAE,aAC9FowB,GAAa,EAAInqB,EAASoO,UAAUrU,EAAEiI,QAAQmoB,YAAcpwB,EAAEiI,QAAQmoB,WAAavd,EAAO9M,QAAQ/F,EAAE,eACpG2wB,GAAoB,EAAI1qB,EAASoO,UAAUrU,EAAEiI,QAAQooB,uBAAyBrwB,EAAEiI,QAAQooB,sBAAwBxd,EAAO9M,QAAQ/F,EAAE,yBACjI4wB,EAAOjpB,EAAW5B,QAAQgD,cAAc,OAiE5C,GA/DA6nB,EAAKrc,UAAYvU,EAAEiI,QAAQuM,YAAc,UAAYxU,EAAEiI,QAAQuM,YAAc,iBAAmBxU,EAAEiI,QAAQuM,YAAc,OACxHoc,EAAKnc,UAAqB,eAATqB,EAAwB,wCAA0C9V,EAAEgJ,GAAK,YAAcmnB,EAAW,iBAAmBA,EAAW,2BAA6B,wCAA0CnwB,EAAEgJ,GAAK,YAAcmnB,EAAW,iBAAmBA,EAA7F,qCAAqJnwB,EAAEiI,QAAQuM,YAA/J,8BAAoN3B,EAAO9M,QAAQ/F,EAAE,sBAArO,kGAA6WA,EAAEiI,QAAQuM,YAAc,cAAgBmc,EAArZ,sBAAwc3wB,EAAEiI,QAAQuM,YAAld,6BAAsgBxU,EAAEiI,QAAQuM,YAAhhB,qCAA4kBxU,EAAEiI,QAAQuM,YAAtlB,kCAE9KxU,EAAE0U,kBAAkBkc,EAAM,UAE1B5wB,EAAEiI,QAAQ8M,WAAW3R,KAAK,CACzB+I,KAAM,CAAC,IACP6I,OAAQ,SAAgBhB,GACvB,IAAI6c,EAAe7c,EAAOkC,WAAWlC,EAAOmC,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBAC/Fqc,GAAgBA,EAAaC,QAAQ,YACxCD,EAAatZ,MAAMmE,QAAU,SAE1B1H,EAAOC,UACVD,EAAOiG,eACPjG,EAAOkG,sBAGR,IAAImE,EAAYjV,KAAK0O,IAAI9D,EAAOoK,OAAS,GAAK,GAC9CpK,EAAOuK,UAAUF,GACbA,EAAY,GACfrK,EAAOwK,UAAS,KAGhB,CACFrS,KAAM,CAAC,IACP6I,OAAQ,SAAgBhB,GACvB,IAAI6c,EAAe7c,EAAOkC,WAAWlC,EAAOmC,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBAC/Fqc,IACHA,EAAatZ,MAAMmE,QAAU,SAG1B1H,EAAOC,UACVD,EAAOiG,eACPjG,EAAOkG,sBAGR,IAAImE,EAAYjV,KAAKkR,IAAItG,EAAOoK,OAAS,GAAK,GAC9CpK,EAAOuK,UAAUF,GAEbA,GAAa,IAChBrK,EAAOwK,UAAS,KAGhB,CACFrS,KAAM,CAAC,IACP6I,OAAQ,SAAgBhB,GACvB,IAAI6c,EAAe7c,EAAOkC,WAAWlC,EAAOmC,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBAC/Fqc,IACHA,EAAatZ,MAAMmE,QAAU,SAG1B1H,EAAOC,UACVD,EAAOiG,eACPjG,EAAOkG,sBAEJlG,EAAO9H,MAAM6kB,MAChB/c,EAAOwK,UAAS,GAEhBxK,EAAOwK,UAAS,MAKN,eAAT1I,EAAuB,CAC1B,IAAIkb,EAASrpB,EAAW5B,QAAQgD,cAAc,KAC9CioB,EAAOzc,UAAYvU,EAAEiI,QAAQuM,YAAc,2BAC3Cwc,EAAOznB,aAAa,aAAcsJ,EAAO9M,QAAQ/F,EAAE,uBACnDgxB,EAAOznB,aAAa,gBAAiB,GACrCynB,EAAOznB,aAAa,gBAAiB,KACrCynB,EAAOznB,aAAa,gBAAiB,KACrCynB,EAAOznB,aAAa,OAAQ,UAC5BynB,EAAOvc,WAAa,gBAAkBzU,EAAEiI,QAAQuM,YAAc,cAAgBmc,EAA1D,sBAA4G3wB,EAAEiI,QAAQuM,YAAtH,wCAAqLxU,EAAEiI,QAAQuM,YAA/L,gDAAsQxU,EAAEiI,QAAQuM,YAAhR,yCACpBoc,EAAKhnB,WAAWC,aAAamnB,EAAQJ,EAAKK,aAG3C,IAAIxX,GAAc,EACdyX,GAAc,EACdC,GAAW,EAOXN,EAAwB,aAAT/a,EAAsB9V,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBAAmBxU,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,4BACpM4c,EAAuB,aAATtb,EAAsB9V,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,gBAAkBxU,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,2BAClM6c,EAAyB,aAATvb,EAAsB9V,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,kBAAoBxU,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,6BACtM8c,EAAwB,aAATxb,EAAsB9V,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBAAmBxU,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,4BACpM+c,EAAuB,SAA8BnT,GAExD,GAAe,OAAXA,IAAmBrE,MAAMqE,SAAsB7b,IAAX6b,EAAxC,CAOA,GAHAA,EAAShV,KAAKkR,IAAI,EAAG8D,GAGN,KAFfA,EAAShV,KAAK0O,IAAIsG,EAAQ,IAER,EACjB,EAAIhL,EAAKwE,aAAagZ,EAAM5wB,EAAEiI,QAAQuM,YAAc,SACpD,EAAIpB,EAAKuD,UAAUia,EAAM5wB,EAAEiI,QAAQuM,YAAc,UACjD,IAAIwV,EAAS4G,EAAKY,kBAClBxH,EAAOzgB,aAAa,QAAS6mB,GAC7BpG,EAAOzgB,aAAa,aAAc6mB,OAC5B,EACN,EAAIhd,EAAKwE,aAAagZ,EAAM5wB,EAAEiI,QAAQuM,YAAc,WACpD,EAAIpB,EAAKuD,UAAUia,EAAM5wB,EAAEiI,QAAQuM,YAAc,QACjD,IAAIid,EAAUb,EAAKY,kBACnBC,EAAQloB,aAAa,QAAS4mB,GAC9BsB,EAAQloB,aAAa,aAAc4mB,GAGpC,IAAIuB,EAA4B,IAATtT,EAAe,IAClCuT,EAAe1b,iBAAiBqb,GAEvB,aAATxb,GACHub,EAAc9Z,MAAMe,OAAS,EAC7B+Y,EAAc9Z,MAAMlK,OAASqkB,EAC7BJ,EAAa/Z,MAAMe,OAASoZ,EAC5BJ,EAAa/Z,MAAMqa,cAAgB/a,WAAW8a,EAAatkB,QAAU,EAAI,OAEzEgkB,EAAc9Z,MAAMoF,KAAO,EAC3B0U,EAAc9Z,MAAMnK,MAAQskB,EAC5BJ,EAAa/Z,MAAMoF,KAAO+U,EAC1BJ,EAAa/Z,MAAMiG,YAAc3G,WAAW8a,EAAavkB,OAAS,EAAI,QAGpEykB,EAAmB,SAA0B9xB,GAChD,IAAI+xB,GAAc,EAAI1e,EAAK0I,QAAQsV,GAC/BO,EAAe1b,iBAAiBmb,GAEpCD,GAAW,EAEX,IAAI/S,EAAS,KAEb,GAAa,aAATtI,EAAqB,CACxB,IAAIic,EAAalb,WAAW8a,EAAatkB,QAKzC,GAFA+Q,GAAU2T,GAFChyB,EAAEiyB,MAAQF,EAAYG,MAEFF,EAEP,IAApBD,EAAYG,KAAkC,IAArBH,EAAYnV,KACxC,WAEK,CACN,IAAIuV,EAAYrb,WAAW8a,EAAavkB,OAGxCgR,GAFWre,EAAE0c,MAAQqV,EAAYnV,MAEjBuV,EAGjB9T,EAAShV,KAAKkR,IAAI,EAAG8D,GACrBA,EAAShV,KAAK0O,IAAIsG,EAAQ,GAE1BmT,EAAqBnT,GAErBpe,EAAEwe,SAAoB,IAAXJ,GACXpe,EAAEue,UAAUH,GAEZre,EAAE6e,iBACF7e,EAAE8e,mBAECsT,EAAa,WACZnyB,EAAE+wB,OACLQ,EAAqB,IACrB,EAAIne,EAAKwE,aAAagZ,EAAM5wB,EAAEiI,QAAQuM,YAAc,SACpD,EAAIpB,EAAKuD,UAAUia,EAAM5wB,EAAEiI,QAAQuM,YAAc,YAGjD+c,EAAqBrlB,EAAMkS,SAC3B,EAAIhL,EAAKwE,aAAagZ,EAAM5wB,EAAEiI,QAAQuM,YAAc,WACpD,EAAIpB,EAAKuD,UAAUia,EAAM5wB,EAAEiI,QAAQuM,YAAc,UAInDR,EAAOkC,WAAWlC,EAAOmC,WAAWlG,iBAAiB,WAAW,SAAUlQ,KACxDA,EAAEwR,OAAO2N,QAAQ,IAAMlf,EAAEiI,QAAQuM,YAAc,cACtC,aAATsB,IAChB+a,EAAatZ,MAAMmE,QAAU,WAI/BkV,EAAK3gB,iBAAiB,cAAc,SAAUlQ,GACzCA,EAAEwR,SAAWqf,IAChBC,EAAatZ,MAAMmE,QAAU,QAC7BwV,GAAc,EACdnxB,EAAE6e,iBACF7e,EAAE8e,sBAGJ+R,EAAK3gB,iBAAiB,WAAW,WAChC4gB,EAAatZ,MAAMmE,QAAU,QAC7BwV,GAAc,KAGfN,EAAK3gB,iBAAiB,YAAY,SAAUlQ,GACrCA,EAAEqyB,iBAAiBryB,EAAEqyB,eAAkBryB,EAAEqyB,cAActB,QAAQ,IAAM9wB,EAAEiI,QAAQuM,YAAc,mBAA8B,aAATsB,IACvH+a,EAAatZ,MAAMmE,QAAU,WAG/BkV,EAAK3gB,iBAAiB,cAAc,WACnCihB,GAAc,EACTzX,GAAwB,aAAT3D,IACnB+a,EAAatZ,MAAMmE,QAAU,WAG/BkV,EAAK3gB,iBAAiB,YAAY,WACjCihB,GAAc,KAEfN,EAAK3gB,iBAAiB,WAAW,SAAUlQ,GAC1C,GAAIC,EAAEiI,QAAQoN,gBAAkBrV,EAAEiI,QAAQ8M,WAAWlU,OAAQ,CAC5D,IAAIuU,EAAUrV,EAAEoV,OAASpV,EAAEqV,SAAW,EAClCgJ,EAASlS,EAAMkS,OAEnB,OAAQhJ,GACP,KAAK,GACJgJ,EAAShV,KAAK0O,IAAIsG,EAAS,GAAK,GAChC,MACD,KAAK,GACJA,EAAShV,KAAKkR,IAAI,EAAG8D,EAAS,IAC9B,MACD,QACC,OAAO,EAGT3E,GAAc,EACd8X,EAAqBnT,GACrBlS,EAAMqS,UAAUH,GAEhBre,EAAE6e,iBACF7e,EAAE8e,sBAGJ+R,EAAK5Y,cAAc,UAAU/H,iBAAiB,SAAS,WACtD/D,EAAMsS,UAAUtS,EAAM6kB,OACtB,IAAIvjB,GAAQ,EAAIvH,EAASwH,aAAa,eAAgBvB,GACtDA,EAAMyB,cAAcH,MAGrBqjB,EAAa5gB,iBAAiB,aAAa,WAC1C,OAAO,KAGR4gB,EAAa5gB,iBAAiB,aAAa,WAC1CihB,GAAc,KAEfL,EAAa5gB,iBAAiB,WAAW,WACxC4gB,EAAatZ,MAAMmE,QAAU,QAC7BwV,GAAc,KAEfL,EAAa5gB,iBAAiB,YAAY,WACzCihB,GAAc,EACTzX,GAAwB,aAAT3D,IACnB+a,EAAatZ,MAAMmE,QAAU,WAG/BmV,EAAa5gB,iBAAiB,aAAa,SAAUlQ,GACpD8xB,EAAiB9xB,GACjBC,EAAEsV,WAAW,iBAAiB,SAAU9H,GACvC,IAAI+D,EAAS/D,EAAM+D,OACfkI,IAAgBlI,IAAWsf,GAAgBtf,EAAO2N,QAAiB,aAATpJ,EAAsB,IAAM9V,EAAEiI,QAAQuM,YAAc,gBAAkB,IAAMxU,EAAEiI,QAAQuM,YAAc,8BACjKqd,EAAiBrkB,MAGnBxN,EAAEsV,WAAW,eAAe,WAC3BmE,GAAc,EACTyX,GAAwB,aAATpb,IACnB+a,EAAatZ,MAAMmE,QAAU,WAG/BjC,GAAc,EACd1Z,EAAE6e,iBACF7e,EAAE8e,qBAGH3S,EAAM+D,iBAAiB,gBAAgB,SAAUlQ,GApMxB,IACpBqe,EAoMC3E,GACJ0Y,IArMG/T,EAAShV,KAAKuV,MAAqB,IAAfzS,EAAMkS,QAC9ByS,EAAatnB,aAAa,gBAAiB6U,GAC3CyS,EAAatnB,aAAa,iBAAkB6U,EAAS,QAwMtD,IAAIiU,GAAW,EACfnmB,EAAM+D,iBAAiB,iBAAiB,WAClCkhB,GACJpvB,YAAW,WACVswB,GAAW,GACwB,IAA/Bre,EAAO/L,QAAQwoB,aAAqBvkB,EAAMhD,aAAa6nB,QAC1D7kB,EAAMsS,UAAS,GAEhBtS,EAAMqS,UAAUvK,EAAO/L,QAAQwoB,aAC/BzwB,EAAE0V,oBACA,QAILxJ,EAAM+D,iBAAiB,kBAAkB,WACxClO,YAAW,WACLovB,GAAakB,KACkB,IAA/Bre,EAAO/L,QAAQwoB,aAAqBvkB,EAAMhD,aAAa6nB,QAC1D7kB,EAAMsS,UAAS,GAEmB,IAA/BxK,EAAO/L,QAAQwoB,cAClBzc,EAAO/L,QAAQwoB,YAAc,GAE9BvkB,EAAMqS,UAAUvK,EAAO/L,QAAQwoB,aAC/BzwB,EAAE0V,mBAEH2c,GAAW,IACT,SAG+B,IAA/Bre,EAAO/L,QAAQwoB,aAAqBvkB,EAAMhD,aAAa6nB,SAC1D7kB,EAAMsS,UAAS,GACoB,IAA/BxK,EAAO/L,QAAQwoB,cAClBzc,EAAO/L,QAAQwoB,YAAc,GAE9B0B,KAGDnyB,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,kBAAkB,WAC5DkiB,YAKD,CAAC,GAAK,GAAG,EAAI,EAAE,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,IAAIG,GAAG,CAAC,SAASvxB,EAAQC,EAAOL,GAC7E,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAECpD,EAAQ0F,GAAK,CACrB,mBAAoB,EAEpB,qBAAsB,gBAEtB,qBAAsB,+LAEtB,kBAAmB,aAEnB,YAAa,OACb,aAAc,QAEd,mBAAoB,cACpB,sBAAuB,0FACvB,sBAAuB,iBAEvB,wBAAyB,yDACzB,cAAe,SACf,YAAa,OACb,qBAAsB,gBAEtB,oBAAqB,eACrB,oBAAqB,eAErB,0BAA2B,qBAC3B,yBAA0B,WAC1B,YAAa,OACb,iBAAkB,YAClB,gBAAiB,WACjB,cAAe,SACf,kBAAmB,aACnB,iBAAkB,YAClB,eAAgB,UAChB,eAAgB,UAChB,0BAA2B,uBAC3B,2BAA4B,wBAC5B,gBAAiB,WACjB,aAAc,QACd,cAAe,SACf,aAAc,QACd,eAAgB,UAChB,gBAAiB,WACjB,gBAAiB,WACjB,eAAgB,UAChB,cAAe,SACf,gBAAiB,WACjB,cAAe,SACf,aAAc,QACd,sBAAuB,iBACvB,cAAe,SACf,aAAc,QACd,iBAAkB,YAClB,iBAAkB,YAClB,kBAAmB,aACnB,aAAc,QACd,eAAgB,UAChB,gBAAiB,WACjB,cAAe,SACf,eAAgB,UAChB,kBAAmB,aACnB,kBAAmB,aACnB,aAAc,QACd,eAAgB,UAChB,iBAAkB,YAClB,eAAgB,UAChB,cAAe,SACf,kBAAmB,aACnB,gBAAiB,WACjB,eAAgB,UAChB,eAAgB,UAChB,cAAe,SACf,iBAAkB,YAClB,eAAgB,UAChB,eAAgB,UAChB,eAAgB,UAChB,eAAgB,UAChB,YAAa,OACb,eAAgB,UAChB,iBAAkB,YAClB,kBAAmB,aACnB,aAAc,QACd,eAAgB,YAGf,IAAIksB,GAAG,CAAC,SAASxxB,EAAQC,EAAOL,GAClC,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAERpD,EAAQ0S,YAAS9Q,EAEjB,IAAIkD,EAA4B,mBAAXC,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUH,GAAO,cAAcA,GAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXE,QAAyBF,EAAIpB,cAAgBsB,QAAUF,IAAQE,OAAOxB,UAAY,gBAAkBsB,GAElQ6L,EAAe,WAAc,SAASC,EAAiBC,EAAQ3D,GAAS,IAAK,IAAItN,EAAI,EAAGA,EAAIsN,EAAM/M,OAAQP,IAAK,CAAE,IAAIkR,EAAa5D,EAAMtN,GAAIkR,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMrM,OAAOC,eAAegM,EAAQC,EAAWI,IAAKJ,IAAiB,OAAO,SAAUnJ,EAAawJ,EAAYC,GAAiJ,OAA9HD,GAAYP,EAAiBjJ,EAAYnE,UAAW2N,GAAiBC,GAAaR,EAAiBjJ,EAAayJ,GAAqBzJ,GAA7gB,GAIfZ,EAAWC,EAFD3G,EAAQ,IAMlB4G,EAAaD,EAFD3G,EAAQ,IAMpB8E,EAAS6B,EAFD3G,EAAQ,IAMhByxB,EAAiB9qB,EAFD3G,EAAQ,IAMxB0xB,EAAY/qB,EAFD3G,EAAQ,KAMnB8R,EAASnL,EAFD3G,EAAQ,IAIhB+G,EAAa/G,EAAQ,IAErBkF,EAAWlF,EAAQ,IAEnBoY,EAAQpY,EAAQ,IAEhBqO,EAASrO,EAAQ,IAIjB2xB,EAEJ,SAAiCltB,GAAO,GAAIA,GAAOA,EAAIM,WAAc,OAAON,EAAc,IAAIyN,EAAS,GAAI,GAAW,MAAPzN,EAAe,IAAK,IAAIoM,KAAOpM,EAAWF,OAAOpB,UAAUgP,eAAetS,KAAK4E,EAAKoM,KAAMqB,EAAOrB,GAAOpM,EAAIoM,IAAgC,OAAtBqB,EAAOlN,QAAUP,EAAYyN,EAFxPE,CAFCpS,EAAQ,KAMnB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAIvFK,EAAOE,QAAQ4sB,SAAW,EAE1B9sB,EAAOE,QAAQ6sB,QAAU,GAEzB,IAAIvf,EAAS1S,EAAQ0S,OAAS,CAC7Bwf,OAAQ,GAERC,qBAAqB,EAErBC,sBAAsB,EAEtBC,kBAAmB,IAEnBC,mBAAoB,IAEpBC,YAAa,EAEbC,aAAc,EAEdC,kBAAmB,IAEnBC,mBAAoB,GAEpB7Y,4BAA6B,SAAqCtO,GACjE,MAA6B,IAAtBA,EAAMwQ,eAGdhC,2BAA4B,SAAoCxO,GAC/D,MAA6B,IAAtBA,EAAMwQ,eAGdhF,eAAe,EAEf4b,YAAa,EAEbC,aAAc,EAEdta,MAAM,EAENW,YAAY,EAEZ4Z,gBAAgB,EAEhB1V,WAAY,GAEZJ,iBAAiB,EAEjBC,wBAAwB,EAExBC,gBAAiB,GAEjBiH,oBAAoB,EAEpB4O,yBAAyB,EAEzBC,0BAA0B,EAE1BC,kBAAkB,EAElBC,uBAAwB,KAExBC,0BAA2B,KAE3BC,0BAA2B,IAE3BC,uBAAuB,EAEvBC,yBAAyB,EAEzBC,0BAA0B,EAE1BC,SAAU,CAAC,YAAa,UAAW,WAAY,WAAY,SAAU,SAAU,cAE/EC,oBAAoB,EAEpBlgB,SAAS,EAETmgB,WAAY,OAEZ5f,YAAa,SAEba,gBAAgB,EAEhBgf,mBAAmB,EAEnBxW,qBAAsB,EAEtByW,YAAa,KAEbvf,WAAY,CAAC,CACZ5I,KAAM,CAAC,GAAI,KACX6I,OAAQ,SAAgBhB,GAElBlM,EAAW4W,aACX1K,EAAOzE,QAAUyE,EAAOugB,MAC3BvgB,EAAOpE,OAEPoE,EAAO3H,aAOZxG,EAAOE,QAAQyuB,YAAcnhB,EAE7B,IAAIohB,EAAqB,WACxB,SAASA,EAAmB/oB,EAAMtL,IA7GnC,SAAyBgI,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIlG,UAAU,qCA8G9GmG,CAAgB9G,KAAMizB,GAEtB,IAAIz0B,EAAIwB,KACJ4Z,EAA0B,iBAAT1P,EAAoB/D,EAAW5B,QAAQoD,eAAeuC,GAAQA,EAEnF,KAAM1L,aAAay0B,GAClB,OAAO,IAAIA,EAAmBrZ,EAAShb,GAKxC,GAFAJ,EAAE0L,KAAO1L,EAAEkM,MAAQkP,EAEdpb,EAAE0L,KAAP,CAIA,GAAI1L,EAAEkM,MAAM8H,OACX,OAAOhU,EAAEkM,MAAM8H,OAehB,GAZAhU,EAAE00B,UAAW,EAEb10B,EAAEmhB,oBAAqB,EAEvBnhB,EAAE20B,iBAAkB,EAEpB30B,EAAE40B,cAAgB,KAElB50B,EAAE60B,iBAAmB,EAErB70B,EAAE8e,MAAQ,UAEAvc,IAANnC,EAAiB,CACpB,IAAI6H,EAAUjI,EAAE0L,KAAK/B,aAAa,oBAClCvJ,EAAI6H,EAAU6sB,KAAKrM,MAAMxgB,GAAW,GA8BrC,OA3BAjI,EAAEiI,QAAU3C,OAAOuD,OAAO,GAAIwK,EAAQjT,GAElCJ,EAAEiI,QAAQgR,OAASjZ,EAAEkM,MAAMvC,aAAa,SAC3C3J,EAAEkM,MAAM+M,MAAO,EACfjZ,EAAE0L,KAAKuN,MAAO,GACJjZ,EAAEkM,MAAM+M,OAClBjZ,EAAEiI,QAAQgR,MAAO,GAGbjZ,EAAEiI,QAAQ6V,aACd9d,EAAEiI,QAAQ6V,WAAa,QACnB9d,EAAEiI,QAAQyV,kBACb1d,EAAEiI,QAAQ6V,WAAa,YAEpB9d,EAAEiI,QAAQ0V,yBACb3d,EAAEiI,QAAQ6V,YAAc,SAI1B,EAAI3E,EAAM4b,qBAAqB,EAAG/0B,EAAEiI,QAASjI,EAAEiI,QAAQ2V,iBAAmB,IAE1E5d,EAAEgJ,GAAK,OAASnD,EAAOE,QAAQ4sB,WAE/B9sB,EAAOE,QAAQ6sB,QAAQ5yB,EAAEgJ,IAAMhJ,EAE/BA,EAAEg1B,OAEKh1B,GA4kDR,OAzkDAqR,EAAaojB,EAAoB,CAAC,CACjC7iB,IAAK,aACL7N,MAAO,SAAoBqX,GAC1B,OAAOA,IAEN,CACFxJ,IAAK,OACL7N,MAAO,WACN,IAAI/D,EAAIwB,KACJyzB,EAAgB3vB,OAAOuD,OAAO,GAAI7I,EAAEiI,QAAS,CAChD8I,QAAS,SAAiB7E,EAAOyW,GAChC3iB,EAAEk1B,SAAShpB,EAAOyW,IAEnB1Z,MAAO,SAAelJ,GACrBC,EAAEm1B,aAAap1B,MAGbyJ,EAAUxJ,EAAE0L,KAAKlC,QAAQC,cAO7B,GALAzJ,EAAEo1B,UAAwB,UAAZ5rB,GAAmC,UAAZA,GAAmC,WAAZA,EAC5DxJ,EAAEiU,SAAUjU,EAAEo1B,WAA4C,UAAZ5rB,IAApBxJ,EAAEiI,QAAQgM,QACpCjU,EAAEoL,WAAa,KACfpL,EAAEuiB,WAAa,KAEXza,EAAWutB,SAAWr1B,EAAEiI,QAAQ8rB,uBAAyBjsB,EAAWwtB,WAAat1B,EAAEiI,QAAQ+rB,wBAC9Fh0B,EAAE0L,KAAKnC,aAAa,YAAY,GAE5BzB,EAAWutB,SAAWr1B,EAAE0L,KAAK/B,aAAa,aAC7C3J,EAAE4P,YAEG,IAAK5P,EAAEiU,UAAYjU,EAAEiU,UAAYjU,EAAEiI,QAAQisB,SAASrzB,SAAUb,EAAEiI,QAAQksB,qBAA0BrsB,EAAWyO,YAAcvW,EAAEiI,QAAQgsB,yBA4FhIj0B,EAAEiU,SAAYjU,EAAEiI,QAAQisB,SAASrzB,QAAWb,EAAEiI,QAAQksB,qBAChEn0B,EAAE0L,KAAK6L,MAAMmE,QAAU,YA7F8I,CACtK1b,EAAE0L,KAAKmF,gBAAgB,YACvB,IAAI0kB,EAAmBv1B,EAAEiU,QAAUpB,EAAO9M,QAAQ/F,EAAE,qBAAuB6S,EAAO9M,QAAQ/F,EAAE,qBAExFw1B,EAAY7tB,EAAW5B,QAAQgD,cAAc,QA6BjD,GA5BAysB,EAAUjhB,UAAYvU,EAAEiI,QAAQuM,YAAc,YAC9CghB,EAAU7V,UAAY4V,EACtBv1B,EAAEkM,MAAMtC,WAAWC,aAAa2rB,EAAWx1B,EAAEkM,OAE7ClM,EAAEmW,UAAYxO,EAAW5B,QAAQgD,cAAc,OAC/C/I,EAAEkW,WAAWlW,EAAEmW,WAAWnN,GAAKhJ,EAAEgJ,GACjChJ,EAAEkW,WAAWlW,EAAEmW,WAAW5B,UAAYvU,EAAEiI,QAAQuM,YAAc,aAAexU,EAAEiI,QAAQuM,YAAc,+BAAiCxU,EAAEkM,MAAMqI,UAC9IvU,EAAEkW,WAAWlW,EAAEmW,WAAW2J,SAAW,EACrC9f,EAAEkW,WAAWlW,EAAEmW,WAAW5M,aAAa,OAAQ,eAC/CvJ,EAAEkW,WAAWlW,EAAEmW,WAAW5M,aAAa,aAAcgsB,GACrDv1B,EAAEkW,WAAWlW,EAAEmW,WAAW1B,UAAY,eAAiBzU,EAAEiI,QAAQuM,YAA3B,sBAAuExU,EAAEiI,QAAQuM,YAAjF,mCAA2IxU,EAAEiI,QAAQuM,YAArJ,6BAAyMxU,EAAEiI,QAAQuM,YAAnN,yBACtCxU,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,SAAS,SAAUlQ,GAC7D,IAAKC,EAAEmhB,qBAAuBnhB,EAAE00B,UAAY10B,EAAE20B,gBAAiB,CAC9D30B,EAAEia,cAAa,GAEf,IAAIwb,GAAc,EAAIxvB,EAASyvB,aAAa31B,EAAEqyB,cAAepyB,EAAEkW,WAAWlW,EAAEmW,YAAc,IAAMnW,EAAEiI,QAAQuM,YAAc,aAAexU,EAAEiI,QAAQuM,YAAc,6BAA+B,IAAMxU,EAAEiI,QAAQuM,YAAc,4BAC/MxU,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAcyd,GAE9Crb,YAGTpa,EAAE0L,KAAK9B,WAAWC,aAAa7J,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAE0L,MAEvD1L,EAAEiI,QAAQisB,SAASrzB,QAAWb,EAAEiI,QAAQksB,qBAC5Cn0B,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMoe,WAAa,cAC7C31B,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,YAAY+C,MAAMmE,QAAU,QAG/F1b,EAAEiU,SAAoC,SAAzBjU,EAAEiI,QAAQmsB,aAA0B1B,EAAInV,SAASvd,EAAEkW,WAAWlW,EAAEmW,WAAWvM,WAAY5J,EAAEiI,QAAQuM,YAAc,kBAAmB,CAClJxU,EAAE41B,eAAiB51B,EAAEkM,MAAMtC,WAE3B,IAAI+G,EAAUhJ,EAAW5B,QAAQgD,cAAc,OAC/C4H,EAAQ4D,UAAYvU,EAAEiI,QAAQuM,YAAc,iBAC5CxU,EAAEkW,WAAWlW,EAAEmW,WAAWvM,WAAWC,aAAa8G,EAAS3Q,EAAEkW,WAAWlW,EAAEmW,YAC1ExF,EAAQ7G,YAAY9J,EAAEkW,WAAWlW,EAAEmW,YAGhCrO,EAAWyO,YACdmc,EAAI/b,SAAS3W,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,WAE7D1M,EAAWsC,QACdsoB,EAAI/b,SAAS3W,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,OAE7D1M,EAAWutB,SACd3C,EAAI/b,SAAS3W,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,QAE7D1M,EAAWwtB,WACd5C,EAAI/b,SAAS3W,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiI,QAAQuM,YAAc,UAEjEke,EAAI/b,SAAS3W,EAAEkW,WAAWlW,EAAEmW,WAAYnW,EAAEiU,QAAUjU,EAAEiI,QAAQuM,YAAc,QAAUxU,EAAEiI,QAAQuM,YAAc,SAE9GxU,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,gBAAgB1K,YAAY9J,EAAE0L,MAEpG1L,EAAEkM,MAAM8H,OAAShU,EAEjBA,EAAE2Y,SAAW3Y,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,YACnFxU,EAAE2X,OAAS3X,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,UAEjF,IAAIqhB,EAAU71B,EAAEiU,QAAU,QAAU,QAChC6hB,EAAcD,EAAQrnB,UAAU,EAAG,GAAGC,cAAgBonB,EAAQrnB,UAAU,GAExExO,EAAEiI,QAAQ4tB,EAAU,SAAW,GAAK71B,EAAEiI,QAAQ4tB,EAAU,SAASvsB,WAAWI,QAAQ,MAAQ,EAC/F1J,EAAEoN,MAAQpN,EAAEiI,QAAQ4tB,EAAU,SACG,KAAvB71B,EAAE0L,KAAK6L,MAAMnK,OAAuC,OAAvBpN,EAAE0L,KAAK6L,MAAMnK,MACpDpN,EAAEoN,MAAQpN,EAAE0L,KAAK6L,MAAMnK,MACbpN,EAAE0L,KAAK/B,aAAa,SAC9B3J,EAAEoN,MAAQpN,EAAE0L,KAAK/B,aAAa,SAE9B3J,EAAEoN,MAAQpN,EAAEiI,QAAQ,UAAY6tB,EAAc,SAG3C91B,EAAEiI,QAAQ4tB,EAAU,UAAY,GAAK71B,EAAEiI,QAAQ4tB,EAAU,UAAUvsB,WAAWI,QAAQ,MAAQ,EACjG1J,EAAEqN,OAASrN,EAAEiI,QAAQ4tB,EAAU,UACG,KAAxB71B,EAAE0L,KAAK6L,MAAMlK,QAAyC,OAAxBrN,EAAE0L,KAAK6L,MAAMlK,OACrDrN,EAAEqN,OAASrN,EAAE0L,KAAK6L,MAAMlK,OACdrN,EAAE0L,KAAK/B,aAAa,UAC9B3J,EAAEqN,OAASrN,EAAE0L,KAAK/B,aAAa,UAE/B3J,EAAEqN,OAASrN,EAAEiI,QAAQ,UAAY6tB,EAAc,UAGhD91B,EAAE+1B,mBAAqB/1B,EAAEqN,QAAUrN,EAAEoN,MAAQpN,EAAEoN,MAAQpN,EAAEqN,OAASrN,EAAEqN,OAASrN,EAAEoN,MAE/EpN,EAAEg2B,cAAch2B,EAAEoN,MAAOpN,EAAEqN,QAE3B4nB,EAAcgB,YAAcj2B,EAAEoN,MAC9B6nB,EAAciB,aAAel2B,EAAEqN,OAShC,GAJAxH,EAAOE,QAAQyuB,YAAcS,EAE7B,IAAIzC,EAAezsB,QAAQ/F,EAAEkM,MAAO+oB,EAAej1B,EAAEoL,iBAEnB7I,IAA9BvC,EAAEkW,WAAWlW,EAAEmW,YAA4BnW,EAAEiI,QAAQisB,SAASrzB,QAAUb,EAAEmhB,qBAAuBnhB,EAAEiI,QAAQwrB,wBAAyB,CACvI,IAAIjmB,GAAQ,EAAIvH,EAASwH,aAAa,gBAAiBzN,EAAEkW,WAAWlW,EAAEmW,YACtEnW,EAAEkW,WAAWlW,EAAEmW,WAAWxI,cAAcH,MAGxC,CACFoE,IAAK,eACL7N,MAAO,SAAsBoyB,GAC5B,IAAIn2B,EAAIwB,KAIR,GAFA20B,OAA8B5zB,IAAhB4zB,GAA6BA,GAEvCn2B,EAAEmhB,oBAAuBnhB,EAAEiU,QAA/B,CAIA,GAAIkiB,GACH,WACCzD,EAAIrH,OAAOrrB,EAAEkW,WAAWlW,EAAE2Y,UAAW,KAAK,WACzC+Z,EAAI9a,YAAY5X,EAAEkW,WAAWlW,EAAE2Y,UAAW3Y,EAAEiI,QAAQuM,YAAc,aAClE,IAAIhH,GAAQ,EAAIvH,EAASwH,aAAa,gBAAiBzN,EAAEkW,WAAWlW,EAAEmW,YACtEnW,EAAEkW,WAAWlW,EAAEmW,WAAWxI,cAAcH,MAWzC,IARA,IAAImL,EAAW3Y,EAAEkW,WAAWlW,EAAEmW,WAAWsB,iBAAiB,IAAMzX,EAAEiI,QAAQuM,YAAc,WAEpF8T,EAAQ,SAAehoB,EAAGyM,GAC7B2lB,EAAIrH,OAAO1S,EAASrY,GAAI,KAAK,WAC5BoyB,EAAI9a,YAAYe,EAASrY,GAAIN,EAAEiI,QAAQuM,YAAc,iBAI9ClU,EAAI,EAAGyM,EAAQ4L,EAAS9X,OAAQP,EAAIyM,EAAOzM,IACnDgoB,EAAMhoB,GAhBR,OAmBM,CACNoyB,EAAI9a,YAAY5X,EAAEkW,WAAWlW,EAAE2Y,UAAW3Y,EAAEiI,QAAQuM,YAAc,aAClExU,EAAEkW,WAAWlW,EAAE2Y,UAAUpB,MAAMmE,QAAU,GACzC1b,EAAEkW,WAAWlW,EAAE2Y,UAAUpB,MAAM6e,QAAU,EAGzC,IADA,IAAIzd,EAAW3Y,EAAEkW,WAAWlW,EAAEmW,WAAWsB,iBAAiB,IAAMzX,EAAEiI,QAAQuM,YAAc,WAC/ElU,EAAI,EAAGyM,EAAQ4L,EAAS9X,OAAQP,EAAIyM,EAAOzM,IACnDoyB,EAAI9a,YAAYe,EAASrY,GAAIN,EAAEiI,QAAQuM,YAAc,aACrDmE,EAASrY,GAAGiX,MAAMmE,QAAU,GAG7B,IAAIlO,GAAQ,EAAIvH,EAASwH,aAAa,gBAAiBzN,EAAEkW,WAAWlW,EAAEmW,YACtEnW,EAAEkW,WAAWlW,EAAEmW,WAAWxI,cAAcH,GAGzCxN,EAAEmhB,oBAAqB,EACvBnhB,EAAE0V,qBAED,CACF9D,IAAK,eACL7N,MAAO,SAAsBoyB,EAAaE,GACzC,IAAIr2B,EAAIwB,KAIR,GAFA20B,OAA8B5zB,IAAhB4zB,GAA6BA,GAEzB,IAAdE,MAAwBr2B,EAAEmhB,oBAAsBnhB,EAAEiI,QAAQ4c,oBAAsB7kB,EAAEuP,QAA2B,IAAjBvP,EAAE0K,cAAsB1K,EAAEiI,QAAQwrB,yBAA2BzzB,EAAEua,aAAe,IAAMva,EAAEiI,QAAQyrB,0BAA4B1zB,EAAEua,YAAc,IAAMva,EAAEiU,UAAYjU,EAAEiI,QAAQwrB,0BAA4BzzB,EAAE0K,YAAc1K,EAAEu0B,OAAtT,CAIA,GAAI4B,GACH,WACCzD,EAAIlH,QAAQxrB,EAAEkW,WAAWlW,EAAE2Y,UAAW,KAAK,WAC1C+Z,EAAI/b,SAAS3W,EAAEkW,WAAWlW,EAAE2Y,UAAW3Y,EAAEiI,QAAQuM,YAAc,aAC/DxU,EAAEkW,WAAWlW,EAAE2Y,UAAUpB,MAAMmE,QAAU,GACzC,IAAIlO,GAAQ,EAAIvH,EAASwH,aAAa,iBAAkBzN,EAAEkW,WAAWlW,EAAEmW,YACvEnW,EAAEkW,WAAWlW,EAAEmW,WAAWxI,cAAcH,MAYzC,IATA,IAAImL,EAAW3Y,EAAEkW,WAAWlW,EAAEmW,WAAWsB,iBAAiB,IAAMzX,EAAEiI,QAAQuM,YAAc,WAEpFyU,EAAS,SAAgB3oB,EAAGyM,GAC/B2lB,EAAIlH,QAAQ7S,EAASrY,GAAI,KAAK,WAC7BoyB,EAAI/b,SAASgC,EAASrY,GAAIN,EAAEiI,QAAQuM,YAAc,aAClDmE,EAASrY,GAAGiX,MAAMmE,QAAU,OAIrBpb,EAAI,EAAGyM,EAAQ4L,EAAS9X,OAAQP,EAAIyM,EAAOzM,IACnD2oB,EAAO3oB,GAlBT,OAqBM,CACNoyB,EAAI/b,SAAS3W,EAAEkW,WAAWlW,EAAE2Y,UAAW3Y,EAAEiI,QAAQuM,YAAc,aAC/DxU,EAAEkW,WAAWlW,EAAE2Y,UAAUpB,MAAMmE,QAAU,GACzC1b,EAAEkW,WAAWlW,EAAE2Y,UAAUpB,MAAM6e,QAAU,EAGzC,IADA,IAAIzd,EAAW3Y,EAAEkW,WAAWlW,EAAEmW,WAAWsB,iBAAiB,IAAMzX,EAAEiI,QAAQuM,YAAc,WAC/ElU,EAAI,EAAGyM,EAAQ4L,EAAS9X,OAAQP,EAAIyM,EAAOzM,IACnDoyB,EAAI/b,SAASgC,EAASrY,GAAIN,EAAEiI,QAAQuM,YAAc,aAClDmE,EAASrY,GAAGiX,MAAMmE,QAAU,GAG7B,IAAIlO,GAAQ,EAAIvH,EAASwH,aAAa,iBAAkBzN,EAAEkW,WAAWlW,EAAEmW,YACvEnW,EAAEkW,WAAWlW,EAAEmW,WAAWxI,cAAcH,GAGzCxN,EAAEmhB,oBAAqB,KAEtB,CACFvP,IAAK,qBACL7N,MAAO,SAA4BuyB,GAClC,IAAIt2B,EAAIwB,KAER80B,OAA6B,IAAZA,EAA0BA,EAAUt2B,EAAEiI,QAAQ2rB,uBAE/D5zB,EAAEu2B,kBAAkB,SAEpBv2B,EAAE40B,cAAgB7yB,YAAW,WAC5B/B,EAAEw2B,eACFx2B,EAAEu2B,kBAAkB,UAClBD,KAEF,CACF1kB,IAAK,oBACL7N,MAAO,WACN,IAAI/D,EAAIwB,KAEgB,OAApBxB,EAAE40B,gBACLzc,aAAanY,EAAE40B,sBACR50B,EAAE40B,cACT50B,EAAE40B,cAAgB,QAGlB,CACFhjB,IAAK,kBACL7N,MAAO,WACN,IAAI/D,EAAIwB,KAERxB,EAAEu2B,oBACFv2B,EAAE20B,iBAAkB,EACpB30B,EAAEw2B,cAAa,GAAO,KAErB,CACF5kB,IAAK,iBACL7N,MAAO,WACEvC,KAENmzB,iBAAkB,EAFZnzB,KAGNyY,cAAa,KAEd,CACFrI,IAAK,oBACL7N,MAAO,WACN,IAAI/D,EAAIwB,KACJxB,EAAE8e,OACL9e,EAAE8e,MAAMzS,QAETrM,EAAE8e,MAAQ,IAAI2T,EAAU1sB,QAAQ/F,GAChCA,EAAEkM,MAAM+D,iBAAiB,kBAAkB,WACtCjQ,EAAE4c,iBAAmB,GAAK5c,EAAE60B,iBAAmB,IAClD70B,EAAEya,eAAeza,EAAE60B,kBACd/sB,EAAWsC,QAAWtC,EAAWyO,YACrCvW,EAAE4P,aAKJ,CACFgC,IAAK,WACL7N,MAAO,SAAkBmI,EAAOyW,GAC/B,IAAI3iB,EAAIwB,KACJi1B,EAAe9T,EAAQhZ,aAAa,YACpC+sB,IAAaD,SAAwE,UAAjBA,GACpE5gB,EAAkC,OAAvB3J,EAAMF,cAAyB,kBAAkBxF,KAAK0F,EAAMF,cAU3E,GARIhM,EAAEkW,WAAWlW,EAAE2Y,WAClB3Y,EAAE22B,iBAGC32B,EAAEkW,WAAWlW,EAAEmW,YAAcnW,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,kBACtGxU,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,gBAAgB+C,MAAMmE,QAAU,KAGnG1b,EAAE42B,QAAN,CAQA,GAJA52B,EAAE42B,SAAU,EACZ52B,EAAEkM,MAAQA,EACVlM,EAAE2iB,QAAUA,IAEN7a,EAAWyO,YAAcvW,EAAEiI,QAAQgsB,0BAA+BnsB,EAAWutB,SAAWr1B,EAAEiI,QAAQ8rB,uBAA4BjsB,EAAWwtB,WAAat1B,EAAEiI,QAAQ+rB,yBAA0B,CAC/L,IAAKh0B,EAAEiU,UAAYjU,EAAEiI,QAAQisB,SAASrzB,SAAWb,EAAEiI,QAAQksB,mBAc1D,OAbIuC,GAAY7gB,GACf7V,EAAE4P,YAGC5P,EAAEiI,QAAQ8I,UAEoB,iBAAtB/Q,EAAEiI,QAAQ8I,QACpBtJ,EAAS1B,QAAQ/F,EAAEiI,QAAQ8I,SAAS/Q,EAAEkM,MAAOlM,EAAE2iB,QAAS3iB,GAExDA,EAAEiI,QAAQ8I,QAAQ/Q,EAAEkM,MAAOlM,EAAE2iB,QAAS3iB,KAezC,GARAA,EAAE62B,gBAAkB,GAEpB72B,EAAE82B,oBAEF92B,EAAE+2B,YAAY/2B,EAAGA,EAAEkW,WAAWlW,EAAE2Y,UAAW3Y,EAAEkW,WAAWlW,EAAE2X,QAAS3X,EAAEkM,OACrElM,EAAEg3B,cAAch3B,EAAGA,EAAEkW,WAAWlW,EAAE2Y,UAAW3Y,EAAEkW,WAAWlW,EAAE2X,QAAS3X,EAAEkM,OACvElM,EAAEi3B,cAAcj3B,EAAGA,EAAEkW,WAAWlW,EAAE2Y,UAAW3Y,EAAEkW,WAAWlW,EAAE2X,QAAS3X,EAAEkM,OAEnElM,EAAEiI,QAAQksB,mBAAoB,CACjC,IAAI+C,EAAkB,CAAC,YAAa,UAAW,WAAY,WAAY,SAAU,SAAU,cAC3Fl3B,EAAEiI,QAAQisB,SAAWgD,EAAgB/vB,OAAOnH,EAAEiI,QAAQisB,SAASiD,QAAO,SAAUC,GAC/E,OAA0C,IAAnCF,EAAgBxtB,QAAQ0tB,OAIjCp3B,EAAEq3B,cAAcr3B,EAAGA,EAAEkW,WAAWlW,EAAE2Y,UAAW3Y,EAAEkW,WAAWlW,EAAE2X,QAAS3X,EAAEkM,OAEvE,IAAIsB,GAAQ,EAAIvH,EAASwH,aAAa,gBAAiBzN,EAAEkW,WAAWlW,EAAEmW,YACtEnW,EAAEkW,WAAWlW,EAAEmW,WAAWxI,cAAcH,GAExCxN,EAAEg2B,cAAch2B,EAAEoN,MAAOpN,EAAEqN,QAC3BrN,EAAE0V,kBAEE1V,EAAEiU,UACLjU,EAAEs3B,yBAA2B,WAE5B,GAAIt3B,EAAEiI,QAAQ0rB,iBAAkB,CAC/B,IAAI3J,EAAShqB,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,kBAC/E+iB,EAAUvN,EAAOrgB,aAAa,gBAE9B3J,EAAEuP,QAAUgoB,EACfv3B,EAAEqM,QACQrM,EAAEuP,OACZvP,EAAE4P,OAEF5P,EAAEqM,QAGH2d,EAAOzgB,aAAa,gBAAiBguB,GACrCv3B,EAAEkW,WAAWlW,EAAEmW,WAAWiE,UAI5Bpa,EAAEw3B,oBAEFx3B,EAAEkM,MAAM+D,iBAAiB,QAASjQ,EAAEs3B,2BAE/BxvB,EAAWyO,aAAczO,EAAWsC,QAAYpK,EAAEiI,QAAQ4c,oBAW9D7kB,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,cAAc,WACpDjQ,EAAE20B,kBACA30B,EAAEiI,QAAQ4c,qBACd7kB,EAAEu2B,kBAAkB,SACpBv2B,EAAEia,eACFja,EAAEka,mBAAmBla,EAAEiI,QAAQ4rB,gCAIlC7zB,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,aAAa,WACnDjQ,EAAE20B,kBACA30B,EAAEmhB,oBACNnhB,EAAEia,eAEEja,EAAEiI,QAAQ4c,oBACd7kB,EAAEka,mBAAmBla,EAAEiI,QAAQ4rB,+BAIlC7zB,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,cAAc,WACpDjQ,EAAE20B,kBACA30B,EAAEuP,QAAWvP,EAAEiI,QAAQ4c,oBAC3B7kB,EAAEka,mBAAmBla,EAAEiI,QAAQ6rB,gCAhClC9zB,EAAE0L,KAAKuE,iBAAiB,cAAc,WACjCjQ,EAAEmhB,mBACLnhB,EAAEw2B,cAAa,GAEXx2B,EAAE20B,iBACL30B,EAAEia,cAAa,OAGfnS,EAAWqX,uBAAwB,CAAEC,SAAS,IA8B9Cpf,EAAEiI,QAAQwrB,yBACbzzB,EAAEw2B,cAAa,GAGZx2B,EAAEiI,QAAQurB,gBACbxzB,EAAEkM,MAAM+D,iBAAiB,kBAAkB,SAAUlQ,GACpD,IAAIwR,OAAehP,IAANxC,EAAkBA,EAAEigB,OAAOzO,QAAUxR,EAAEwR,OAASvR,EAAEkM,MAC3DlM,EAAEiI,QAAQkrB,aAAe,IAAMnzB,EAAE2iB,QAAQhZ,aAAa,YAAc3J,EAAE2iB,QAAQpL,MAAMlK,QAAqB,OAAXkE,IAAoBwI,MAAMxI,EAAO4hB,eAClInzB,EAAEg2B,cAAczkB,EAAO2hB,WAAY3hB,EAAO4hB,aAC1CnzB,EAAE0V,kBACF1V,EAAEkM,MAAMiB,QAAQoE,EAAO2hB,WAAY3hB,EAAO4hB,kBAM9CnzB,EAAEkM,MAAM+D,iBAAiB,QAAQ,WAGhC,IAAK,IAAIwnB,KAFTz3B,EAAE00B,UAAW,EAEW7uB,EAAOE,QAAQ6sB,QACtC,GAAI/sB,EAAOE,QAAQ6sB,QAAQ1f,eAAeukB,GAAc,CACvD,IAAIC,EAAI7xB,EAAOE,QAAQ6sB,QAAQ6E,GAE3BC,EAAE1uB,KAAOhJ,EAAEgJ,KAAMhJ,EAAEiI,QAAQosB,mBAAsBqD,EAAEnoB,QAAWmoB,EAAEnD,QAAqD,IAA5CmD,EAAEzvB,QAAQ0vB,gCACtFD,EAAErrB,QACFqrB,EAAEhD,UAAW,GAKV5sB,EAAWyO,YAAczO,EAAWsC,QAAYpK,EAAEiI,QAAQ4c,qBAAsB7kB,EAAEiU,SACvFjU,EAAEw2B,kBAIJx2B,EAAEkM,MAAM+D,iBAAiB,SAAS,WACjC,GAAIjQ,EAAEiI,QAAQ2R,WACb,IACC5Z,EAAEya,eAAe,GAEjB1Y,YAAW,WACV,IAAI61B,EAAiB53B,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,mBACvFojB,GAAkBA,EAAehuB,aACpCguB,EAAehuB,WAAW2N,MAAMmE,QAAU,UAEzC,IACF,MAAOmc,IAK2B,mBAA1B73B,EAAEkM,MAAMH,SAASO,KAC3BtM,EAAEkM,MAAMH,SAASO,OAEjBtM,EAAEqM,QAGCrM,EAAE4f,iBACL5f,EAAE4f,kBAEC5f,EAAE6f,gBACL7f,EAAE6f,iBAGC7f,EAAEiI,QAAQgR,KACbjZ,EAAE4P,QACS5P,EAAEiI,QAAQ4c,oBAAsB7kB,EAAE20B,iBAC7C30B,EAAEia,kBAIJja,EAAEkM,MAAM+D,iBAAiB,kBAAkB,YAE1C,EAAIkJ,EAAM4b,qBAAqB/0B,EAAE0c,cAAe1c,EAAEiI,QAASjI,EAAEiI,QAAQ2V,iBAAmB,IAEpF5d,EAAEwhB,gBACLxhB,EAAEwhB,iBAECxhB,EAAE+c,eACL/c,EAAE+c,gBAGE/c,EAAEyT,eACNzT,EAAEg2B,cAAch2B,EAAEoN,MAAOpN,EAAEqN,QAC3BrN,EAAE0V,sBAIJ,IAAIsE,EAAW,KACfha,EAAEkM,MAAM+D,iBAAiB,cAAc,WACjC8J,MAAM/Z,EAAE0c,gBAAkB1C,IAAaha,EAAE0c,gBAC7C1C,EAAWha,EAAE0c,eACb,EAAIvD,EAAM4b,qBAAqB/a,EAAUha,EAAEiI,QAASjI,EAAEiI,QAAQ2V,iBAAmB,IAE7E5d,EAAEwhB,gBACLxhB,EAAEwhB,iBAECxhB,EAAE+c,eACL/c,EAAE+c,gBAGH/c,EAAE0V,sBAIJ1V,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,SAAS,SAAUlQ,GAC7D2yB,EAAI/b,SAAS5W,EAAE+3B,cAAe93B,EAAEiI,QAAQuM,YAAc,kCAGvDxU,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,WAAW,SAAUlQ,GAC/D2yB,EAAI9a,YAAY7X,EAAE+3B,cAAe93B,EAAEiI,QAAQuM,YAAc,gCACrDxU,EAAEiU,SAAYnM,EAAWyO,YAAezO,EAAWsC,SAAUpK,EAAE20B,iBAAoB30B,EAAEiI,QAAQ4c,qBAChG7kB,EAAEu2B,kBAAkB,SACpBv2B,EAAEia,eACFja,EAAEka,mBAAmBla,EAAEiI,QAAQ4rB,+BAIjC7zB,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,YAAY,SAAUlQ,GAChEgC,YAAW,WACNhC,EAAEqyB,eACDpyB,EAAE+3B,iBAAmBh4B,EAAEqyB,cAAclT,QAAQ,IAAMlf,EAAEiI,QAAQuM,YAAc,eAC9ExU,EAAE+3B,gBAAiB,GACf/3B,EAAEiU,SAAYjU,EAAEiI,QAAQ4c,oBAAuB7kB,EAAEuP,QACpDvP,EAAEka,mBAAmBla,EAAEiI,QAAQ6rB,8BAIhC,MAGJ/xB,YAAW,WACV/B,EAAEg2B,cAAch2B,EAAEoN,MAAOpN,EAAEqN,QAC3BrN,EAAE0V,oBACA,GAEH1V,EAAEg4B,qBAAuB,WAClBh4B,EAAEyT,cAAgB3L,EAAW6M,4BAA8BhN,EAAW5B,QAAQkyB,oBACnFj4B,EAAEg2B,cAAch2B,EAAEoN,MAAOpN,EAAEqN,QAG5BrN,EAAE0V,mBAGH1V,EAAEsV,WAAW,SAAUtV,EAAEg4B,sBAGtBtB,GAAY7gB,GACf7V,EAAE4P,OAGC5P,EAAEiI,QAAQ8I,UACoB,iBAAtB/Q,EAAEiI,QAAQ8I,QACpBtJ,EAAS1B,QAAQ/F,EAAEiI,QAAQ8I,SAAS/Q,EAAEkM,MAAOlM,EAAE2iB,QAAS3iB,GAExDA,EAAEiI,QAAQ8I,QAAQ/Q,EAAEkM,MAAOlM,EAAE2iB,QAAS3iB,OAIvC,CACF4R,IAAK,eACL7N,MAAO,SAAsBhE,EAAGmM,EAAOR,GACtC,IAAI1L,EAAIwB,KACJoO,EAAO5P,EAAEkW,WAAWlW,EAAE2X,QAAQK,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,gBAE1E5E,IACHA,EAAK2H,MAAMmE,QAAU,QAGlB1b,EAAEiI,QAAQgB,OACbjJ,EAAEiI,QAAQgB,MAAMlJ,EAAGmM,EAAOR,GAGvB1L,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,eACzExU,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,cAAc1D,SAGrF,IAAIonB,EAAiBvwB,EAAW5B,QAAQgD,cAAc,OACtDmvB,EAAe3jB,UAAYvU,EAAEiI,QAAQuM,YAAc,aACnD0jB,EAAe3gB,MAAMnK,MAAQ,OAC7B8qB,EAAe3gB,MAAMlK,OAAS,OAE9B,IAAI8qB,EAAgD,mBAA1Bn4B,EAAEiI,QAAQqsB,YAA6Bt0B,EAAEiI,QAAQqsB,YAAYt0B,EAAEkM,MAAOlM,EAAEkM,MAAMhD,cAAgBlJ,EAAEiI,QAAQqsB,YAC9H8D,EAAW,GAEf,IAAKD,EAAc,CAClB,IAAItF,EAAS7yB,EAAEkM,MAAMhD,aAAaS,aAAa,UAS/C,GARIkpB,IACHuF,EAAW,aAAevF,EAAS,UAAYhtB,EAAOE,QAAQG,KAAKlG,EAAE,sBAAwB,MAG1FD,EAAE2G,UACLyxB,EAAe,MAAQp4B,EAAE2G,QAAU,QAGhC3G,EAAE2N,KACL,IAAK,IAAIpN,EAAI,EAAGyM,EAAQhN,EAAE2N,KAAK7M,OAAQP,EAAIyM,EAAOzM,IAAK,CACtD,IAAI0J,EAAMjK,EAAE2N,KAAKpN,GACjB63B,GAAgB,YAAcnuB,EAAIsB,IAAM,gBAAkBtB,EAAIC,KAAO,WAAapE,EAAOE,QAAQG,KAAKlG,EAAE,sBAAwB,KAAOgK,EAAIsB,IAAM,eAKhJ6sB,GAAgBn4B,EAAEkW,WAAWlW,EAAE2X,QAAQK,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,mBACtF0jB,EAAezjB,UAAY0jB,EAC3Bn4B,EAAEkW,WAAWlW,EAAE2X,QAAQK,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBAAiBC,UAAY,GAAK2jB,EAAWF,EAAeG,UAC/Hr4B,EAAEkW,WAAWlW,EAAE2X,QAAQK,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,iBAAiB5K,WAAW2N,MAAMmE,QAAU,SAG5G1b,EAAE20B,iBACL30B,EAAEs4B,oBAGF,CACF1mB,IAAK,gBACL7N,MAAO,SAAuBqJ,EAAOC,GACpC,IAAIrN,EAAIwB,KAER,IAAKxB,EAAEiI,QAAQyP,cACd,OAAO,EAWR,YARqB,IAAVtK,IACVpN,EAAEoN,MAAQA,QAGW,IAAXC,IACVrN,EAAEqN,OAASA,GAGJrN,EAAEiI,QAAQmsB,YACjB,IAAK,OACAp0B,EAAEiU,QACLjU,EAAEu4B,cAEFv4B,EAAE0X,cAAc1X,EAAEoN,MAAOpN,EAAEqN,QAE5B,MACD,IAAK,aACJrN,EAAEw4B,oBACF,MACD,IAAK,OACJx4B,EAAE0X,cAAc1X,EAAEoN,MAAOpN,EAAEqN,QAC3B,MAED,SAC0B,IAArBrN,EAAEy4B,eACLz4B,EAAEw4B,oBAEFx4B,EAAE0X,cAAc1X,EAAEoN,MAAOpN,EAAEqN,WAK7B,CACFuE,IAAK,eACL7N,MAAO,WACN,IAAI/D,EAAIwB,KAER,OAA6C,IAAtCxB,EAAEqN,OAAO/D,WAAWI,QAAQ,MAAe1J,EAAE0L,MAAQ1L,EAAE0L,KAAK6L,MAAMmhB,UAAsC,SAA1B14B,EAAE0L,KAAK6L,MAAMmhB,UAAuB14B,EAAE0L,KAAK6L,MAAMmhB,WAAa14B,EAAEoN,OAASpN,EAAE0L,MAAQ1L,EAAE0L,KAAKitB,cAAiD,SAAjC34B,EAAE0L,KAAKitB,aAAaD,WAElN,CACF9mB,IAAK,oBACL7N,MAAO,WACN,IAAI/D,EAAIwB,KACJ0S,EAAS,WAKZ,IAHA,IAAI0kB,OAAW,EACXpU,EAAKxkB,EAAEkW,WAAWlW,EAAEmW,WAEjBqO,GAAI,CACV,IACC,GAAI1c,EAAW4W,YAA2C,SAA7B8F,EAAGhb,QAAQC,eAA4BhC,EAAS1B,QAAQtE,OAASgG,EAAS1B,QAAQksB,KAAyC,OAAlCxqB,EAAS1B,QAAQ8yB,aACtI,OAAOpxB,EAAS1B,QAAQ8yB,aAExBD,EAAWpU,EAAG5T,cAEd,MAAO7Q,GACR64B,EAAWpU,EAAG5T,cAGf,GAAIgoB,GAAYlG,EAAInH,QAAQqN,GAC3B,OAAOA,EAERpU,EAAKoU,EAGN,OAAO,KAtBK,GAwBTE,EAAe5kB,EAAS+B,iBAAiB/B,EAAQ,MAAQ+B,iBAAiBtO,EAAW5B,QAAQoR,KAAM,MACnG4hB,EACC/4B,EAAEiU,QACDjU,EAAE0L,MAAQ1L,EAAE0L,KAAKwnB,YAAclzB,EAAE0L,KAAKwnB,WAAa,EAC/ClzB,EAAE0L,KAAKwnB,WACJlzB,EAAE0L,MAAQ1L,EAAE0L,KAAK/B,aAAa,SACjC3J,EAAE0L,KAAK/B,aAAa,SAEpB3J,EAAEiI,QAAQ+qB,kBAGXhzB,EAAEiI,QAAQmrB,kBAGf4F,EACCh5B,EAAEiU,QACDjU,EAAE0L,MAAQ1L,EAAE0L,KAAKynB,aAAenzB,EAAE0L,KAAKynB,YAAc,EACjDnzB,EAAE0L,KAAKynB,YACJnzB,EAAE0L,MAAQ1L,EAAE0L,KAAK/B,aAAa,UACjC3J,EAAE0L,KAAK/B,aAAa,UAEpB3J,EAAEiI,QAAQgrB,mBAGXjzB,EAAEiI,QAAQorB,mBAGf4F,EAAc,WACjB,IAAKj5B,EAAEiI,QAAQurB,eACd,OAAOxzB,EAAE+1B,mBAEV,IAAImD,EAAQ,EACZ,OAAKl5B,EAAEiU,SAKNilB,EADGl5B,EAAE0L,MAAQ1L,EAAE0L,KAAKwnB,YAAclzB,EAAE0L,KAAKwnB,WAAa,GAAKlzB,EAAE0L,KAAKynB,aAAenzB,EAAE0L,KAAKynB,YAAc,EAC9FnzB,EAAEqN,QAAUrN,EAAEoN,MAAQpN,EAAE0L,KAAKwnB,WAAalzB,EAAE0L,KAAKynB,YAAcnzB,EAAE0L,KAAKynB,YAAcnzB,EAAE0L,KAAKwnB,WAE3FlzB,EAAE+1B,oBAGPhc,MAAMmf,IAAUA,EAAQ,KAAQA,EAAQ,OAC3CA,EAAQ,GAGFA,GAbCA,EANS,GAqBdC,EAAetiB,WAAWiiB,EAAazrB,QAEvC+rB,OAAY,EACZC,EAAcxiB,WAAWiiB,EAAa1rB,OAqB1C,GAjBEgsB,EAFEp5B,EAAEiU,QACY,SAAbjU,EAAEqN,OACOwJ,WAAWwiB,EAAcL,EAAeD,EAAa,IAErD/4B,EAAEqN,QAAUrN,EAAEoN,MAAQyJ,WAAWwiB,EAAcJ,EAAa,IAAMpiB,WAAWwiB,EAAcJ,EAAa,IAGzGD,EAGTjf,MAAMqf,KACTA,EAAYD,GAGTn5B,EAAEkW,WAAWlW,EAAEmW,WAAWvM,YAAc5J,EAAEkW,WAAWlW,EAAEmW,WAAWvM,WAAW/I,OAAS,GAAoE,SAA/Db,EAAEkW,WAAWlW,EAAEmW,WAAWvM,WAAWJ,QAAQC,gBAC3I4vB,EAAc5xB,EAAS1B,QAAQkR,YAActP,EAAW5B,QAAQ6Q,gBAAgBM,aAAevP,EAAW5B,QAAQoR,KAAKD,YACvHkiB,EAAY3xB,EAAS1B,QAAQuzB,aAAe3xB,EAAW5B,QAAQ6Q,gBAAgB2iB,cAAgB5xB,EAAW5B,QAAQoR,KAAKoiB,cAGpHH,GAAaC,EAAa,CAC7Br5B,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMnK,MAAQisB,EAAc,KACtDr5B,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMlK,OAAS+rB,EAAY,KAEjDp5B,EAAE0L,OACL1L,EAAE0L,KAAK6L,MAAMnK,MAAQ,OACrBpN,EAAE0L,KAAK6L,MAAMlK,OAAS,QAGnBrN,EAAEiU,SAAWjU,EAAEkM,MAAMiB,SACxBnN,EAAEkM,MAAMiB,QAAQksB,EAAaD,GAI9B,IADA,IAAII,EAAgBx5B,EAAEkW,WAAWlW,EAAE2X,QAAQnM,SAClClL,EAAI,EAAGyM,EAAQysB,EAAc34B,OAAQP,EAAIyM,EAAOzM,IACxDk5B,EAAcl5B,GAAGiX,MAAMnK,MAAQ,OAC/BosB,EAAcl5B,GAAGiX,MAAMlK,OAAS,UAIjC,CACFuE,IAAK,cACL7N,MAAO,WACN,IAAI/D,EAAIwB,KACJi4B,EAAWhyB,EAAS1B,QAAQtE,OAASgG,EAAS1B,QAAQksB,KAAyC,OAAlCxqB,EAAS1B,QAAQ8yB,aAC9E3kB,EAAS,WAIZ,IAHA,IAAI0kB,OAAW,EACXpU,EAAKxkB,EAAEkW,WAAWlW,EAAEmW,WAEjBqO,GAAI,CACV,IACC,GAAI1c,EAAW4W,YAA2C,SAA7B8F,EAAGhb,QAAQC,eAA4BhC,EAAS1B,QAAQtE,OAASgG,EAAS1B,QAAQksB,KAAyC,OAAlCxqB,EAAS1B,QAAQ8yB,aACtI,OAAOpxB,EAAS1B,QAAQ8yB,aAExBD,EAAWpU,EAAG5T,cAEd,MAAO7Q,GACR64B,EAAWpU,EAAG5T,cAGf,GAAIgoB,GAAYlG,EAAInH,QAAQqN,GAC3B,OAAOA,EAERpU,EAAKoU,EAGN,OAAO,KArBK,GAuBTE,EAAe5kB,EAAS+B,iBAAiB/B,EAAQ,MAAQ+B,iBAAiBtO,EAAW5B,QAAQoR,KAAM,MAE3E,SAAxBnX,EAAE0L,KAAK6L,MAAMlK,QAAqBrN,EAAE0L,KAAK6L,MAAMlK,SAAWrN,EAAEqN,SAC/DrN,EAAE0L,KAAK6L,MAAMlK,OAAS,QAEO,SAA1BrN,EAAE0L,KAAK6L,MAAMmhB,UAAuB14B,EAAE0L,KAAK6L,MAAMmhB,WAAa14B,EAAEoN,QACnEpN,EAAE0L,KAAK6L,MAAMmhB,SAAW,QAGM,SAA3B14B,EAAE0L,KAAK6L,MAAMmiB,WAAwB15B,EAAE0L,KAAK6L,MAAMmiB,YAAc15B,EAAEqN,SACrErN,EAAE0L,KAAK6L,MAAMmiB,UAAY,QAGtB15B,EAAE0L,KAAKitB,eACyB,SAA/B34B,EAAE0L,KAAKitB,aAAatrB,SACvBrN,EAAE0L,KAAKitB,aAAatrB,OAAS,QAEO,SAAjCrN,EAAE0L,KAAKitB,aAAaD,WACvB14B,EAAE0L,KAAKitB,aAAaD,SAAW,QAEM,SAAlC14B,EAAE0L,KAAKitB,aAAae,YACvB15B,EAAE0L,KAAKitB,aAAae,UAAY,SAI7BD,GAAa5iB,WAAWiiB,EAAa1rB,SACzC8G,EAAOqD,MAAMnK,MAAQpN,EAAEkM,MAAM6P,YAAc,MAGvC0d,GAAa5iB,WAAWiiB,EAAazrB,UACzC6G,EAAOqD,MAAMlK,OAASrN,EAAEkM,MAAMytB,aAAe,MAG9Cb,EAAe7iB,iBAAiB/B,GAEhC,IAAImlB,EAAcxiB,WAAWiiB,EAAa1rB,OACtC+rB,EAAetiB,WAAWiiB,EAAazrB,QAE3CrN,EAAE0X,cAAc,OAAQ,QAExB,IAAImb,EAAS7yB,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,cAC/Eqe,IACHA,EAAOtb,MAAMmE,QAAU,IAgBxB,IAbA,IAAIke,EAAgB55B,EAAEkW,WAAWlW,EAAEmW,WAAWsB,iBAAiB,gCAC3DoiB,EAAa75B,EAAEqN,OACfysB,EAAY95B,EAAEoN,MACd2sB,EAAUV,EACVW,EAAUH,EAAaR,EAAcS,EACrCG,EAAUH,EAAYX,EAAeU,EACrCK,EAAUf,EACVgB,EAAgBF,EAAUZ,IAAgB,EAC1Ce,EAAaD,EAAgB/wB,KAAKuV,MAAMob,GAAW3wB,KAAKuV,MAAMsb,GAC9DI,EAAcF,EAAgB/wB,KAAKuV,MAAMqb,GAAW5wB,KAAKuV,MAAMub,GAC/D9sB,EAAQ+sB,EAAgBd,EAAc,KAAOe,EAAa,KAC1D/sB,EAAS8sB,EAAgBE,EAAc,KAAOlB,EAAe,KAExD74B,EAAI,EAAGyM,EAAQ6sB,EAAc/4B,OAAQP,EAAIyM,EAAOzM,IACxDs5B,EAAct5B,GAAGiX,MAAMlK,OAASA,EAChCusB,EAAct5B,GAAGiX,MAAMnK,MAAQA,EAC3BpN,EAAEkM,MAAMiB,SACXnN,EAAEkM,MAAMiB,QAAQC,EAAOC,GAGxBusB,EAAct5B,GAAGiX,MAAMiG,WAAapU,KAAKuV,OAAO0a,EAAce,GAAc,GAAK,KACjFR,EAAct5B,GAAGiX,MAAM+iB,UAAY,IAGnC,CACF1oB,IAAK,gBACL7N,MAAO,SAAuBqJ,EAAOC,GACpC,IAAIrN,EAAIwB,KAER4L,GAAQ,EAAInH,EAASoO,UAAUjH,IAAUA,EAAM1D,QAAQ,MAAQ,EAAI0D,EAAQyJ,WAAWzJ,GAAS,KAC/FC,GAAS,EAAIpH,EAASoO,UAAUhH,IAAWA,EAAO3D,QAAQ,MAAQ,EAAI2D,EAASwJ,WAAWxJ,GAAU,KAEpGrN,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMnK,MAAQA,EACxCpN,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMlK,OAASA,EAGzC,IADA,IAAIsK,EAAS3X,EAAEkW,WAAWlW,EAAE2X,QAAQnM,SAC3BlL,EAAI,EAAGyM,EAAQ4K,EAAO9W,OAAQP,EAAIyM,EAAOzM,IACjDqX,EAAOrX,GAAGiX,MAAMnK,MAAQA,EACxBuK,EAAOrX,GAAGiX,MAAMlK,OAASA,IAGzB,CACFuE,IAAK,kBACL7N,MAAO,WACN,IAAI/D,EAAIwB,KAER,GAAKkxB,EAAInH,QAAQvrB,EAAEkW,WAAWlW,EAAEmW,YAIhC,GAAInW,EAAE8Z,MAAQ4Y,EAAInH,QAAQvrB,EAAE8Z,MAAO,CAYlC,IAXA,IAAI8B,EAAc5b,EAAE+M,MAAQkJ,iBAAiBjW,EAAE+M,MAAO,MAAQ,KAC1DwtB,EAAc3e,EAAc/E,WAAW+E,EAAY4B,YAAc3G,WAAW+E,EAAY4e,aAAe,EACvGC,EAAaxkB,iBAAiBjW,EAAE8Z,MAChC4gB,EAAa7jB,WAAW4jB,EAAWjd,YAAc3G,WAAW4jB,EAAWD,aAEvEG,EAAgB,EAEhBpW,EAAWmO,EAAInO,SAASvkB,EAAE8Z,MAAM,SAAU0K,GAC7C,OAAOA,IAAOxkB,EAAE8Z,QAEb/M,EAAQwX,EAAS1jB,OACZP,EAAI,EAAGA,EAAIyM,EAAOzM,IAC1Bq6B,GAAiBpW,EAASjkB,GAAGyb,YAG9B4e,GAAiBJ,GAA+B,IAAhBA,EAAiC,EAAbG,EAAiBA,GAAc,EAEnF16B,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMqjB,SAAWD,EAAgB,KAE3D,IAAIntB,GAAQ,EAAIvH,EAASwH,aAAa,iBAAkBzN,EAAEkW,WAAWlW,EAAEmW,YACvEnW,EAAEkW,WAAWlW,EAAEmW,WAAWxI,cAAcH,OAClC,CAIN,IAHA,IAAIhC,EAAWxL,EAAEkW,WAAWlW,EAAE2Y,UAAUnN,SACpCovB,EAAW,EAEN9tB,EAAK,EAAGkD,EAASxE,EAAS3K,OAAQiM,EAAKkD,EAAQlD,IACvD8tB,GAAYpvB,EAASsB,GAAIiP,YAG1B/b,EAAEkW,WAAWlW,EAAEmW,WAAWoB,MAAMqjB,SAAWA,EAAW,QAGtD,CACFhpB,IAAK,oBACL7N,MAAO,SAA2BqX,EAASxJ,GAE1C,IAAI5R,EAAIwB,KAER,QAA+Be,IAA3BvC,EAAE62B,gBAAgBjlB,GAAoB,CACzC,IAAIipB,EAAQ76B,EAAEkW,WAAWlW,EAAE2Y,UAAUnN,SAASxL,EAAE62B,gBAAgBjlB,GAAO,GACvEipB,EAAMjxB,WAAWC,aAAauR,EAASyf,EAAM5J,iBACvC,CACNjxB,EAAEkW,WAAWlW,EAAE2Y,UAAU7O,YAAYsR,GAErC,IADA,IAAI5P,EAAWxL,EAAEkW,WAAWlW,EAAE2Y,UAAUnN,SAC/BlL,EAAI,EAAGyM,EAAQvB,EAAS3K,OAAQP,EAAIyM,EAAOzM,IACnD,GAAI8a,IAAY5P,EAASlL,GAAI,CAC5BN,EAAE62B,gBAAgBjlB,GAAOtR,EACzB,UAKF,CACFsR,IAAK,oBACL7N,MAAO,WACN,IAAI/D,EAAIwB,KAER,GAAIxB,EAAEiU,SAAoC,OAAzBjU,EAAEkM,MAAMF,cAAyBhM,EAAEkM,MAAMF,aAAatC,QAAQ,WAAa,IAAM/B,EAAW5B,QAAQoD,eAAenJ,EAAEkM,MAAMlD,GAAK,mBAAoB,CAEpK,IAAI8xB,EAAQnzB,EAAW5B,QAAQgD,cAAc,OACzCwI,EAAS5J,EAAW5B,QAAQoD,eAAenJ,EAAEkM,MAAMlD,GAAK,IAAMhJ,EAAEkM,MAAMF,cAE1E8uB,EAAM9xB,GAAKhJ,EAAEkM,MAAMlD,GAAK,kBACxB8xB,EAAMvmB,UAAYvU,EAAEiI,QAAQuM,YAAc,iBAC1CsmB,EAAM7qB,iBAAiB,SAAS,SAAUlQ,GACrCC,EAAEiI,QAAQ0rB,mBACT3zB,EAAEuP,OACLvP,EAAE4P,OAEF5P,EAAEqM,QAGHtM,EAAE6e,iBACF7e,EAAE8e,sBAIJtN,EAAO3H,WAAWC,aAAaixB,EAAOvpB,MAGtC,CACFK,IAAK,YACL7N,MAAO,WACN,IAAI/D,EAAIwB,KAERO,YAAW,WACV/B,EAAEg2B,cAAch2B,EAAEoN,MAAOpN,EAAEqN,QAC3BrN,EAAE0V,oBACA,MAEF,CACF9D,IAAK,YACL7N,MAAO,SAAmBiG,GACzB,IAAIhK,EAAIwB,KAER,GAAIxB,EAAEkW,WAAWlW,EAAEmW,WAAY,CAC9B,IAAI4kB,EAAY/6B,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,UAEjFumB,KACJA,EAAYpzB,EAAW5B,QAAQgD,cAAc,QACnCwL,UAAYvU,EAAEiI,QAAQuM,YAAc,UAAYxU,EAAEiI,QAAQuM,YAAc,QAClFxU,EAAEkW,WAAWlW,EAAE2X,QAAQ7N,YAAYixB,IAGpC,IAAIC,EAAYD,EAAU/iB,cAAc,QAEnCgjB,GAAahxB,KACjBgxB,EAAYrzB,EAAW5B,QAAQgD,cAAc,QACnCwL,UAAYvU,EAAEiI,QAAQuM,YAAc,aAC9CwmB,EAAU5tB,MAAQ,OAClB4tB,EAAU3tB,OAAS,OACnB0tB,EAAUxjB,MAAMmE,QAAU,GAC1Bqf,EAAUjxB,YAAYkxB,IAGnBhxB,GACHgxB,EAAUzxB,aAAa,MAAOS,GAC9B+wB,EAAUxjB,MAAM0jB,gBAAkB,QAAUjxB,EAAM,KAClD+wB,EAAUxjB,MAAMmE,QAAU,IAChBsf,GACVD,EAAUxjB,MAAM0jB,gBAAkB,OAClCF,EAAUxjB,MAAMmE,QAAU,OAC1Bsf,EAAUlqB,UAEViqB,EAAUxjB,MAAMmE,QAAU,YAEjB5T,EAAWutB,SAAWr1B,EAAEiI,QAAQ8rB,uBAAyBjsB,EAAWwtB,WAAat1B,EAAEiI,QAAQ+rB,yBAA2BlsB,EAAWyO,YAAcvW,EAAEiI,QAAQgsB,4BACnKj0B,EAAEkM,MAAMhD,aAAa2pB,OAAS7oB,KAG9B,CACF4H,IAAK,aACL7N,MAAO,SAAoBwQ,GAC1B,IAAIvU,EAAIwB,KAERxB,EAAEkW,WAAWlW,EAAEmW,WAAW5B,UAAYvU,EAAEiI,QAAQuM,YAAc,aAAeD,EAC7EvU,EAAEg2B,cAAch2B,EAAEoN,MAAOpN,EAAEqN,QAC3BrN,EAAE0V,oBAED,CACF9D,IAAK,aACL7N,MAAO,SAAoB8H,EAAQsE,GAClC,IAAInQ,EAAIwB,KACJ05B,EAAMl7B,EAAE0L,KAAO1L,EAAE0L,KAAKyvB,cAAgBxzB,EAAW5B,QAGrD,IADA8F,GAAS,EAAI5F,EAASm1B,aAAavvB,EAAQ7L,EAAEgJ,KAClCkf,EAEV,IADA,IAAImT,EAAYxvB,EAAOqc,EAAEzB,MAAM,KACtBnmB,EAAI,EAAGyM,EAAQsuB,EAAUx6B,OAAQP,EAAIyM,EAAOzM,IACpD+6B,EAAU/6B,GAAGmmB,MAAM,KAAK6U,QAAO,SAAUC,EAAMx7B,GAE9C,OADAm7B,EAAIjrB,iBAAiBlQ,EAAGoQ,GAAU,GAC3BpQ,IACL,IAGL,GAAI8L,EAAO2vB,EAEV,IADA,IAAIC,EAAa5vB,EAAO2vB,EAAE/U,MAAM,KACvBxX,EAAM,EAAGoJ,EAAUojB,EAAW56B,OAAQoO,EAAMoJ,EAASpJ,IAC7DwsB,EAAWxsB,GAAKwX,MAAM,KAAK6U,QAAO,SAAUC,EAAMx7B,GAEjD,OADA0H,EAAS1B,QAAQkK,iBAAiBlQ,EAAGoQ,GAAU,GACxCpQ,IACL,MAIJ,CACF6R,IAAK,eACL7N,MAAO,SAAsB8H,EAAQsE,GACpC,IAAInQ,EAAIwB,KACJ05B,EAAMl7B,EAAE0L,KAAO1L,EAAE0L,KAAKyvB,cAAgBxzB,EAAW5B,QAGrD,IADA8F,GAAS,EAAI5F,EAASm1B,aAAavvB,EAAQ7L,EAAEgJ,KAClCkf,EAEV,IADA,IAAImT,EAAYxvB,EAAOqc,EAAEzB,MAAM,KACtBnmB,EAAI,EAAGyM,EAAQsuB,EAAUx6B,OAAQP,EAAIyM,EAAOzM,IACpD+6B,EAAU/6B,GAAGmmB,MAAM,KAAK6U,QAAO,SAAUC,EAAMx7B,GAE9C,OADAm7B,EAAI9qB,oBAAoBrQ,EAAGoQ,GAAU,GAC9BpQ,IACL,IAGL,GAAI8L,EAAO2vB,EAEV,IADA,IAAIE,EAAc7vB,EAAO2vB,EAAE/U,MAAM,KACxB3W,EAAM,EAAGsU,EAAUsX,EAAY76B,OAAQiP,EAAMsU,EAAStU,IAC9D4rB,EAAY5rB,GAAK2W,MAAM,KAAK6U,QAAO,SAAUC,EAAMx7B,GAElD,OADA0H,EAAS1B,QAAQqK,oBAAoBrQ,EAAGoQ,GAAU,GAC3CpQ,IACL,MAIJ,CACF6R,IAAK,gBACL7N,MAAO,SAAuBiQ,EAAQ2E,EAAUhB,EAAQzL,GAGvD,IAFA,IAAIlM,EAAIwB,KAEClB,EAAI,EAAGyM,EAAQ/M,EAAEiI,QAAQisB,SAASrzB,OAAQP,EAAIyM,EAAOzM,IAAK,CAClE,IAAIq7B,EAAU37B,EAAEiI,QAAQisB,SAAS5zB,GACjC,GAAIN,EAAE,QAAU27B,GACf,IACC37B,EAAE,QAAU27B,GAAS3nB,EAAQ2E,EAAUhB,EAAQzL,GAC9C,MAAOnM,GACRkF,QAAQgE,MAAM,kBAAoB0yB,EAAS57B,OAK7C,CACF6R,IAAK,cACL7N,MAAO,SAAqBiQ,EAAQ2E,EAAUhB,EAAQzL,GACrD,IAAIlM,EAAIwB,KACJqxB,EAASlrB,EAAW5B,QAAQgD,cAAc,OAE9C8pB,EAAOte,UAAYvU,EAAEiI,QAAQuM,YAAc,UAAYxU,EAAEiI,QAAQuM,YAAc,QAC/EmD,EAAO7N,YAAY+oB,GAEnB,IAAI+I,EAAY1vB,EAAMhD,aAAaS,aAAa,UAElB,KAA1BqK,EAAO/L,QAAQ4qB,SACd+I,GAAa9zB,EAAWsC,QAC3B8B,EAAMhD,aAAa2H,gBAAgB,UAEpC+qB,EAAY5nB,EAAO/L,QAAQ4qB,QAGxB+I,EACH57B,EAAE67B,UAAUD,GACmB,OAArB57B,EAAEkM,MAAMH,UAA8D,mBAAlC/L,EAAEkM,MAAMH,SAAS+vB,aAC/D97B,EAAE67B,UAAU77B,EAAEkM,MAAMH,SAAS+vB,gBAE7BjJ,EAAOtb,MAAMmE,QAAU,OAGxBxP,EAAM+D,iBAAiB,QAAQ,WAC9B4iB,EAAOtb,MAAMmE,QAAU,UAGxBxP,EAAM+D,iBAAiB,WAAW,WACjC4iB,EAAOtb,MAAMmE,QAAU,UAGpB1H,EAAO/L,QAAQ6qB,qBAAuB9e,EAAO/L,QAAQ2R,YACxD1N,EAAM+D,iBAAiB,SAAS,WAC/B4iB,EAAOtb,MAAMmE,QAAU,MAIzBxP,EAAM+D,iBAAiB,SAAS,WAC/B4iB,EAAOtb,MAAMmE,QAAU,UAGpB1H,EAAO/L,QAAQ8qB,sBAClB7mB,EAAM+D,iBAAiB,SAAS,WAC1B+D,EAAOugB,QACX1B,EAAOtb,MAAMmE,QAAU,SAKzB,CACF9J,IAAK,gBACL7N,MAAO,SAAuBiQ,EAAQ2E,EAAUhB,EAAQzL,GAEvD,GAAK8H,EAAOC,QAAZ,CAIA,IAAIjU,EAAIwB,KACJu6B,EAAUp0B,EAAW5B,QAAQgD,cAAc,OAC3CE,EAAQtB,EAAW5B,QAAQgD,cAAc,OACzCizB,EAAUr0B,EAAW5B,QAAQgD,cAAc,OAE/CgzB,EAAQxkB,MAAMmE,QAAU,OACxBqgB,EAAQxnB,UAAYvU,EAAEiI,QAAQuM,YAAc,WAAaxU,EAAEiI,QAAQuM,YAAc,QACjFunB,EAAQtnB,UAAY,eAAiBzU,EAAEiI,QAAQuM,YAA3B,kOACpBmD,EAAO7N,YAAYiyB,GAEnB9yB,EAAMsO,MAAMmE,QAAU,OACtBzS,EAAMsL,UAAYvU,EAAEiI,QAAQuM,YAAc,WAAaxU,EAAEiI,QAAQuM,YAAc,QAC/EvL,EAAMwL,UAAY,eAAiBzU,EAAEiI,QAAQuM,YAAc,wBAC3DmD,EAAO7N,YAAYb,GAEnB+yB,EAAQznB,UAAYvU,EAAEiI,QAAQuM,YAAc,WAAaxU,EAAEiI,QAAQuM,YAAc,SAAWxU,EAAEiI,QAAQuM,YAAc,eACpHwnB,EAAQvnB,UAAY,eAAiBzU,EAAEiI,QAAQuM,YAA3B,0DAA2G3B,EAAO9M,QAAQ/F,EAAE,aAAe,gCAC/Jg8B,EAAQ/rB,iBAAiB,SAAS,WACjC,GAAIjQ,EAAEiI,QAAQ0rB,iBAAkB,CAE/B,IAAI3J,EAAShqB,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,kBAC/E+iB,EAAUvN,EAAOrgB,aAAa,gBAE9B3J,EAAEuP,OACLvP,EAAE4P,OAEF5P,EAAEqM,QAGH2d,EAAOzgB,aAAa,iBAAkBguB,GACtCv3B,EAAEkW,WAAWlW,EAAEmW,WAAWiE,YAI5B4hB,EAAQ/rB,iBAAiB,WAAW,SAAUlQ,GAC7C,IAAIk8B,EAAal8B,EAAEqV,SAAWrV,EAAEoV,OAAS,EAEzC,GAAmB,KAAf8mB,GAAqBn0B,EAAW4W,YAA6B,KAAfud,EAAmB,CACpE,IAAIzuB,GAAQ,EAAIvH,EAASwH,aAAa,QAASuuB,GAE/C,OADAA,EAAQruB,cAAcH,IACf,MAITmK,EAAO7N,YAAYkyB,GAEU,OAAzBh8B,EAAEkM,MAAMF,eAA0B,sBAAsBxF,KAAKxG,EAAEkM,MAAMF,iBAAmBhM,EAAEkM,MAAMhD,aAAaS,aAAa,WAAaqK,EAAO/L,QAAQ4qB,QAAmD,mBAAlC7yB,EAAEkM,MAAMH,SAAS+vB,cAA+B97B,EAAEkM,MAAMH,SAAS+vB,iBAAmBh0B,EAAWo0B,kBAAoBl8B,EAAEkM,MAAMhD,aAAaS,aAAa,eAC/TqyB,EAAQzkB,MAAMmE,QAAU,QAGzB,IAAIygB,GAAW,EAEfjwB,EAAM+D,iBAAiB,QAAQ,WAC9B+rB,EAAQzkB,MAAMmE,QAAU,OACxBqgB,EAAQxkB,MAAMmE,QAAU,OACxBzS,EAAMsO,MAAMmE,QAAU,OACtBygB,GAAW,KAEZjwB,EAAM+D,iBAAiB,WAAW,WACjC+rB,EAAQzkB,MAAMmE,QAAU,OACxBqgB,EAAQxkB,MAAMmE,QAAU,OACxBzS,EAAMsO,MAAMmE,QAAU,OACtBygB,GAAW,KAEZjwB,EAAM+D,iBAAiB,WAAW,WACjC+rB,EAAQzkB,MAAMmE,QAAU,OACxBqgB,EAAQxkB,MAAMmE,QAAU,GACxBygB,GAAW,KAEZjwB,EAAM+D,iBAAiB,UAAU,WAChC+rB,EAAQzkB,MAAMmE,QAAU1b,EAAEuP,SAAWzH,EAAWo0B,iBAAmB,GAAK,OACxEH,EAAQxkB,MAAMmE,QAAU,OACxBygB,GAAW,KAEZjwB,EAAM+D,iBAAiB,SAAS,WAC/B8rB,EAAQxkB,MAAMmE,QAAU,OACnB5T,EAAWo0B,kBAAqBC,IACpCH,EAAQzkB,MAAMmE,QAAU,IAEzBygB,GAAW,KAEZjwB,EAAM+D,iBAAiB,WAAW,WACjC8rB,EAAQxkB,MAAMmE,QAAU,GACxBygB,GAAW,KAGZjwB,EAAM+D,iBAAiB,cAAc,WACpC8rB,EAAQxkB,MAAMmE,QAAU,GAEpB5T,EAAWyO,aACdrK,EAAMkwB,eAAiBr6B,YAAW,WACjC,GAAI4F,EAAW5B,QAAQ0H,YAAa,CACnC,IAAI4uB,EAAM10B,EAAW5B,QAAQ0H,YAAY,cAEzC,OADA4uB,EAAIC,UAAU,WAAW,GAAM,GACxBpwB,EAAMyB,cAAc0uB,MAE1B,MAEJF,GAAW,KAEZjwB,EAAM+D,iBAAiB,WAAW,WACjC8rB,EAAQxkB,MAAMmE,QAAU,OAExBvD,aAAajM,EAAMkwB,gBACnBD,GAAW,KAGZjwB,EAAM+D,iBAAiB,SAAS,SAAUlQ,GACzCC,EAAEm1B,aAAap1B,EAAGC,EAAEkM,MAAOlM,EAAE0L,MAC7BqwB,EAAQxkB,MAAMmE,QAAU,OACxBsgB,EAAQzkB,MAAMmE,QAAU,OACxBygB,GAAW,KAGZjwB,EAAM+D,iBAAiB,kBAAkB,WACnCjQ,EAAE20B,iBACN30B,EAAE22B,oBAIJzqB,EAAM+D,iBAAiB,WAAW,SAAUlQ,GAC3CC,EAAEu8B,UAAUvoB,EAAQ9H,EAAOnM,GAC3Bo8B,GAAW,QAGX,CACFvqB,IAAK,gBACL7N,MAAO,SAAuBiQ,EAAQ2E,EAAUhB,EAAQzL,GAEvD,IAAIlM,EAAIwB,KAERxB,EAAEkW,WAAWlW,EAAEmW,WAAWlG,iBAAiB,WAAW,WACrDjQ,EAAE+3B,gBAAiB,KAGpB/3B,EAAEw8B,sBAAwB,SAAUhvB,GACnC,IAAK7F,EAAW5B,QAAQ02B,cACvB,OAAO,EAGR,IAAItmB,EAAYxO,EAAW5B,QAAQ02B,cAAcvd,QAAQ,IAAMlf,EAAEiI,QAAQuM,YAAc,aACnFjD,EAASvR,EAAEkM,MAAMgT,QAAQ,IAAMlf,EAAEiI,QAAQuM,YAAc,aAE3D,OADAxU,EAAE00B,YAAcve,IAAa5E,GAAU4E,EAAUnN,KAAOuI,EAAOvI,IACxDhJ,EAAEu8B,UAAUvoB,EAAQ9H,EAAOsB,IAGnCxN,EAAE08B,oBAAsB,SAAUlvB,GACjCxN,EAAE00B,WAAalnB,EAAM+D,OAAO2N,QAAQ,IAAMlf,EAAEiI,QAAQuM,YAAc,cAGnExU,EAAEsV,WAAW,UAAWtV,EAAEw8B,uBAE1Bx8B,EAAEsV,WAAW,QAAStV,EAAE08B,uBAEvB,CACF9qB,IAAK,YACL7N,MAAO,SAAmBiQ,EAAQ9H,EAAOnM,GAExC,GAAIiU,EAAO0gB,UAAY1gB,EAAO/L,QAAQoN,eACrC,IAAK,IAAI/U,EAAI,EAAGyM,EAAQiH,EAAO/L,QAAQ8M,WAAWlU,OAAQP,EAAIyM,EAAOzM,IAGpE,IAFA,IAAIq8B,EAAY3oB,EAAO/L,QAAQ8M,WAAWzU,GAEjCgS,EAAI,EAAGC,EAAKoqB,EAAUxwB,KAAKtL,OAAQyR,EAAIC,EAAID,IACnD,GAAIvS,EAAEqV,UAAYunB,EAAUxwB,KAAKmG,GAIhC,OAHAqqB,EAAU3nB,OAAOhB,EAAQ9H,EAAOnM,EAAEqV,QAASrV,GAC3CA,EAAE6e,sBACF7e,EAAE8e,kBAON,OAAO,IAEN,CACFjN,IAAK,OACL7N,MAAO,WACN,OAAOvC,KAAKsd,MAAMlP,SAEjB,CACFgC,IAAK,QACL7N,MAAO,WACN,OAAOvC,KAAKsd,MAAMzS,UAEjB,CACFuF,IAAK,OACL7N,MAAO,WACN,OAAOvC,KAAKsd,MAAM8d,SAEjB,CACFhrB,IAAK,iBACL7N,MAAO,SAAwByb,GAC9Bhe,KAAKsd,MAAMrE,eAAe+E,KAEzB,CACF5N,IAAK,iBACL7N,MAAO,WACN,OAAOvC,KAAKsd,MAAMvE,cAEjB,CACF3I,IAAK,cACL7N,MAAO,WACN,OAAOvC,KAAKsd,MAAM9E,WAEjB,CACFpI,IAAK,YACL7N,MAAO,SAAmBqa,GACzB5c,KAAKsd,MAAMV,OAASA,IAEnB,CACFxM,IAAK,YACL7N,MAAO,WACN,OAAOvC,KAAKsd,MAAM+d,cAEjB,CACFjrB,IAAK,WACL7N,MAAO,SAAkBA,GACxBvC,KAAKsd,MAAMN,SAASza,KAEnB,CACF6N,IAAK,SACL7N,MAAO,SAAgBuH,GACjB9J,KAAKmzB,iBACTnzB,KAAKm1B,iBAENn1B,KAAKsd,MAAMtS,OAAOlB,KAEjB,CACFsG,IAAK,SACL7N,MAAO,WACN,OAAOvC,KAAKsd,MAAMlQ,WAEjB,CACFgD,IAAK,cACL7N,MAAO,SAAqBkG,GAC3B,OAAOzI,KAAKsd,MAAMtM,YAAYvI,KAE7B,CACF2H,IAAK,SACL7N,MAAO,WACN,IAAI/D,EAAIwB,KACJwK,EAAehM,EAAEkM,MAAMF,aACvBV,EAAMtL,EAAEkM,MAAMhD,aAAaoC,IAE/B,IAAK,IAAIwxB,KAAgB98B,EAAEiI,QAAQisB,SAAU,CAC5C,IAAIyH,EAAU37B,EAAEiI,QAAQisB,SAAS4I,GACjC,GAAI98B,EAAE,QAAU27B,GACf,IACC37B,EAAE,QAAU27B,GAAS37B,EAAGA,EAAEkW,WAAWlW,EAAE2X,QAAS3X,EAAEkW,WAAWlW,EAAE2Y,UAAW3Y,EAAEkM,OAC3E,MAAOnM,GACRkF,QAAQgE,MAAM,kBAAoB0yB,EAAS57B,IAK9C,IAAIg5B,EAAc/4B,EAAE0L,KAAK/B,aAAa,SAClCqvB,EAAeh5B,EAAE0L,KAAK/B,aAAa,UA4FvC,GA1FIovB,GAC+B,IAA9BA,EAAYrvB,QAAQ,OACvBqvB,GAA4B,MAG7BA,EAAc,OAGXC,GACgC,IAA/BA,EAAatvB,QAAQ,OACxBsvB,GAA8B,MAG/BA,EAAe,OAGhBh5B,EAAE0L,KAAK6L,MAAMnK,MAAQ2rB,EACrB/4B,EAAE0L,KAAK6L,MAAMlK,OAAS2rB,EAEtBh5B,EAAEg2B,cAAc,EAAG,GAEdh2B,EAAEo1B,UA4DNp1B,EAAEkW,WAAWlW,EAAEmW,WAAWvM,WAAWC,aAAa7J,EAAE0L,KAAM1L,EAAEkW,WAAWlW,EAAEmW,YA3DzE,WACCnW,EAAE0L,KAAKnC,aAAa,YAAY,GAChCvJ,EAAE0L,KAAKnC,aAAa,KAAMvJ,EAAE0L,KAAK/B,aAAa,MAAMvC,QAAQ,IAAM4E,EAAc,IAAI5E,QAAQ,aAAc,KAC1G,IAAIyrB,EAAS7yB,EAAEkW,WAAWlW,EAAEmW,WAAW6B,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,eAC/Eqe,GACH7yB,EAAE0L,KAAKnC,aAAa,SAAUspB,EAAOvnB,YAG/BtL,EAAE0L,KAAKgrB,SAEd12B,EAAE0L,KAAKnC,aAAa,MAAO,IACmC,KAA1DvJ,EAAEkM,MAAMsG,aAAY,EAAIpD,EAAOP,iBAAiBvD,KACnDtL,EAAE0L,KAAKnC,aAAa,MAAO+B,GAGxBU,GAAgBA,EAAatC,QAAQ,WAAa,IACzC/B,EAAW5B,QAAQoD,eAAenJ,EAAEkM,MAAMlD,GAAK,mBACrD8H,SAGP,IAAIpF,EAAO1L,EAAE0L,KAAKgF,YAKlB,GAJAhF,EAAK6L,MAAMmE,QAAU,GACrB1b,EAAEkW,WAAWlW,EAAEmW,WAAWvM,WAAWC,aAAa6B,EAAM1L,EAAEkW,WAAWlW,EAAEmW,YACvEnW,EAAE0L,KAAKoF,SAEH9Q,EAAEoL,WACL,IAAK,IAAI9K,EAAI,EAAGyM,EAAQ/M,EAAEoL,WAAWvK,OAAQP,EAAIyM,EAAOzM,IAAK,CAC5D,IAAIy8B,EAASp1B,EAAW5B,QAAQgD,cAAc,UAC9Cg0B,EAAOxzB,aAAa,MAAOvJ,EAAEoL,WAAW9K,GAAGgL,KAC3CyxB,EAAOxzB,aAAa,OAAQvJ,EAAEoL,WAAW9K,GAAG2J,MAC5CyB,EAAK5B,YAAYizB,GAGnB,GAAI/8B,EAAEuiB,WAgBL,IAfA,IAAIya,EAAS,SAAgBjtB,EAAKsU,GACjC,IAAIe,EAAQplB,EAAEuiB,WAAWxS,GACrBktB,EAAWt1B,EAAW5B,QAAQgD,cAAc,SAChDk0B,EAAS5Z,KAAO+B,EAAM/B,KACtB4Z,EAASvd,MAAQ0F,EAAM1F,MACvBud,EAASpZ,QAAUuB,EAAMvB,QACzBoZ,EAAS3xB,IAAM8Z,EAAM9Z,IAErBI,EAAK5B,YAAYmzB,GACjBA,EAAShtB,iBAAiB,QAAQ,WACjCzO,KAAKsU,KAAO,UACZpK,EAAKkX,WAAW7S,GAAK+F,KAAO,cAIrB/F,EAAM,EAAGsU,EAAUrkB,EAAEuiB,WAAW1hB,OAAQkP,EAAMsU,EAAStU,IAC/DitB,EAAOjtB,UAIF/P,EAAE0L,YACF1L,EAAEoL,kBACFpL,EAAEuiB,WAxDV,GA8DGviB,EAAEkM,MAAMH,UAAgD,mBAA7B/L,EAAEkM,MAAMH,SAAS0E,SAC/CzQ,EAAEkM,MAAMH,SAAS0E,iBAGX5K,EAAOE,QAAQ6sB,QAAQ5yB,EAAEgJ,IAEW,WAAvCvD,EAAQzF,EAAEkW,WAAWlW,EAAEmW,YAA0B,CACpD,IAAIqf,EAAYx1B,EAAEkW,WAAWlW,EAAEmW,WAAWvM,WAAWoO,cAAc,IAAMhY,EAAEiI,QAAQuM,YAAc,aAC7FghB,GACHA,EAAU1kB,SAEX9Q,EAAEkW,WAAWlW,EAAEmW,WAAWrF,SAE3B9Q,EAAE4V,aAAa,SAAU5V,EAAEg4B,sBAC3Bh4B,EAAE4V,aAAa,UAAW5V,EAAEw8B,uBAC5Bx8B,EAAE4V,aAAa,QAAS5V,EAAE08B,4BAEnB18B,EAAEkM,MAAM8H,SAEd,CACFpC,IAAK,SACLzD,IAAK,WACJ,OAAO3M,KAAKsd,MAAMvP,SAEjB,CACFqC,IAAK,QACLzD,IAAK,WACJ,OAAO3M,KAAKsd,MAAMiS,OAEnB3iB,IAAK,SAAa2iB,GACjBvvB,KAAKgd,SAASuS,KAEb,CACFnf,IAAK,QACLzD,IAAK,WACJ,OAAO3M,KAAKsd,MAAMyV,QAEjB,CACF3iB,IAAK,aACLzD,IAAK,WACJ,OAAO3M,KAAKsd,MAAMpU,aAEjB,CACFkH,IAAK,cACLxD,IAAK,SAAaoR,GACjBhe,KAAKiZ,eAAe+E,IAErBrR,IAAK,WACJ,OAAO3M,KAAKob,mBAEX,CACFhL,IAAK,WACLzD,IAAK,WACJ,OAAO3M,KAAKkb,gBAEX,CACF9K,IAAK,SACLxD,IAAK,SAAagQ,GACjB5c,KAAK+c,UAAUH,IAEhBjQ,IAAK,WACJ,OAAO3M,KAAKq7B,cAEX,CACFjrB,IAAK,MACLxD,IAAK,SAAa9C,GACjB9J,KAAKgL,OAAOlB,IAEb6C,IAAK,WACJ,OAAO3M,KAAKoN,aAIP6lB,EA7oDiB,GAgpDzBhtB,EAAS1B,QAAQ0uB,mBAAqBA,EACtC5uB,EAAOE,QAAQ0uB,mBAAqBA,EAEpC9zB,EAAQoF,QAAU0uB,GAEhB,CAAC,GAAK,GAAG,EAAI,EAAE,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,EAAE,GAAK,GAAG,EAAI,EAAE,EAAI,EAAE,EAAI,IAAIyI,GAAG,CAAC,SAASn8B,EAAQC,EAAOL,GAC/G,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAGR,IAMgCyB,EAN5B6L,EAAe,WAAc,SAASC,EAAiBC,EAAQ3D,GAAS,IAAK,IAAItN,EAAI,EAAGA,EAAIsN,EAAM/M,OAAQP,IAAK,CAAE,IAAIkR,EAAa5D,EAAMtN,GAAIkR,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMrM,OAAOC,eAAegM,EAAQC,EAAWI,IAAKJ,IAAiB,OAAO,SAAUnJ,EAAawJ,EAAYC,GAAiJ,OAA9HD,GAAYP,EAAiBjJ,EAAYnE,UAAW2N,GAAiBC,GAAaR,EAAiBjJ,EAAayJ,GAAqBzJ,GAA7gB,GAEf4I,EAAUlQ,EAAQ,GAElB0G,GAE4BjC,EAFMyL,IAEezL,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAIvF,IAAI23B,EAAgB,WACnB,SAASA,EAAcnpB,GAetB,OAlBF,SAAyB5L,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIlG,UAAU,qCAI9GmG,CAAgB9G,KAAM27B,GAEtB37B,KAAK0K,MAAQ8H,EAAO9H,MACpB1K,KAAKyS,QAAUD,EAAOC,QACtBzS,KAAKgT,YAAcR,EAAO/L,QAAQuM,YAC9BR,EAAO/L,QAAQ+R,WAClBxY,KAAK47B,UAAYppB,EAAO/L,QAAQ+R,UAEjCxY,KAAKg2B,kBAAoB,WACxB,OAAOxjB,EAAOwjB,qBAEfh2B,KAAKq6B,UAAY,SAAU7xB,GAC1B,OAAOgK,EAAO6nB,UAAU7xB,IAElBxI,KA4JR,OAzJA6P,EAAa8rB,EAAe,CAAC,CAC5BvrB,IAAK,OACL7N,MAAO,WACN,OAAOvC,KAAK0K,MAAM0D,SAEjB,CACFgC,IAAK,QACL7N,MAAO,WACN,OAAOvC,KAAK0K,MAAMG,UAEjB,CACFuF,IAAK,OACL7N,MAAO,WACN,IAAI/D,EAAIwB,KAEHxB,EAAEslB,UACNtlB,EAAEkM,MAAM0wB,OAGT58B,EAAEslB,UAAW,IAEZ,CACF1T,IAAK,iBACL7N,MAAO,SAAwByb,GAE9B,QAAIA,EADWhe,KAAKud,yBAEpBvd,KAAK0K,MAAMuO,eAAe+E,IACnB,KAEN,CACF5N,IAAK,iBACL7N,MAAO,WACN,OAAOvC,KAAK0K,MAAMqO,cAEjB,CACF3I,IAAK,sBACL7N,MAAO,WACN,IAAIiW,EAAWxY,KAAK0K,MAAMwQ,cAI1B,OAHI1C,IAAayE,KAAYjd,KAAK0K,MAAMmxB,UAAY77B,KAAK0K,MAAMmxB,SAASx8B,SACvEmZ,EAAWxY,KAAK0K,MAAMmxB,SAASld,IAAI,IAE7BnG,IAEN,CACFpI,IAAK,cACL7N,MAAO,WACN,IAAIiW,EAAWxY,KAAKud,sBACpB,GAAIvd,KAAK47B,UAAW,CACnB,IAAIlV,EAAI1mB,KAAK47B,YACTlV,IAAGlO,EAAWkO,GAEnB,OAAOlO,IAEN,CACFpI,IAAK,YACL7N,MAAO,SAAmBqa,GACzB5c,KAAK0K,MAAMqS,UAAUH,KAEpB,CACFxM,IAAK,YACL7N,MAAO,WACN,OAAOvC,KAAK0K,MAAM2wB,cAEjB,CACFjrB,IAAK,WACL7N,MAAO,SAAkBA,GACxBvC,KAAK0K,MAAMsS,SAASza,KAEnB,CACF6N,IAAK,SACL7N,MAAO,SAAgBuH,GACtB,IAAItL,EAAIwB,KACJs5B,EAAQv5B,SAAS4H,eAAenJ,EAAEkM,MAAMlD,GAAK,mBAE7C8xB,GACHA,EAAMhqB,SAGP9Q,EAAEkM,MAAMM,OAAOlB,GACftL,EAAEw3B,oBACuB,OAArBx3B,EAAEkM,MAAMH,UAA8D,mBAAlC/L,EAAEkM,MAAMH,SAAS+vB,cACxD97B,EAAE67B,UAAU77B,EAAEkM,MAAMH,SAAS+vB,kBAG7B,CACFlqB,IAAK,SACL7N,MAAO,WACN,OAAOvC,KAAK0K,MAAM0C,WAEjB,CACFgD,IAAK,cACL7N,MAAO,SAAqBkG,GAC3B,OAAOzI,KAAK0K,MAAMsG,YAAYvI,KAE7B,CACF2H,IAAK,SACLzD,IAAK,WACJ,OAAO3M,KAAK0K,MAAMqD,SAEjB,CACFqC,IAAK,QACLxD,IAAK,SAAa2iB,GACjBvvB,KAAKgd,SAASuS,IAEf5iB,IAAK,WACJ,OAAO3M,KAAK0K,MAAM6kB,QAEjB,CACFnf,IAAK,QACLzD,IAAK,WACJ,OAAO3M,KAAK0K,MAAMqoB,QAEjB,CACF3iB,IAAK,aACLzD,IAAK,WACJ,OAAO3M,KAAK0K,MAAMxB,aAEjB,CACFkH,IAAK,cACLxD,IAAK,SAAaoR,GACjBhe,KAAKiZ,eAAe+E,IAErBrR,IAAK,WACJ,OAAO3M,KAAKob,mBAEX,CACFhL,IAAK,WACLzD,IAAK,WACJ,OAAO3M,KAAKkb,gBAEX,CACF9K,IAAK,gBACLzD,IAAK,WACJ,OAAO3M,KAAKkb,cAAgBlb,KAAK+Y,gBAEhC,CACF3I,IAAK,SACLxD,IAAK,SAAagQ,GACjB5c,KAAK+c,UAAUH,IAEhBjQ,IAAK,WACJ,OAAO3M,KAAKq7B,cAEX,CACFjrB,IAAK,MACLxD,IAAK,SAAa9C,GACjB9J,KAAKgL,OAAOlB,IAEb6C,IAAK,WACJ,OAAO3M,KAAKoN,aAIPuuB,EA5KY,GA+KpBx8B,EAAQoF,QAAUo3B,EAGlB11B,EAAS1B,QAAQo3B,cAAgBA,GAE/B,CAAC,EAAI,IAAIG,GAAG,CAAC,SAASv8B,EAAQC,EAAOL,GACvC,aAIe+G,EAFD3G,EAAQ,IAAtB,IAsBWw8B,EAhBP13B,EAAS6B,EAFD3G,EAAQ,IAMhBgS,EAAWrL,EAFD3G,EAAQ,KAItB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEjE,oBAAXg4B,OACV33B,EAAOE,QAAQw3B,EAAIC,OACQ,oBAAVC,MACjB53B,EAAOE,QAAQw3B,EAAIE,MACQ,oBAAVC,QACjB73B,EAAOE,QAAQw3B,EAAIG,YAIF,KADPH,EAuBR13B,EAAOE,QAAQw3B,KArBhBA,EAAEr7B,GAAGy7B,mBAAqB,SAAU11B,GAcnC,OAbgB,IAAZA,EACHzG,KAAKo8B,MAAK,WACT,IAAI5pB,EAASupB,EAAE/7B,MAAMq8B,KAAK,sBACtB7pB,GACHA,EAAOlD,SAERysB,EAAE/7B,MAAMs8B,WAAW,yBAGpBt8B,KAAKo8B,MAAK,WACTL,EAAE/7B,MAAMq8B,KAAK,qBAAsB,IAAI9qB,EAAShN,QAAQvE,KAAMyG,OAGzDzG,MAGR+7B,EAAEh8B,UAAUw8B,OAAM,WACjBR,EAAE,IAAM13B,EAAOE,QAAQyuB,YAAYhgB,YAAc,UAAUmpB,0BAK5D,CAAC,GAAK,GAAG,EAAI,EAAE,EAAI,IAAIK,GAAG,CAAC,SAASj9B,EAAQC,EAAOL,GACrD,aAEA,IAAI8E,EAA4B,mBAAXC,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUH,GAAO,cAAcA,GAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXE,QAAyBF,EAAIpB,cAAgBsB,QAAUF,IAAQE,OAAOxB,UAAY,gBAAkBsB,GAIlQiC,EAAWC,EAFD3G,EAAQ,IAMlB8E,EAAS6B,EAFD3G,EAAQ,IAIhB8G,EAAY9G,EAAQ,GAEpBkF,EAAWlF,EAAQ,IAEnBqO,EAASrO,EAAQ,IAEjB+G,EAAa/G,EAAQ,IAErBqS,EAAOrS,EAAQ,IAEnB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvF,IAAIy4B,EAAa,CAEhB/6B,QAAS,KAET05B,KAAM,SAAcpN,GAgBnB,MAfsB,oBAAX0O,OACVD,EAAW/6B,QAAU,IAAIjB,SAAQ,SAAUkB,GAC1CA,OACEG,MAAK,WACP26B,EAAWE,cAAc3O,OAG1BA,EAASvnB,QAAQm2B,KAAwC,iBAA1B5O,EAASvnB,QAAQm2B,KAAoB5O,EAASvnB,QAAQm2B,KAAO,gDAE5FH,EAAW/6B,QAAU+6B,EAAW/6B,UAAW,EAAIkQ,EAAKirB,YAAY7O,EAASvnB,QAAQm2B,MACjFH,EAAW/6B,QAAQI,MAAK,WACvB26B,EAAWE,cAAc3O,OAIpByO,EAAW/6B,SAGnBi7B,cAAe,SAAuB3O,GACrC,IAAIxb,EAASkqB,OAAOI,cAAcpxB,SAElC,OADAzF,EAAS1B,QAAQ,YAAcypB,EAASxmB,IAAIgL,GACrCA,IAILuqB,EAAqB,CACxBnyB,KAAM,cACNnE,QAAS,CACRu2B,OAAQ,cACRC,KAAM,CACLL,KAAM,gDACNM,OAAO,EACPC,IAAK,GAELC,gBAAiB,KAInBpsB,YAAa,SAAqBvI,GACjC,OAAOnC,EAAW+2B,SAAW,CAAC,wBAAwBn1B,QAAQO,EAAKR,gBAAkB,GAGtFyD,OAAQ,SAAgBpE,EAAcb,EAASmD,GAE9C,IAAIlC,EAAeJ,EAAaI,aAC5BF,EAAKF,EAAaE,GAAK,IAAMf,EAAQu2B,OACrC9H,EAAWxtB,EAAawtB,SACxBlrB,EAAWtC,EAAasC,SAExBE,EAAO,KACPozB,EAAa,KAEjB51B,EAAa2H,gBAAgB,QAC7B,IAAK,IAAIvQ,EAAI,EAAGyM,EAAQvB,EAAS3K,OAAQP,EAAIyM,EAAOzM,IACnDkL,EAASlL,GAAGuQ,gBAAgB,QAG7BnF,EAAOxC,EAAawH,WAAU,GAC9BzI,EAAU3C,OAAOuD,OAAOZ,EAASa,EAAab,SAkD9C,IAhDA,IAAI2F,EAAQ/H,EAAOE,QAAQsE,WAAWwD,WAClChC,EAAShG,EAAOE,QAAQsE,WAAWwB,OAAO1E,OAAO,CAAC,QAAS,YAAa,aAAagwB,QAAO,SAAUp3B,GACzG,MAAa,UAANA,KAEJg/B,EAAqB,SAA4Bh/B,GACpD,IAAIyN,GAAQ,EAAIvH,EAASwH,aAAa1N,EAAEkK,KAAMnB,GAC9CA,EAAa6E,cAAcH,IAExBa,EAAuB,SAA8BC,GACxD,IAAIC,EAAU,GAAKD,EAASE,UAAU,EAAG,GAAGC,cAAgBH,EAASE,UAAU,GAE/E9C,EAAK,MAAQ6C,GAAW,WACvB,OAAsB,OAAfuwB,EAAsBpzB,EAAK4C,GAAY,MAG/C5C,EAAK,MAAQ6C,GAAW,SAAUxK,GACjC,IAAwE,IAApE8B,EAAOE,QAAQsE,WAAW8G,mBAAmBzH,QAAQ4E,GACxD,GAAiB,QAAbA,EAAoB,CACvB,IAAIyuB,EAA2E,iBAAhD,IAAVh5B,EAAwB,YAAc0B,EAAQ1B,KAAwBA,EAAMuH,IAAMvH,EAAMuH,IAAMvH,EAEnH,GADA2H,EAAK4C,GAAYyuB,EACE,OAAf+B,EAAqB,CACxBA,EAAWE,QACX,IAAK,IAAIlyB,EAAK,EAAGkD,EAASnE,EAAOhL,OAAQiM,EAAKkD,EAAQlD,IACrDpB,EAAK0E,oBAAoBvE,EAAOiB,GAAKiyB,GAEtCD,EAAab,EAAWE,cAAc,CACrCl2B,QAASA,EAAQw2B,KACjBz1B,GAAIA,IAGDjF,GAA2E,iBAAhD,IAAVA,EAAwB,YAAc0B,EAAQ1B,KAA+C,WAAvB0B,EAAQ1B,EAAM46B,OACxGG,EAAWG,kBAAkBl7B,EAAM46B,MAC/B,EAAI14B,EAASoO,UAAUpM,EAAQw2B,KAAKG,kBAAoB32B,EAAQw2B,KAAKG,iBACxEE,EAAWI,0BAA0BC,mBAAmBl3B,EAAQw2B,KAAKG,kBAGvEE,EAAWM,aAAarC,GACpBrG,GACHoI,EAAWlvB,aAIblE,EAAK4C,GAAYvK,IAMZkL,EAAM,EAAGoJ,EAAUzK,EAAM/M,OAAQoO,EAAMoJ,EAASpJ,IACxDZ,EAAqBT,EAAMqB,IAiD5B,GA9CAxH,EAAS1B,QAAQ,YAAciD,GAAM,SAAUq2B,GAC9Cv2B,EAAag2B,WAAaA,EAAaO,EAqBvC,IAnBA,IACyCnvB,EADrCovB,EAAapB,OAAOI,YAAYzyB,OAmB3BiE,EAAM,EAAGsU,EAAUvY,EAAOhL,OAAQiP,EAAMsU,EAAStU,IAjBvC,oBADsBI,EAmB3BrE,EAAOiE,MAjBnBgvB,EAAWS,aACXT,EAAWU,WAAW9zB,GACtBozB,EAAWW,aAAY,GAEW,WAA9Bh6B,EAAQwC,EAAQw2B,KAAKE,MAAsB94B,EAAOE,QAAQsX,MAAM5W,cAAcwB,EAAQw2B,KAAKE,OAC9FG,EAAWG,kBAAkBh3B,EAAQw2B,KAAKE,MACtC,EAAI14B,EAASoO,UAAUpM,EAAQw2B,KAAKG,kBAAoB32B,EAAQw2B,KAAKG,iBACxEE,EAAWI,0BAA0BC,mBAAmBl3B,EAAQw2B,KAAKG,kBAGvEE,EAAWM,aAAa1zB,EAAKkD,WAG9BlD,EAAKuE,iBAAiBC,EAAW6uB,GAOlC,IAAIW,EAAoB,SAA2B3/B,GAClD,GAA6B,UAAzBA,EAAEkK,KAAKR,cACVX,EAAawE,cAAcvN,EAAE2G,QAASgF,EAAKJ,KAC3CrG,QAAQgE,MAAMlJ,OACR,CACN,IAAI4/B,GAAS,EAAI15B,EAASwH,aAAa1N,EAAEkK,KAAMnB,GAC/C62B,EAAO9B,KAAO99B,EACd+I,EAAa6E,cAAcgyB,KAI7B,IAAK,IAAIC,KAAaN,EACjBA,EAAWpsB,eAAe0sB,IAC7Bd,EAAWe,GAAGP,EAAWM,IAAY,SAAU7/B,GAC9C,OAAO2/B,EAAkB3/B,OAMzBqL,GAAcA,EAAWvK,OAAS,EACrC,IAAK,IAAIkP,EAAM,EAAGsU,EAAUjZ,EAAWvK,OAAQkP,EAAMsU,EAAStU,IAC7D,GAAIlI,EAAUkE,SAAStD,UAAUR,EAAQu2B,QAAQhsB,YAAYpH,EAAW2E,GAAK9F,MAAO,CACnFyB,EAAKnC,aAAa,MAAO6B,EAAW2E,GAAKzE,UACN,IAAxBF,EAAW2E,GAAK4uB,MAC1B12B,EAAQw2B,KAAKE,IAAMvzB,EAAW2E,GAAK4uB,KAEpC,MAKHjzB,EAAKnC,aAAa,KAAMP,GAExBE,EAAaU,WAAWC,aAAa6B,EAAMxC,GAC3CA,EAAawtB,UAAW,EACxBxtB,EAAaqO,MAAMmE,QAAU,OAE7BhQ,EAAKyB,QAAU,SAAUC,EAAOC,GAG/B,OAFA3B,EAAK6L,MAAMnK,MAAQA,EAAQ,KAC3B1B,EAAK6L,MAAMlK,OAASA,EAAS,KACtB3B,GAGRA,EAAKe,KAAO,WAGX,OAFAf,EAAKW,QACLX,EAAK6L,MAAMmE,QAAU,OACdhQ,GAGRA,EAAKa,KAAO,WAEX,OADAb,EAAK6L,MAAMmE,QAAU,GACdhQ,GAGRA,EAAK+E,QAAU,WACK,OAAfquB,GACHA,EAAWE,SAIb,IAAIxxB,GAAQ,EAAIvH,EAASwH,aAAa,gBAAiB/B,GAQvD,OAPA5C,EAAa6E,cAAcH,GAE3B1E,EAAagD,SAAS1I,KAAK66B,EAAWrB,KAAK,CAC1C30B,QAASA,EAAQw2B,KACjBz1B,GAAIA,KAGE0C,IAIT0D,EAAO0wB,WAAW18B,MAAK,SAAU4G,GAChC,OAAQA,EAAIP,cAAcC,QAAQ,QAAU,uBAAyB,QAGtE7B,EAAUkE,SAASg0B,IAAIxB,IAErB,CAAC,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,EAAE,EAAI,EAAE,EAAI,IAAIyB,GAAG,CAAC,SAASj/B,EAAQC,EAAOL,GACnF,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAERpD,EAAQs/B,oBAAiB19B,EAEzB,IAAIkD,EAA4B,mBAAXC,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUH,GAAO,cAAcA,GAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXE,QAAyBF,EAAIpB,cAAgBsB,QAAUF,IAAQE,OAAOxB,UAAY,gBAAkBsB,GAIlQiC,EAAWC,EAFD3G,EAAQ,IAMlB4G,EAAaD,EAFD3G,EAAQ,IAMpB8E,EAAS6B,EAFD3G,EAAQ,IAMhB8R,EAASnL,EAFD3G,EAAQ,IAIhB8G,EAAY9G,EAAQ,GAEpBkF,EAAWlF,EAAQ,IAEnB+G,EAAa/G,EAAQ,IAErBqO,EAASrO,EAAQ,IAErB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvF,IAAIy6B,EAAiBt/B,EAAQs/B,eAAiB,CAC7CC,QAAS,GAETC,iBAAkB,SAA0BC,EAAQC,GACnD,IAAIC,EAAKL,EAAeC,QAAQE,GAGhC,OAFAC,EAAE,GAAKA,EAAE,IAAM,EACfA,EAAE,GAAKA,EAAE,IAAM,EACRC,EAAG,GAAKD,EAAE,IAAMC,EAAG,KAAOD,EAAE,IAAMC,EAAG,GAAKD,EAAE,IAAMC,EAAG,KAAOD,EAAE,IAAMC,EAAG,KAAOD,EAAE,IAAMC,EAAG,IAAMD,EAAE,IAGzGE,UAAW,SAAmB7I,EAAG8I,EAAYC,EAAUC,EAASC,GAC/DV,EAAeC,QAAQxI,GAAKuI,EAAeW,aAAaJ,EAAYC,EAAUC,EAASC,IAGxFC,aAAc,SAAsBJ,EAAYC,EAAUC,EAASC,GAElE,IAAIE,EAAU,CAAC,EAAG,EAAG,GACjBC,OAAc,EACdC,OAAK,EAET,GAA+B,OAA3Bj5B,EAAWk5B,IAAId,cAA+C39B,IAA3BuF,EAAWk5B,IAAId,SAAyE,WAAhDz6B,EAAQqC,EAAWk5B,IAAId,QAAQM,KAE7G,IADAM,EAAch5B,EAAWk5B,IAAId,QAAQM,GAAYM,oBACQ,IAA7Bh5B,EAAWk5B,IAAIC,YAA6Bn5B,EAAWk5B,IAAIC,UAAUR,IAAc34B,EAAWk5B,IAAIC,UAAUR,GAAUS,eAEjJ,IAAK,IAAI5gC,EAAI,EAAGyM,GADhB8zB,EAAUC,EAAY15B,QAAQo5B,EAAY,IAAIp5B,QAAQ,OAAQ,IAAIA,QAAQ,QAAS,KAAKqf,MAAM,MAC9D5lB,OAAQP,EAAIyM,EAAOzM,IAClDugC,EAAQvgC,GAAKwgB,SAAS+f,EAAQvgC,GAAG+lB,MAAM,OAAQ,SAG3C,QAAuC9jB,IAAnCkF,EAAS1B,QAAQo7B,cAC3B,KACCJ,EAAK,IAAII,cAAcT,MAEtBG,EAAUF,EAASI,IAEnB,MAAOhhC,IAIV,OAAO8gC,IAITZ,EAAeM,UAAU,QAAS,kBAAmB,gCAAiC,iCAAiC,SAAUQ,GAChI,IAAIF,EAAU,GACV3Y,EAAI6Y,EAAGK,YAAY,YAMvB,OAJIlZ,IACHA,EAAIA,EAAEzB,MAAM,KAAK,GAAGA,MAAM,KAC1Boa,EAAU,CAAC/f,SAASoH,EAAE,GAAI,IAAKpH,SAASoH,EAAE,GAAI,IAAKpH,SAASoH,EAAE,GAAI,MAE5D2Y,KAGR,IAAIQ,EAA4B,CAC/Bn0B,OAAQ,SAAgBpE,EAAcb,EAASmD,GAE9C,IAAIk2B,EAAQ,GACRC,GAAW,EAEfD,EAAMr5B,QAAUA,EAChBq5B,EAAMt4B,GAAKF,EAAaE,GAAK,IAAMs4B,EAAMr5B,QAAQu2B,OACjD8C,EAAMx4B,aAAeA,EACrBw4B,EAAME,WAAa,GACnBF,EAAMG,SAAW,KACjBH,EAAMI,cAAgB,GAsDtB,IApDA,IAAI9zB,EAAQ/H,EAAOE,QAAQsE,WAAWwD,WAClCQ,EAAuB,SAA8BC,GACxDgzB,EAAME,WAAWlzB,GAAY,KAE7B,IAAIC,EAAU,GAAKD,EAASE,UAAU,EAAG,GAAGC,cAAgBH,EAASE,UAAU,GAE/E8yB,EAAM,MAAQ/yB,GAAW,WACxB,GAAuB,OAAnB+yB,EAAMG,SAAmB,CAC5B,GAAiD,mBAAtCH,EAAMG,SAAS,OAASnzB,GAA0B,CAC5D,IAAIvK,EAAQu9B,EAAMG,SAAS,OAASnzB,KAEpC,MAAiB,aAAbA,EACI,CACNkZ,MAAO,WACN,OAAO,GAERrH,IAAK,WACJ,OAAOpc,GAERlD,OAAQ,GAGHkD,EAEP,OAAO,KAGR,OAAO,MAITu9B,EAAM,MAAQ/yB,GAAW,SAAUxK,GAKlC,GAJiB,QAAbuK,IACHvK,GAAQ,EAAIqL,EAAOL,eAAehL,IAGZ,OAAnBu9B,EAAMG,eAA2Dl/B,IAAtC++B,EAAMG,SAAS,OAASnzB,GACtD,IACCgzB,EAAMG,SAAS,OAASnzB,GAAUvK,GACjC,MAAOhE,SAITuhC,EAAMI,cAAct+B,KAAK,CACxB6G,KAAM,MACNqE,SAAUA,EACVvK,MAAOA,MAMFzD,EAAI,EAAGyM,EAAQa,EAAM/M,OAAQP,EAAIyM,EAAOzM,IAChD+N,EAAqBT,EAAMtN,IAG5B,IAAIwN,EAAUjI,EAAOE,QAAQsE,WAAWyD,QACpC+B,EAAgB,SAAuBJ,GAC1C6xB,EAAM7xB,GAAc,WACnB,GAAI8xB,EACH,GAAuB,OAAnBD,EAAMG,UACT,GAAIH,EAAMG,SAAS,QAAUhyB,GAC5B,IACC6xB,EAAMG,SAAS,QAAUhyB,KACxB,MAAO1P,UAOVuhC,EAAMI,cAAct+B,KAAK,CACxB6G,KAAM,OACNwF,WAAYA,MAMjB3B,EAAQ1K,KAAK,QACb,IAAK,IAAI0J,EAAK,EAAGkD,EAASlC,EAAQjN,OAAQiM,EAAKkD,EAAQlD,IACtD+C,EAAc/B,EAAQhB,IAKvB,IAFA,IAAI60B,EAAa,CAAC,iBAET1yB,EAAM,EAAGoJ,EAAUspB,EAAW9gC,OAAQoO,EAAMoJ,EAASpJ,IAAO,CACpE,IAAIzB,GAAQ,EAAIvH,EAASwH,aAAak0B,EAAW1yB,GAAMqyB,GACvDx4B,EAAa6E,cAAcH,GAG5B/F,EAAS1B,QAAQ,YAAcu7B,EAAMt4B,IAAM,WAK1C,GAHAs4B,EAAMM,YAAa,EACnBN,EAAMG,SAAW95B,EAAW5B,QAAQoD,eAAe,KAAOm4B,EAAMt4B,IAE5Ds4B,EAAMI,cAAc7gC,OACvB,IAAK,IAAIiP,EAAM,EAAGsU,EAAUkd,EAAMI,cAAc7gC,OAAQiP,EAAMsU,EAAStU,IAAO,CAC7E,IAAI+xB,EAAYP,EAAMI,cAAc5xB,GAEpC,GAAuB,QAAnB+xB,EAAU53B,KAAgB,CAC7B,IAAIqE,EAAWuzB,EAAUvzB,SACrBC,EAAU,GAAKD,EAASE,UAAU,EAAG,GAAGC,cAAgBH,EAASE,UAAU,GAE/E8yB,EAAM,MAAQ/yB,GAASszB,EAAU99B,WACJ,SAAnB89B,EAAU53B,MACpBq3B,EAAMO,EAAUpyB,gBAMpBhI,EAAS1B,QAAQ,YAAcu7B,EAAMt4B,IAAM,SAAUkH,EAAWxJ,GAC/D,IAAI8G,GAAQ,EAAIvH,EAASwH,aAAayC,EAAWoxB,GACjD,GAAI56B,EACH,IACC8G,EAAMqwB,KAAO/I,KAAKrM,MAAM/hB,GACxB8G,EAAMs0B,QAAQjE,KAAO/I,KAAKrM,MAAM/hB,GAC/B,MAAO3G,GACRyN,EAAM9G,QAAUA,EAIlB46B,EAAMx4B,aAAa6E,cAAcH,IAGlC8zB,EAAMS,aAAep6B,EAAW5B,QAAQgD,cAAc,QAEoB,IAAtE,CAAC,SAAU,cAAcW,QAAQ43B,EAAMr5B,QAAQW,oBAClD04B,EAAMr5B,QAAQW,iBAAmB,cAGlC,IAAI8tB,EAAW5tB,EAAaI,aAAawtB,SACrCsL,EAAY,CAAC,OAASV,EAAMt4B,GAAI,YAAc0tB,EAAU,qBAAuB4K,EAAMr5B,QAAQW,iBAAkB,YAAcE,EAAaI,aAAaS,aAAa,YAAc,KAClLsK,EAAwC,OAA9BnL,EAAaI,cAA6E,UAApDJ,EAAaI,aAAaM,QAAQC,cAClFw4B,EAAchuB,EAAUnL,EAAaI,aAAamE,OAAS,EAC3D60B,EAAajuB,EAAUnL,EAAaI,aAAakE,MAAQ,EAEzDtE,EAAaI,aAAaS,aAAa,QAC1Cq4B,EAAU5+B,KAAK,OAAS0F,EAAaI,aAAaS,aAAa,SAGpB,IAAxC23B,EAAMr5B,QAAQk6B,wBACjBH,EAAU5+B,KAAK,qBAAuBk+B,EAAMr5B,QAAQm6B,gCACpDJ,EAAU5+B,KAAK,oBAAsBk+B,EAAMr5B,QAAQo6B,sBAGhDf,EAAMr5B,QAAQq6B,iBACjBN,EAAU5+B,KAAK,mBAAqBm/B,mBAAmBjB,EAAMr5B,QAAQq6B,kBAGlEhB,EAAMr5B,QAAQu6B,WACjBR,EAAU5+B,KAAK,aAAek+B,EAAMr5B,QAAQu6B,WAG7C15B,EAAagB,YAAYw3B,EAAMS,cAC/Bj5B,EAAaI,aAAaqO,MAAMmE,QAAU,OAE1C,IAAI8T,EAAW,GAEf,GAAI1nB,EAAW26B,OAAS36B,EAAW46B,QAAS,CAC3C,IAAIC,EAAqBh7B,EAAW5B,QAAQgD,cAAc,OAC1Du4B,EAAMS,aAAaj4B,YAAY64B,GAG9BnT,EADG1nB,EAAW46B,QACH,CAAC,uCAAwC,SAAWpB,EAAMr5B,QAAQU,WAAa24B,EAAMr5B,QAAQ26B,SAAW,IAAK,SAAWtB,EAAMt4B,GAAK,IAAK,UAAYk5B,EAAa,IAAK,WAAaD,EAAc,OAEjM,CAAC,uDAAwD,4EAA6E,SAAWX,EAAMt4B,GAAK,IAAK,UAAYk5B,EAAa,IAAK,WAAaD,EAAc,KAGjOhuB,GACJub,EAASpsB,KAAK,oDAGfu/B,EAAmBtK,UAAY,WAAa7I,EAAS3I,KAAK,KAA3B,+BAAyEya,EAAMr5B,QAAQU,WAAa24B,EAAMr5B,QAAQ26B,SAAW,MAAQ,IAAI5kB,KAAzI,sCAAiMgkB,EAAUnb,KAAK,SAAhN,qKAAwZya,EAAMr5B,QAAQW,iBAAta,yDAAggBiK,EAAO9M,QAAQ/F,EAAE,sBAAjhB,uBAG/BwvB,EAAW,CAAC,SAAW8R,EAAMt4B,GAAK,IAAK,WAAas4B,EAAMt4B,GAAK,IAAK,cAAe,eAAgB,iBAAkB,oBAAqB,sBAAuB,sBAAwBs4B,EAAMr5B,QAAQW,iBAAmB,IAAK,yBAA0B,uCAAwC,uDAAwD,QAAU04B,EAAMr5B,QAAQU,WAAa24B,EAAMr5B,QAAQ26B,SAAW,IAAK,cAAgBZ,EAAUnb,KAAK,KAAO,KAE9b5S,GACHub,EAASpsB,KAAK,UAAY8+B,EAAa,KACvC1S,EAASpsB,KAAK,WAAa6+B,EAAc,MAEzCzS,EAASpsB,KAAK,yDAGfk+B,EAAMS,aAAattB,UAAY,UAAY+a,EAAS3I,KAAK,KAAO,IA8BjE,GA3BAya,EAAMuB,UAAYvB,EAAMS,aAAazgB,UAErCggB,EAAM70B,KAAO,WACZ80B,GAAW,EACPttB,IACHqtB,EAAMuB,UAAUtrB,MAAMmE,QAAU,SAGlC4lB,EAAM/0B,KAAO,WACZg1B,GAAW,EACPttB,IACHqtB,EAAMuB,UAAUtrB,MAAMmE,QAAU,KAGlC4lB,EAAMn0B,QAAU,SAAUC,EAAOC,GAChCi0B,EAAMuB,UAAUtrB,MAAMnK,MAAQA,EAAQ,KACtCk0B,EAAMuB,UAAUtrB,MAAMlK,OAASA,EAAS,KAEjB,OAAnBi0B,EAAMG,UAA4D,mBAAhCH,EAAMG,SAASqB,cACpDxB,EAAMG,SAASqB,aAAa11B,EAAOC,IAIrCi0B,EAAM7wB,QAAU,WACf6wB,EAAMuB,UAAU/xB,UAGb1F,GAAcA,EAAWvK,OAAS,EACrC,IAAK,IAAIkP,EAAM,EAAGsU,EAAUjZ,EAAWvK,OAAQkP,EAAMsU,EAAStU,IAC7D,GAAIlI,EAAUkE,SAAStD,UAAUR,EAAQu2B,QAAQhsB,YAAYpH,EAAW2E,GAAK9F,MAAO,CACnFq3B,EAAM90B,OAAOpB,EAAW2E,GAAKzE,KAC7B,MAKH,OAAOg2B,IAMT,GAFerB,EAAeE,iBAAiB,QAAS,CAAC,GAAI,EAAG,IAElD,CACb/wB,EAAO0wB,WAAW18B,MAAK,SAAU4G,GAGhC,OAFAA,EAAMA,EAAIP,eAEFohB,WAAW,SACb7gB,EAAIN,QAAQ,QACT,aAEA,aAEE,aAAalD,KAAKwD,GACrB,aACIA,EAAIN,QAAQ,SAChB,yBACIM,EAAIN,QAAQ,QAChB,wBACIM,EAAIN,QAAQ,QAChB,YAEA,QAIT,IAAIq5B,EAAiC,CACpC32B,KAAM,cACNnE,QAAS,CACRu2B,OAAQ,cACRoE,SAAU,+BACVT,uBAAuB,EAEvBC,+BAAgC,QAEhCC,oBAAqB,OAErBG,UAAW,GAEXF,gBAAiB,IAGlB9vB,YAAa,SAAqBvI,GACjC,OAAQ,CAAC,YAAa,aAAc,aAAc,WAAY,YAAa,YAAa,eAAeP,QAAQO,EAAKR,gBAGrHyD,OAAQm0B,EAA0Bn0B,QAGnCrF,EAAUkE,SAASg0B,IAAIgD,GAEvB,IAAIC,EAAoC,CACvC52B,KAAM,YACNnE,QAAS,CACRu2B,OAAQ,YACRoE,SAAU,oCAGXpwB,YAAa,SAAqBvI,GACjC,OAAQ,CAAC,wBAAyB,gCAAiC,gBAAiB,YAAa,aAAaP,QAAQO,EAAKR,gBAG5HyD,OAAQm0B,EAA0Bn0B,QAEnCrF,EAAUkE,SAASg0B,IAAIiD,GAEvB,IAAIC,EAAsC,CACzC72B,KAAM,aACNnE,QAAS,CACRu2B,OAAQ,aACRoE,SAAU,sCAGXpwB,YAAa,SAAqBvI,GACjC,OAAQ,CAAC,wBAAwBP,QAAQO,EAAKR,gBAG/CyD,OAAQm0B,EAA0Bn0B,QAEnCrF,EAAUkE,SAASg0B,IAAIkD,GAEvB,IAAIC,EAAiC,CACpC92B,KAAM,cACNnE,QAAS,CACRu2B,OAAQ,cACRoE,SAAU,gCAGXpwB,YAAa,SAAqBvI,GACjC,OAAQ,CAAC,aAAaP,QAAQO,EAAKR,gBAGpCyD,OAAQm0B,EAA0Bn0B,QAEnCrF,EAAUkE,SAASg0B,IAAImD,GAEvB,IAAIC,EAAoC,CACvC/2B,KAAM,kBACNnE,QAAS,CACRu2B,OAAQ,kBACRoE,SAAU,oCAGXpwB,YAAa,SAAqBvI,GACjC,OAAQ,CAAC,YAAa,YAAa,aAAaP,QAAQO,EAAKR,gBAG9DyD,OAAQm0B,EAA0Bn0B,QAEnCrF,EAAUkE,SAASg0B,IAAIoD,KAGtB,CAAC,EAAI,EAAE,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,EAAE,EAAI,EAAE,EAAI,EAAE,EAAI,IAAIC,GAAG,CAAC,SAASriC,EAAQC,EAAOL,GACvF,aAEA,IAAI8E,EAA4B,mBAAXC,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUH,GAAO,cAAcA,GAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXE,QAAyBF,EAAIpB,cAAgBsB,QAAUF,IAAQE,OAAOxB,UAAY,gBAAkBsB,GAIlQiC,EAAWC,EAFD3G,EAAQ,IAMlB8E,EAAS6B,EAFD3G,EAAQ,IAIhB8G,EAAY9G,EAAQ,GAEpBkF,EAAWlF,EAAQ,IAEnB+G,EAAa/G,EAAQ,IAErBqO,EAASrO,EAAQ,IAEjBqS,EAAOrS,EAAQ,IAEnB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvF,IAAI69B,EAAY,CAEfngC,QAAS,KAET05B,KAAM,SAAcpN,GAgBnB,MAfqB,oBAAV8T,MACVD,EAAUngC,QAAU,IAAIjB,SAAQ,SAAUkB,GACzCA,OACEG,MAAK,WACP+/B,EAAUlF,cAAc3O,OAGzBA,EAASvnB,QAAQm2B,KAAwC,iBAA1B5O,EAASvnB,QAAQm2B,KAAoB5O,EAASvnB,QAAQm2B,KAAO,6CAE5FiF,EAAUngC,QAAUmgC,EAAUngC,UAAW,EAAIkQ,EAAKirB,YAAY7O,EAASvnB,QAAQm2B,MAC/EiF,EAAUngC,QAAQI,MAAK,WACtB+/B,EAAUlF,cAAc3O,OAInB6T,EAAUngC,SAGlBi7B,cAAe,SAAuB3O,GACrC8T,MAAMC,eAAeC,YAAchU,EAASvnB,QAAQy2B,MACpD4E,MAAMC,eAAeE,cAAgBjU,EAASvnB,QAAQy2B,MACtD,IAAI1qB,EAASsvB,MAAMI,aAAalU,EAASvnB,QAASunB,EAASmU,SAE3D,OADAl8B,EAAS1B,QAAQ,YAAcypB,EAASxmB,IAAIgL,GACrCA,IAIL4vB,EAAoB,CACvBx3B,KAAM,aACNnE,QAAS,CACRu2B,OAAQ,aACRqF,IAAK,CACJzF,KAAM,6CAEN0F,MAAM,EACNpF,OAAO,IAITlsB,YAAa,SAAqBvI,GACjC,OAAOnC,EAAW+2B,SAAW,CAAC,cAAe,aAAan1B,QAAQO,EAAKR,gBAAkB,GAG1FyD,OAAQ,SAAgBpE,EAAcb,EAASmD,GAE9C,IAAIlC,EAAeJ,EAAaI,aAC5BF,EAAKF,EAAaE,GAAK,IAAMf,EAAQu2B,OAErC9yB,EAAO,KACPq4B,EAAY,KAEhBr4B,EAAOxC,EAAawH,WAAU,GAC9BzI,EAAU3C,OAAOuD,OAAOZ,EAASa,EAAab,SAiD9C,IA/CA,IAAI2F,EAAQ/H,EAAOE,QAAQsE,WAAWwD,WAClChC,EAAShG,EAAOE,QAAQsE,WAAWwB,OAAO1E,OAAO,CAAC,QAAS,YAAa,aAAagwB,QAAO,SAAUp3B,GACzG,MAAa,UAANA,KAEJg/B,EAAqB,SAA4Bh/B,GACpD,IAAIyN,GAAQ,EAAIvH,EAASwH,aAAa1N,EAAEkK,KAAMnB,GAC9CA,EAAa6E,cAAcH,IAExBa,EAAuB,SAA8BC,GACxD,IAAIC,EAAU,GAAKD,EAASE,UAAU,EAAG,GAAGC,cAAgBH,EAASE,UAAU,GAE/E9C,EAAK,MAAQ6C,GAAW,WACvB,OAAqB,OAAdw1B,EAAqBr4B,EAAK4C,GAAY,MAG9C5C,EAAK,MAAQ6C,GAAW,SAAUxK,GACjC,IAAwE,IAApE8B,EAAOE,QAAQsE,WAAW8G,mBAAmBzH,QAAQ4E,GACxD,GAAiB,QAAbA,GAEH,GADA5C,EAAK4C,GAA8E,iBAAhD,IAAVvK,EAAwB,YAAc0B,EAAQ1B,KAAwBA,EAAMuH,IAAMvH,EAAMuH,IAAMvH,EACrG,OAAdggC,EAAoB,CACvB,IAAIC,EAAc,CAClBA,KAAmB,OACnBA,EAAYh6B,IAAMjG,EAClBigC,EAAYF,KAAO77B,EAAQ47B,IAAIC,KAC/BE,EAAYtF,MAAQz2B,EAAQ47B,IAAInF,MAChCsF,EAAY5F,KAAOn2B,EAAQ47B,IAAIzF,KAC/B,IAAI6F,EAAch8B,EAAQ47B,IAAIF,QAE9BI,EAAUtzB,UACV,IAAK,IAAInQ,EAAI,EAAGyM,EAAQlB,EAAOhL,OAAQP,EAAIyM,EAAOzM,IACjDoL,EAAK0E,oBAAoBvE,EAAOvL,GAAIy+B,IAErCgF,EAAYV,EAAUlF,cAAc,CACnCl2B,QAAS+7B,EACTL,QAASM,EACTj7B,GAAIA,KAEKk7B,mBAAmBx4B,GAC7Bq4B,EAAUnH,aAGXlxB,EAAK4C,GAAYvK,IAMZzD,EAAI,EAAGyM,EAAQa,EAAM/M,OAAQP,EAAIyM,EAAOzM,IAChD+N,EAAqBT,EAAMtN,IAkD5B,GA/CAmH,EAAS1B,QAAQ,YAAciD,GAAM,SAAUm7B,GAC9Cr7B,EAAai7B,UAAYA,EAAYI,EAcrC,IAZA,IACyCj0B,EADrCk0B,EAAYd,MAAMe,OAYbv3B,EAAK,EAAGkD,EAASnE,EAAOhL,OAAQiM,EAAKkD,EAAQlD,IAVnC,oBADsBoD,EAY3BrE,EAAOiB,MAVnBi3B,EAAUO,SACVP,EAAUQ,qBACVR,EAAUG,mBAAmBx4B,GAC7Bq4B,EAAUnH,QAGXlxB,EAAKuE,iBAAiBC,EAAW6uB,GAOlC,IAAIyF,EAAkB,SAAyBp4B,EAAMyxB,GACpD,GAAa,UAATzxB,EAAkB,CACrB,IAAI1F,EAAUm3B,EAAK,GAAK,KAAOA,EAAK,GAAK,IAAMA,EAAK,GAAG4G,IACvD37B,EAAawE,cAAc5G,EAASgF,EAAKJ,SACnC,CACN,IAAIq0B,GAAS,EAAI15B,EAASwH,aAAarB,EAAMtD,GAC7C62B,EAAO9B,KAAOA,EACd/0B,EAAa6E,cAAcgyB,KAIzBrX,EAAQ,SAAesX,GACtBwE,EAAUlxB,eAAe0sB,IAC5BmE,EAAUlE,GAAGuE,EAAUxE,IAAY,WAClC,IAAK,IAAIt5B,EAAO5C,UAAU7C,OAAQ0D,EAAOC,MAAM8B,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC5EhC,EAAKgC,GAAQ7C,UAAU6C,GAGxB,OAAOi+B,EAAgBJ,EAAUxE,GAAYr7B,OAKhD,IAAK,IAAIq7B,KAAawE,EACrB9b,EAAMsX,IAIJx0B,GAAcA,EAAWvK,OAAS,EACrC,IAAK,IAAIoO,EAAM,EAAGoJ,EAAUjN,EAAWvK,OAAQoO,EAAMoJ,EAASpJ,IAC7D,GAAIpH,EAAUkE,SAAStD,UAAUR,EAAQu2B,QAAQhsB,YAAYpH,EAAW6D,GAAKhF,MAAO,CACnFyB,EAAKnC,aAAa,MAAO6B,EAAW6D,GAAK3D,KACzC,MAKHI,EAAKnC,aAAa,KAAMP,GAExBE,EAAaU,WAAWC,aAAa6B,EAAMxC,GAC3CA,EAAawtB,UAAW,EACxBxtB,EAAaqO,MAAMmE,QAAU,OAE7B,IAAIgpB,EAAa,CACjBA,KAAkB,OAClBA,EAAW16B,IAAM0B,EAAKJ,IACtBo5B,EAAWZ,KAAO77B,EAAQ47B,IAAIC,KAC9BY,EAAWhG,MAAQz2B,EAAQ47B,IAAInF,MAC/BgG,EAAWtG,KAAOn2B,EAAQ47B,IAAIzF,KAC9B,IAAIuG,EAAa18B,EAAQ47B,IAAIF,QAE7Bj4B,EAAKyB,QAAU,SAAUC,EAAOC,GAG/B,OAFA3B,EAAK6L,MAAMnK,MAAQA,EAAQ,KAC3B1B,EAAK6L,MAAMlK,OAASA,EAAS,KACtB3B,GAGRA,EAAKe,KAAO,WAKX,OAJkB,OAAds3B,GACHA,EAAU13B,QAEXX,EAAK6L,MAAMmE,QAAU,OACdhQ,GAGRA,EAAKa,KAAO,WAEX,OADAb,EAAK6L,MAAMmE,QAAU,GACdhQ,GAGRA,EAAK+E,QAAU,WACI,OAAdszB,GACHA,EAAUtzB,WAIZ,IAAIjD,GAAQ,EAAIvH,EAASwH,aAAa,gBAAiB/B,GASvD,OARA5C,EAAa6E,cAAcH,GAE3B1E,EAAagD,SAAS1I,KAAKigC,EAAUzG,KAAK,CACzC30B,QAASy8B,EACTf,QAASgB,EACT37B,GAAIA,KAGE0C,IAIT0D,EAAO0wB,WAAW18B,MAAK,SAAU4G,GAChC,OAAQA,EAAIP,cAAcC,QAAQ,QAAU,YAAc,QAG3D7B,EAAUkE,SAASg0B,IAAI6D,IAErB,CAAC,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,EAAE,EAAI,EAAE,EAAI,IAAIgB,GAAG,CAAC,SAAS7jC,EAAQC,EAAOL,GACnF,aAEA,IAAI8E,EAA4B,mBAAXC,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUH,GAAO,cAAcA,GAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXE,QAAyBF,EAAIpB,cAAgBsB,QAAUF,IAAQE,OAAOxB,UAAY,gBAAkBsB,GAIlQiC,EAAWC,EAFD3G,EAAQ,IAMlB8E,EAAS6B,EAFD3G,EAAQ,IAIhB8G,EAAY9G,EAAQ,GAEpBkF,EAAWlF,EAAQ,IAEnB+G,EAAa/G,EAAQ,IAErBqO,EAASrO,EAAQ,IAEjBqS,EAAOrS,EAAQ,IAEnB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvF,IAAIq/B,EAAY,CAEf3hC,QAAS,KAET05B,KAAM,SAAcpN,GAgBnB,MAfmB,oBAARsV,IACVD,EAAU3hC,QAAU,IAAIjB,SAAQ,SAAUkB,GACzCA,OACEG,MAAK,WACPuhC,EAAU1G,cAAc3O,OAGzBA,EAASvnB,QAAQm2B,KAAwC,iBAA1B5O,EAASvnB,QAAQm2B,KAAoB5O,EAASvnB,QAAQm2B,KAAO,6CAE5FyG,EAAU3hC,QAAU2hC,EAAU3hC,UAAW,EAAIkQ,EAAKirB,YAAY7O,EAASvnB,QAAQm2B,MAC/EyG,EAAU3hC,QAAQI,MAAK,WACtBuhC,EAAU1G,cAAc3O,OAInBqV,EAAU3hC,SAGlBi7B,cAAe,SAAuB3O,GACrC,IAAIxb,EAAS,IAAI8wB,IAAItV,EAASvnB,SAE9B,OADAR,EAAS1B,QAAQ,YAAcypB,EAASxmB,IAAIgL,GACrCA,IAIL+wB,EAAoB,CACvB34B,KAAM,aACNnE,QAAS,CACRu2B,OAAQ,aACRwG,IAAK,CACJ5G,KAAM,6CAEN6G,eAAe,EACfvG,OAAO,IAITlsB,YAAa,SAAqBvI,GACjC,OAAOnC,EAAW+2B,SAAW,CAAC,wBAAyB,gCAAiC,gBAAiB,YAAa,aAAan1B,QAAQO,EAAKR,gBAAkB,GAGnKyD,OAAQ,SAAgBpE,EAAcb,EAASmD,GAE9C,IAAIlC,EAAeJ,EAAaI,aAC5BF,EAAKF,EAAaE,GAAK,IAAMf,EAAQu2B,OACrC0G,EAAUh8B,EAAaS,aAAa,WACpC+sB,EAAWxtB,EAAawtB,SAExByO,EAAY,KACZz5B,EAAO,KACPsB,EAAQ,EACRD,EAAQ3B,EAAWvK,OAEvB6K,EAAOxC,EAAawH,WAAU,IAC9BzI,EAAU3C,OAAOuD,OAAOZ,EAASa,EAAab,UACtC+8B,IAAIC,cAAgBC,GAAuB,SAAZA,GAAsBxO,EAwC7D,IAtCA,IAAI9oB,EAAQ/H,EAAOE,QAAQsE,WAAWwD,WAClChC,EAAShG,EAAOE,QAAQsE,WAAWwB,OAAO1E,OAAO,CAAC,QAAS,YAAa,aAAagwB,QAAO,SAAUp3B,GACzG,MAAa,UAANA,KAEJg/B,EAAqB,SAA4Bh/B,GACpD,IAAIyN,GAAQ,EAAIvH,EAASwH,aAAa1N,EAAEkK,KAAMnB,GAC9CA,EAAa6E,cAAcH,IAExBa,EAAuB,SAA8BC,GACxD,IAAIC,EAAU,GAAKD,EAASE,UAAU,EAAG,GAAGC,cAAgBH,EAASE,UAAU,GAE/E9C,EAAK,MAAQ6C,GAAW,WACvB,OAAqB,OAAd42B,EAAqBz5B,EAAK4C,GAAY,MAG9C5C,EAAK,MAAQ6C,GAAW,SAAUxK,GACjC,IAAwE,IAApE8B,EAAOE,QAAQsE,WAAW8G,mBAAmBzH,QAAQ4E,GACxD,GAAiB,QAAbA,GAEH,GADA5C,EAAK4C,GAA8E,iBAAhD,IAAVvK,EAAwB,YAAc0B,EAAQ1B,KAAwBA,EAAMuH,IAAMvH,EAAMuH,IAAMvH,EACrG,OAAdohC,EAAoB,CACvBA,EAAU10B,UACV,IAAK,IAAInQ,EAAI,EAAG0P,EAASnE,EAAOhL,OAAQP,EAAI0P,EAAQ1P,IACnDoL,EAAK0E,oBAAoBvE,EAAOvL,GAAIy+B,IAErCoG,EAAYN,EAAU1G,cAAc,CACnCl2B,QAASA,EAAQ+8B,IACjBh8B,GAAIA,KAEKo8B,WAAWrhC,GACrBohC,EAAUE,YAAY35B,SAGvBA,EAAK4C,GAAYvK,IAMZzD,EAAI,EAAG+X,EAAUzK,EAAM/M,OAAQP,EAAI+X,EAAS/X,IACpD+N,EAAqBT,EAAMtN,IA4F5B,GAzFAmH,EAAS1B,QAAQ,YAAciD,GAAM,SAAUs8B,GAC9Cx8B,EAAaq8B,UAAYA,EAAYG,EAarC,IAZA,IAAIC,EAAYT,IAAIT,OAChBmB,EAAe,SAAsBt1B,GACxC,GAAkB,mBAAdA,EAAgC,CACnC,IAAIlG,EAAMlB,EAAaI,aAAaoC,IACpC65B,EAAUM,cACVN,EAAUC,WAAWp7B,GACrBm7B,EAAUE,YAAY35B,GAGvBA,EAAKuE,iBAAiBC,EAAW6uB,IAGzBjyB,EAAK,EAAGsX,EAAUvY,EAAOhL,OAAQiM,EAAKsX,EAAStX,IACvD04B,EAAa35B,EAAOiB,IAGrB,IAAI44B,OAA2B,EAC3BC,OAA4B,EAC5BC,EAAkB,SAAyBx5B,EAAMyxB,GACpD,GAAa,aAATzxB,IACHnH,QAAQC,KAAK24B,IACbA,EAAOA,EAAK,IAEHgI,OACR,OAAQhI,EAAK5zB,MACZ,IAAK,aACJ,IAAI67B,GAAM,IAAI9nB,MAAO+nB,UACrB,IAAKL,GAA4BI,EAAMJ,EAA2B,IACjEA,GAA2B,IAAI1nB,MAAO+nB,UACtCZ,EAAUa,yBACJ,IAAKL,GAA6BG,EAAMH,EAA4B,IAC1EA,GAA4B,IAAI3nB,MAAO+nB,UACvC9gC,QAAQC,KAAK,+DACbigC,EAAUc,iBACVd,EAAUa,wBACJ,CACN,IAAIt/B,EAAU,mDACdoC,EAAawE,cAAc5G,EAASgF,EAAKJ,KACzCrG,QAAQgE,MAAMvC,GAEf,MACD,IAAK,eACJ,GAAqB,sBAAjBm3B,EAAKiE,QACR,GAAI90B,EAAQD,QAAmCxK,IAA1B6I,EAAW4B,EAAQ,GACvCtB,EAAKc,OAAOpB,EAAW4B,KAAS1B,KAChCI,EAAKkxB,OACLlxB,EAAKkE,WACC,CAEN9G,EAAawE,cADE,gBACsBlC,GACrCnG,QAAQgE,MAFO,qBAIV,CAENH,EAAawE,cADG,gBACsBlC,GACtCnG,QAAQgE,MAFQ,iBAIjB,MACD,QACCk8B,EAAU10B,cAxCd,CA8CA,IAAIjD,GAAQ,EAAIvH,EAASwH,aAAarB,EAAMtD,GAC5C0E,EAAMqwB,KAAOA,EACb/0B,EAAa6E,cAAcH,KAGxB8a,EAAQ,SAAesX,GACtB2F,EAAUryB,eAAe0sB,IAC5BuF,EAAUtF,GAAG0F,EAAU3F,IAAY,WAClC,IAAK,IAAIt5B,EAAO5C,UAAU7C,OAAQ0D,EAAOC,MAAM8B,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC5EhC,EAAKgC,GAAQ7C,UAAU6C,GAGxB,OAAOq/B,EAAgBL,EAAU3F,GAAYr7B,OAKhD,IAAK,IAAIq7B,KAAa2F,EACrBjd,EAAMsX,IAIJ7yB,EAAQ,EACX,KAAOC,EAAQD,EAAOC,IACrB,GAAInF,EAAUkE,SAAStD,UAAUR,EAAQu2B,QAAQhsB,YAAYpH,EAAW4B,GAAO/C,MAAO,CACrFyB,EAAKnC,aAAa,MAAO6B,EAAW4B,GAAO1B,KAC3C,MAKa,SAAZ45B,GAAuBxO,IAC1BhrB,EAAKuE,iBAAiB,QAAQ,WACX,OAAdk1B,GACHA,EAAUe,eAIZx6B,EAAKuE,iBAAiB,SAAS,WACZ,OAAdk1B,GACHA,EAAUgB,eAKbz6B,EAAKnC,aAAa,KAAMP,GAExBE,EAAaU,WAAWC,aAAa6B,EAAMxC,GAC3CA,EAAawtB,UAAW,EACxBxtB,EAAaqO,MAAMmE,QAAU,OAE7BhQ,EAAKyB,QAAU,SAAUC,EAAOC,GAG/B,OAFA3B,EAAK6L,MAAMnK,MAAQA,EAAQ,KAC3B1B,EAAK6L,MAAMlK,OAASA,EAAS,KACtB3B,GAGRA,EAAKe,KAAO,WAGX,OAFAf,EAAKW,QACLX,EAAK6L,MAAMmE,QAAU,OACdhQ,GAGRA,EAAKa,KAAO,WAEX,OADAb,EAAK6L,MAAMmE,QAAU,GACdhQ,GAGRA,EAAK+E,QAAU,WACI,OAAd00B,IACHA,EAAUgB,WACVhB,EAAU10B,YAIZ,IAAIjD,GAAQ,EAAIvH,EAASwH,aAAa,gBAAiB/B,GAQvD,OAPA5C,EAAa6E,cAAcH,GAE3B1E,EAAagD,SAAS1I,KAAKyhC,EAAUjI,KAAK,CACzC30B,QAASA,EAAQ+8B,IACjBh8B,GAAIA,KAGE0C,IAIT0D,EAAO0wB,WAAW18B,MAAK,SAAU4G,GAChC,OAAQA,EAAIP,cAAcC,QAAQ,SAAW,wBAA0B,QAGxE7B,EAAUkE,SAASg0B,IAAIgF,IAErB,CAAC,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,EAAE,EAAI,EAAE,EAAI,IAAIqB,GAAG,CAAC,SAASrlC,EAAQC,EAAOL,GACnF,aAEA,IAEI8G,EAAWC,EAFD3G,EAAQ,IAMlB4G,EAAaD,EAFD3G,EAAQ,IAMpB8E,EAAS6B,EAFD3G,EAAQ,IAIhB8G,EAAY9G,EAAQ,GAEpBkF,EAAWlF,EAAQ,IAEnB+G,EAAa/G,EAAQ,IAEzB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvF,IAAI6gC,EAAmB,CACtBj6B,KAAM,QACNnE,QAAS,CACRu2B,OAAQ,SAGThsB,YAAa,SAAqBvI,GAEjC,IAAInB,EAAenB,EAAW5B,QAAQgD,cAAc,SAEpD,OAAIjB,EAAWyO,YAAc,cAAc/P,KAAKyD,KAAU,CAAC,wBAAyB,oBAAqB,gBAAiB,YAAa,aAAaP,QAAQO,EAAKR,gBAAkB3B,EAAWw+B,oBACtL,MACGx9B,EAAa0J,YAChB1J,EAAa0J,YAAYvI,EAAKR,eAAerC,QAAQ,KAAM,IAE3D,IAIT8F,OAAQ,SAAgBpE,EAAcb,EAASmD,GAE9C,IAAIpC,EAAKF,EAAaE,GAAK,IAAMf,EAAQu2B,OACrC+C,GAAW,EAEX71B,EAAO,UAEuBnJ,IAA9BuG,EAAaI,cAA4D,OAA9BJ,EAAaI,cAC3DwC,EAAO/D,EAAW5B,QAAQgD,cAAc,SACxCD,EAAagB,YAAY4B,IAEzBA,EAAO5C,EAAaI,aAGrBwC,EAAKnC,aAAa,KAAMP,GAiBxB,IAfA,IAAI4E,EAAQ/H,EAAOE,QAAQsE,WAAWwD,WAClCQ,EAAuB,SAA8BC,GACxD,IAAIC,EAAU,GAAKD,EAASE,UAAU,EAAG,GAAGC,cAAgBH,EAASE,UAAU,GAE/E9C,EAAK,MAAQ6C,GAAW,WACvB,OAAO7C,EAAK4C,IAGb5C,EAAK,MAAQ6C,GAAW,SAAUxK,IACuC,IAApE8B,EAAOE,QAAQsE,WAAW8G,mBAAmBzH,QAAQ4E,KACxD5C,EAAK4C,GAAYvK,KAKXzD,EAAI,EAAG0P,EAASpC,EAAM/M,OAAQP,EAAI0P,EAAQ1P,IAClD+N,EAAqBT,EAAMtN,IAe5B,IAZA,IAGyC4P,EAHrCrE,EAAShG,EAAOE,QAAQsE,WAAWwB,OAAO1E,OAAO,CAAC,QAAS,YAAa,aAAagwB,QAAO,SAAUp3B,GACzG,MAAa,UAANA,KAWC+M,EAAK,EAAGuL,EAAUxM,EAAOhL,OAAQiM,EAAKuL,EAASvL,IATfoD,EAU3BrE,EAAOiB,GATpBpB,EAAKuE,iBAAiBC,GAAW,SAAUnQ,GAC1C,GAAIwhC,EAAU,CACb,IAAI5B,GAAS,EAAI15B,EAASwH,aAAa1N,EAAEkK,KAAMlK,EAAEwR,QACjDzI,EAAa6E,cAAcgyB,OAS9Bj0B,EAAKyB,QAAU,SAAUC,EAAOC,GAG/B,OAFA3B,EAAK6L,MAAMnK,MAAQA,EAAQ,KAC3B1B,EAAK6L,MAAMlK,OAASA,EAAS,KACtB3B,GAGRA,EAAKe,KAAO,WAIX,OAHA80B,GAAW,EACX71B,EAAK6L,MAAMmE,QAAU,OAEdhQ,GAGRA,EAAKa,KAAO,WAIX,OAHAg1B,GAAW,EACX71B,EAAK6L,MAAMmE,QAAU,GAEdhQ,GAGR,IAAIsB,EAAQ,EACRD,EAAQ3B,EAAWvK,OACvB,GAAIkM,EAAQ,EACX,KAAOC,EAAQD,EAAOC,IACrB,GAAInF,EAAUkE,SAAStD,UAAUR,EAAQu2B,QAAQhsB,YAAYpH,EAAW4B,GAAO/C,MAAO,CACrFyB,EAAKnC,aAAa,MAAO6B,EAAW4B,GAAO1B,KAC3C,MAKHI,EAAKuE,iBAAiB,SAAS,SAAUlQ,GACpCA,GAAKA,EAAEwR,QAAUxR,EAAEwR,OAAOtI,OAAiC,IAAxBlJ,EAAEwR,OAAOtI,MAAMxI,MAAc8gC,IAC/Dv0B,EAAQD,QAAmCxK,IAA1B6I,EAAW4B,EAAQ,IACvCtB,EAAKJ,IAAMF,EAAW4B,KAAS1B,IAC/BI,EAAKkxB,OACLlxB,EAAKkE,QAEL9G,EAAawE,cAAc,8DAA+DlC,OAK7F,IAAIoC,GAAQ,EAAIvH,EAASwH,aAAa,gBAAiB/B,GAGvD,OAFA5C,EAAa6E,cAAcH,GAEpB9B,IAITjE,EAAS1B,QAAQsgC,iBAAmBxgC,EAAOE,QAAQsgC,iBAAmBA,EAEtEx+B,EAAUkE,SAASg0B,IAAIsG,IAErB,CAAC,EAAI,EAAE,GAAK,GAAG,GAAK,GAAG,EAAI,EAAE,EAAI,EAAE,EAAI,IAAIE,GAAG,CAAC,SAASxlC,EAAQC,EAAOL,GACzE,aAEA,IAEI8G,EAAWC,EAFD3G,EAAQ,IAMlB4G,EAAaD,EAFD3G,EAAQ,IAMpB8E,EAAS6B,EAFD3G,EAAQ,IAIhB8G,EAAY9G,EAAQ,GAEpBkF,EAAWlF,EAAQ,IAEnBqO,EAASrO,EAAQ,IAEjBqS,EAAOrS,EAAQ,IAEnB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvF,IAAIghC,EAAa,CAChBC,iBAAiB,EAEjBC,gBAAgB,EAEhBC,YAAa,GAEbC,cAAe,SAAuBpX,GACrCgX,EAAWlhB,SAAyB,oBAAPuhB,IAAsBA,GAAGlsB,OAElD6rB,EAAWlhB,SACdkhB,EAAWM,aAAatX,IAExBgX,EAAWO,gBACXP,EAAWG,YAAYvjC,KAAKosB,KAI9BuX,cAAe,WACTP,EAAWC,mBACf,EAAIrzB,EAAKirB,YAAY,sCACrBmI,EAAWC,iBAAkB,IAI/BO,YAAa,WAKZ,IAHAR,EAAWlhB,UAAW,EACtBkhB,EAAWE,gBAAiB,EAErBF,EAAWG,YAAY9lC,OAAS,GAAG,CACzC,IAAI2uB,EAAWgX,EAAWG,YAAYM,MACtCT,EAAWM,aAAatX,KAI1BsX,aAAc,SAAsBtX,GACnC,OAAO,IAAIqX,GAAGK,OAAO1X,EAAS2X,YAAa3X,IAG5C4X,aAAc,SAAsBp9B,GAEnC,IAAIq9B,EAAY,GAEZr9B,EAAIN,QAAQ,KAAO,EAGJ,MAFlB29B,EAAYb,EAAWc,sBAAsBt9B,MAG5Cq9B,EAAYb,EAAWe,oBAAoBv9B,IAG5Cq9B,EAAYb,EAAWe,oBAAoBv9B,GAG5C,IAAIhB,EAAKq+B,EAAU74B,UAAU64B,EAAUlgB,YAAY,KAAO,GAE1D,OADAkgB,EAAYr+B,EAAGyd,MAAM,MACJ,IAGlB6gB,sBAAuB,SAA+Bt9B,GAErD,GAAIA,UAAsCA,EAAIsZ,OAAOziB,OACpD,OAAO,KAQR,IALA,IACI2mC,EADQx9B,EAAIyc,MAAM,KACC,GAAGA,MAAM,KAE5B4gB,EAAY,GAEP/mC,EAAI,EAAGyM,EAAQy6B,EAAW3mC,OAAQP,EAAIyM,EAAOzM,IAAK,CAC1D,IAAImnC,EAAaD,EAAWlnC,GAAGmmB,MAAM,KACrC,GAAsB,MAAlBghB,EAAW,GAAY,CAC1BJ,EAAYI,EAAW,GACvB,OAIF,OAAOJ,GAGRE,oBAAqB,SAA6Bv9B,GAEjD,GAAIA,UAAsCA,EAAIsZ,OAAOziB,OACpD,OAAO,KAGR,IAAI6mC,EAAQ19B,EAAIyc,MAAM,KAEtB,OADAzc,EAAM09B,EAAM,IACDl5B,UAAUxE,EAAImd,YAAY,KAAO,IAG7CwgB,sBAAuB,SAA+B39B,GACrD,GAAIA,UAAsCA,EAAIsZ,OAAOziB,SAA4C,IAAlCmJ,EAAIN,QAAQ,iBAC1E,OAAOM,EAGR,IAAI09B,EAAQ19B,EAAIyc,MAAM,KAEtB,OADAihB,EAAM,GAAKA,EAAM,GAAGtgC,QAAQ,OAAQ,iBAC7BsgC,EAAM7gB,KAAK,OAIhB+gB,EAAwB,CAC3Bx7B,KAAM,iBAENnE,QAAS,CACRu2B,OAAQ,iBAERqJ,QAAS,CACRnR,SAAU,EACV/d,SAAU,EACVmvB,UAAW,EACX3nB,IAAK,EACLlH,KAAM,EACN8uB,eAAgB,EAChBC,YAAa,EACbC,IAAK,EACLC,SAAU,EACV1gB,MAAO,EACP2gB,eAAgB,EAEhBC,UAAU,EAEVC,aAAc,OAIhB71B,YAAa,SAAqBvI,GACjC,OAAQ,CAAC,gBAAiB,mBAAmBP,QAAQO,EAAKR,gBAG3DyD,OAAQ,SAAgBpE,EAAcb,EAASmD,GAE9C,IAAIy8B,EAAU,GACVS,EAAW,GAGXC,EAAa,KACbh5B,GAAS,EACTglB,GAAQ,EACRiU,EAAgB,KAGpBX,EAAQ5/B,QAAUA,EAClB4/B,EAAQ7+B,GAAKF,EAAaE,GAAK,IAAMf,EAAQu2B,OAC7CqJ,EAAQ/+B,aAAeA,EA2GvB,IAzGA,IAAI8E,EAAQ/H,EAAOE,QAAQsE,WAAWwD,WAClCQ,EAAuB,SAA8BC,GAExD,IAAIC,EAAU,GAAKD,EAASE,UAAU,EAAG,GAAGC,cAAgBH,EAASE,UAAU,GAE/Eq5B,EAAQ,MAAQt5B,GAAW,WAC1B,GAAmB,OAAfg6B,EAAqB,CAGxB,OAAQj6B,GACP,IAAK,cACJ,OAAOi6B,EAAW3rB,iBACnB,IAAK,WACJ,OAAO2rB,EAAW7rB,cACnB,IAAK,SAEJ,OADS6rB,EAAW1L,YAAc,IAEnC,IAAK,eACJ,OAAO0L,EAAWE,kBACnB,IAAK,SACJ,OAAOl5B,EACR,IAAK,QACJ,OAAOglB,EACR,IAAK,QACJ,OAAOgU,EAAWG,UACnB,IAAK,WACJ,IAAIC,EAAgBJ,EAAWK,yBAC3B5uB,EAAWuuB,EAAW7rB,cAC1B,MAAO,CACN8K,MAAO,WACN,OAAO,GAERrH,IAAK,WACJ,OAAOwoB,EAAgB3uB,GAExBnZ,OAAQ,GAEV,IAAK,MACJ,OAAO0nC,EAAWM,cACnB,IAAK,aACJ,OApDY,EAuDd,OApCY,KAsCZ,OAAO,MAIThB,EAAQ,MAAQt5B,GAAW,SAAUxK,GACpC,GAAmB,OAAfwkC,EACH,OAAQj6B,GACP,IAAK,MACJ,IAAItE,EAAuB,iBAAVjG,EAAqBA,EAAQA,EAAM,GAAGuH,IACnDw9B,EAAWtC,EAAWY,aAAap9B,GAEnClB,EAAaI,aAAawtB,SAC7B6R,EAAWQ,cAAcD,GAEzBP,EAAWS,aAAaF,GAEzB,MACD,IAAK,cACJP,EAAWU,OAAOllC,GAClB,MACD,IAAK,QACAA,EACHwkC,EAAW3X,OAEX2X,EAAWW,SAEZnnC,YAAW,WACV,IAAIyL,GAAQ,EAAIvH,EAASwH,aAAa,eAAgBo6B,GACtD/+B,EAAa6E,cAAcH,KACzB,IACH,MACD,IAAK,SACKzJ,EACTwkC,EAAWhqB,UAAkB,IAARxa,GACrBhC,YAAW,WACV,IAAIyL,GAAQ,EAAIvH,EAASwH,aAAa,eAAgBo6B,GACtD/+B,EAAa6E,cAAcH,KACzB,IACH,MACD,IAAK,eACJ+6B,EAAWY,gBAAgBplC,GAC3BhC,YAAW,WACV,IAAIyL,GAAQ,EAAIvH,EAASwH,aAAa,aAAco6B,GACpD/+B,EAAa6E,cAAcH,KACzB,IACH,MACD,IAAK,aACJ,IAAIA,GAAQ,EAAIvH,EAASwH,aAAa,UAAWo6B,GACjD/+B,EAAa6E,cAAcH,QAO7B86B,EAASllC,KAAK,CAAE6G,KAAM,MAAOqE,SAAUA,EAAUvK,MAAOA,MAKlDzD,EAAI,EAAGyM,EAAQa,EAAM/M,OAAQP,EAAIyM,EAAOzM,IAChD+N,EAAqBT,EAAMtN,IAuB5B,IApBA,IAAIwN,EAAUjI,EAAOE,QAAQsE,WAAWyD,QACpC+B,EAAgB,SAAuBJ,GAC1Co4B,EAAQp4B,GAAc,WACrB,GAAmB,OAAf84B,EACH,OAAQ94B,GACP,IAAK,OAEJ,OADAF,GAAS,EACFg5B,EAAWa,YACnB,IAAK,QAEJ,OADA75B,GAAS,EACFg5B,EAAWc,aACnB,IAAK,OACJ,OAAO,UAGTf,EAASllC,KAAK,CAAE6G,KAAM,OAAQwF,WAAYA,MAKpC3C,EAAK,EAAGkD,EAASlC,EAAQjN,OAAQiM,EAAKkD,EAAQlD,IACtD+C,EAAc/B,EAAQhB,IAGvB,IAuBIw8B,EAAmB3hC,EAAW5B,QAAQgD,cAAc,OACxDugC,EAAiBtgC,GAAK6+B,EAAQ7+B,GAE1B6+B,EAAQ5/B,QAAQ4/B,QAAQO,WAC3Bt/B,EAAaI,aAAaoC,IAAMk7B,EAAWmB,sBAAsBv8B,EAAW,GAAGE,MAGhFxC,EAAaI,aAAaU,WAAWC,aAAay/B,EAAkBxgC,EAAaI,cACjFJ,EAAaI,aAAaqO,MAAMmE,QAAU,OAE1C,IAAI6tB,EAA8D,UAApDzgC,EAAaI,aAAaM,QAAQC,cAC5C4D,EAASk8B,EAAU,IAAMzgC,EAAaI,aAAamE,OACnDD,EAAQm8B,EAAU,IAAMzgC,EAAaI,aAAakE,MAClDo8B,EAAUhD,EAAWY,aAAah8B,EAAW,GAAGE,KAChDm+B,EAAkB,CACrBzgC,GAAI6+B,EAAQ7+B,GACZm+B,YAAamC,EAAiBtgC,GAC9BwgC,QAASA,EACTn8B,OAAQA,EACRD,MAAOA,EACPs8B,KAAM7B,EAAQ5/B,QAAQ4/B,SAAWA,EAAQ5/B,QAAQ4/B,QAAQO,SAAW,wCAAqC7lC,EACzGonC,WAAYrkC,OAAOuD,OAAO,CACzB8P,SAAU,EACVsvB,IAAK,EACLH,UAAW,EACXI,SAAU,EACVH,eAAgB,EAChB6B,MAAO,EACPzB,eAAgB,GACdN,EAAQ5/B,QAAQ4/B,SACnBgC,OAAQpiC,EAAS1B,QAAQmE,SAASw/B,KAClC79B,OAAQ,CACPi+B,QAAS,SAAiB/pC,GAOzB,GANA+I,EAAay/B,WAAaA,EAAaxoC,EAAEwR,OACzCzI,EAAaihC,aAAe,CAC3Bx6B,QAAQ,EACRglB,OAAO,GAGJ+T,EAASznC,OACZ,IAAK,IAAIoO,EAAM,EAAGoJ,EAAUiwB,EAASznC,OAAQoO,EAAMoJ,EAASpJ,IAAO,CAElE,IAAI4yB,EAAYyG,EAASr5B,GAEzB,GAAuB,QAAnB4yB,EAAU53B,KAAgB,CAC7B,IAAIqE,EAAWuzB,EAAUvzB,SACrBC,EAAU,GAAKD,EAASE,UAAU,EAAG,GAAGC,cAAgBH,EAASE,UAAU,GAE/Eq5B,EAAQ,MAAQt5B,GAASszB,EAAU99B,WACN,SAAnB89B,EAAU53B,MACpB49B,EAAQhG,EAAUpyB,cAKrB+4B,EAAgBD,EAAWyB,YAEvBlhC,EAAaI,aAAa6nB,OAC7BwX,EAAW3X,OASZ,IANA,IAAI/kB,EAAS,CAAC,YAAa,YACvB25B,EAAe,SAAsBzlC,GACxC,IAAIkqC,GAAW,EAAIhkC,EAASwH,aAAa1N,EAAEkK,KAAM49B,GACjD/+B,EAAa6E,cAAcs8B,IAGnBn6B,EAAM,EAAGsU,EAAUvY,EAAOhL,OAAQiP,EAAMsU,EAAStU,IACzD04B,EAAcv4B,iBAAiBpE,EAAOiE,GAAM01B,GAAc,GAK3D,IAFA,IAAI7D,EAAa,CAAC,gBAAiB,iBAAkB,aAAc,WAE1D5xB,EAAM,EAAGsU,EAAUsd,EAAW9gC,OAAQkP,EAAMsU,EAAStU,IAAO,CACpE,IAAIvC,GAAQ,EAAIvH,EAASwH,aAAak0B,EAAW5xB,GAAM83B,GACvD/+B,EAAa6E,cAAcH,KAG7B08B,cAAe,SAAuBnqC,GACrC,IAAI8L,EAAS,GAEb,OAAQ9L,EAAE89B,MACT,KAAM,EACLhyB,EAAS,CAAC,kBACV0D,GAAS,EACTglB,GAAQ,EACR,MACD,KAAK,EACJ1oB,EAAS,CAAC,SACV0D,GAAS,EACTglB,GAASsT,EAAQ5/B,QAAQ4/B,QAAQ5uB,KAC5B4uB,EAAQ5/B,QAAQ4/B,QAAQ5uB,MAC5B4uB,EAAQsC,eAET,MACD,KAAK,EACJt+B,EAAS,CAAC,OAAQ,WAClB0D,GAAS,EACTglB,GAAQ,EACRsT,EAAQuC,gBACR,MACD,KAAK,EACJv+B,EAAS,CAAC,SACV0D,GAAS,EACTglB,GAAQ,EACRsT,EAAQsC,eACR,MACD,KAAK,EACJt+B,EAAS,CAAC,YACV0oB,GAAQ,EACR,MACD,KAAK,EACJ1oB,EAAS,CAAC,aAAc,iBAAkB,WAC1C0D,GAAS,EACTglB,GAAQ,EAIV,IAAK,IAAIjkB,EAAM,EAAGoU,EAAU7Y,EAAOhL,OAAQyP,EAAMoU,EAASpU,IAAO,CAChE,IAAI9C,GAAQ,EAAIvH,EAASwH,aAAa5B,EAAOyE,GAAMu3B,GACnD/+B,EAAa6E,cAAcH,KAG7B68B,QAAS,SAAiBtqC,GACzB,OAnJgB,SAAsBkJ,GACxC,IAAIvC,EAAU,GACd,OAAQuC,EAAM40B,MACb,KAAK,EACJn3B,EAAU,4KACV,MACD,KAAK,EACJA,EAAU,uHACV,MACD,KAAK,IACJA,EAAU,kGACV,MACD,KAAK,IACL,KAAK,IACJA,EAAU,uFACV,MACD,QACCA,EAAU,iBAGZoC,EAAawE,cAAc,QAAUrE,EAAM40B,KAAO,KAAOn3B,EAAS0E,GA+HzDk/B,CAAavqC,MAuEvB,OAlEIwpC,GAAWzgC,EAAaI,aAAaqhC,aAAa,kBACrDd,EAAgBE,WAAW3B,YAAc,GAGtCl/B,EAAaI,aAAayP,WAC7B8wB,EAAgBE,WAAWhxB,SAAW,GAEnC7P,EAAaI,aAAawtB,WAC7B+S,EAAgBE,WAAWjT,SAAW,GAEnC5tB,EAAaI,aAAa+P,OAC7BwwB,EAAgBE,WAAW1wB,KAAO,IAG9BwwB,EAAgBE,WAAW1wB,MAA0D,IAAlD6H,SAAS2oB,EAAgBE,WAAW1wB,KAAM,KAAanQ,EAAaI,aAAaoC,IAAI5B,QAAQ,UAAY,KAAO+/B,EAAgBE,WAAWa,WAAoE,IAAxD1hC,EAAaI,aAAaoC,IAAI5B,QAAQ,eACpO+/B,EAAgBE,WAAWa,SAAWhE,EAAWY,aAAat+B,EAAaI,aAAaoC,MAGzFk7B,EAAWI,cAAc6C,GAEzB5B,EAAQ4C,QAAU,SAAUv6B,EAAW8D,EAAQ02B,GAC1CA,UACH5hC,EAAaihC,aAAeW,IAI9B7C,EAAQ16B,QAAU,SAAUC,EAAOC,GACf,OAAfk7B,GACHA,EAAWp7B,QAAQC,EAAOC,IAG5Bw6B,EAAQp7B,KAAO,WACdo7B,EAAQsC,eACRtC,EAAQx7B,QACJm8B,IACHA,EAAcjxB,MAAMmE,QAAU,SAGhCmsB,EAAQt7B,KAAO,WACVi8B,IACHA,EAAcjxB,MAAMmE,QAAU,KAGhCmsB,EAAQp3B,QAAU,WACjB83B,EAAW93B,WAEZo3B,EAAQ8C,SAAW,KAEnB9C,EAAQuC,cAAgB,WACvBvC,EAAQ8C,SAAWC,aAAY,WAC9B,IAAIp9B,GAAQ,EAAIvH,EAASwH,aAAa,aAAco6B,GACpD/+B,EAAa6E,cAAcH,KACzB,MAEJq6B,EAAQsC,aAAe,WAClBtC,EAAQ8C,UACXE,cAAchD,EAAQ8C,WAGxB9C,EAAQ/L,aAAe,WACtB,IAAIgP,EAAU7iC,EAAQ4/B,QAAQQ,aAE1Br/B,EAAKw9B,EAAWY,aAAat+B,EAAaI,aAAaoC,KAC3D,OAAOw/B,GAFW,CAAC,UAAW,YAAa,YAAa,YAAa,iBAEvCphC,QAAQohC,IAAY,GAAK9hC,EAAK,8BAAgCA,EAAK,IAAM8hC,EAAU,OAAS,IAGpHjD,IAITpgC,EAAS1B,QAAQglC,wBAA0B,WAC1CvE,EAAWQ,eAGZ53B,EAAO0wB,WAAW18B,MAAK,SAAU4G,GAChC,MAAQ,iCAAiCxD,KAAKwD,GAAO,kBAAoB,QAI1EnC,EAAUkE,SAASg0B,IAAI6H,IAErB,CAAC,EAAI,EAAE,GAAK,GAAG,GAAK,GAAG,GAAK,GAAG,EAAI,EAAE,EAAI,EAAE,EAAI,IAAIoD,GAAG,CAAC,SAASjqC,EAAQC,EAAOL,GACjF,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAERpD,EAAQyX,iBAAmBzX,EAAQmW,kBAAoBnW,EAAQ8S,aAAe9S,EAAQ8U,sBAAwB9U,EAAQsqC,8BAAgCtqC,EAAQgU,2BAA6BhU,EAAQ0V,mBAAqB1V,EAAQuqC,yBAA2BvqC,EAAQwqC,0BAA4BxqC,EAAQyqC,6BAA+BzqC,EAAQ0qC,sBAAwB1qC,EAAQ2lC,oBAAsB3lC,EAAQwe,sBAAwBxe,EAAQoV,uBAAyBpV,EAAQk+B,QAAUl+B,EAAQu7B,iBAAmBv7B,EAAQyV,UAAYzV,EAAQ+d,WAAa/d,EAAQ2qC,UAAY3qC,EAAQ+hC,QAAU/hC,EAAQ8hC,MAAQ9hC,EAAQ4V,WAAa5V,EAAQyJ,OAASzJ,EAAQ4qC,QAAU5qC,EAAQ20B,UAAY30B,EAAQ00B,QAAU10B,EAAQ6qC,GAAK7qC,EAAQqgC,SAAMz+B,EAE1sB,IAEIkF,EAAWC,EAFD3G,EAAQ,IAMlB4G,EAAaD,EAFD3G,EAAQ,IAMpB8E,EAAS6B,EAFD3G,EAAQ,IAIpB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAkDvF,IAhDA,IAAIw7B,EAAMrgC,EAAQqgC,IAAMv5B,EAAS1B,QAAQ0lC,UACrCD,EAAK7qC,EAAQ6qC,GAAKxK,EAAI0K,UAAUjiC,cAChC4rB,EAAU10B,EAAQ00B,QAAU,QAAQ7uB,KAAKglC,KAAQ/jC,EAAS1B,QAAQ4lC,SAClErW,EAAY30B,EAAQ20B,UAAY,UAAU9uB,KAAKglC,KAAQ/jC,EAAS1B,QAAQ4lC,SACxEJ,EAAU5qC,EAAQ4qC,QAAU,QAAQ/kC,KAAKglC,KAAQ/jC,EAAS1B,QAAQ4lC,SAElEp1B,GADS5V,EAAQyJ,OAAS,oBAAoB5D,KAAKglC,KAAQ/jC,EAAS1B,QAAQ4lC,SAC/DhrC,EAAQ4V,WAAa,WAAW/P,KAAKglC,IAClD/I,EAAQ9hC,EAAQ8hC,MAAQ,uBAAuBj8B,KAAKw6B,EAAI4K,SACxDlJ,GAAU/hC,EAAQ+hC,QAAU,gBAAiB1B,KAAS,iBAAkBr5B,EAAW5B,UACnFulC,EAAY3qC,EAAQ2qC,UAAY,UAAU9kC,KAAKglC,GAC/C9sB,EAAa/d,EAAQ+d,WAAa,WAAWlY,KAAKglC,GAClDp1B,EAAYzV,EAAQyV,UAAY,UAAU5P,KAAKglC,KAAQF,EACvDpP,EAAmBv7B,EAAQu7B,iBAAmB,oCAAoC11B,KAAKglC,GACvF3M,GAAUl+B,EAAQk+B,QAAU,gBAAiBp3B,EAAS1B,SACtDgQ,EAAyBpV,EAAQoV,uBAAyB,WAC7D,IAAIqF,EAAUzT,EAAW5B,QAAQgD,cAAc,KAC3C6N,EAAkBjP,EAAW5B,QAAQ6Q,gBACrCX,EAAmBxO,EAAS1B,QAAQkQ,iBAExC,KAAM,kBAAmBmF,EAAQ7D,OAChC,OAAO,EAGR6D,EAAQ7D,MAAMs0B,cAAgB,OAC9BzwB,EAAQ7D,MAAMs0B,cAAgB,IAC9Bj1B,EAAgB9M,YAAYsR,GAC5B,IAAI0wB,EAAW71B,GAA4E,UAAvDA,EAAiBmF,EAAS,KAAO,IAAIywB,cAEzE,OADAzwB,EAAQtK,WACCg7B,EAdoD,GAiB1D3sB,EAAwBxe,EAAQwe,sBAAwB,WAC3D,IAAI4sB,GAAkB,EACtB,IACC,IAAIC,EAAO1mC,OAAOC,eAAe,GAAI,UAAW,CAC/C4I,IAAK,WACJ49B,GAAkB,KAGpBtkC,EAAS1B,QAAQkK,iBAAiB,OAAQ,KAAM+7B,GAC/C,MAAOjsC,IAET,OAAOgsC,EAXoD,GAcxDE,EAAgB,CAAC,SAAU,QAAS,QAAS,SAC7CC,OAAQ,EAEH5rC,EAAI,EAAGyM,EAAQk/B,EAAcprC,OAAQP,EAAIyM,EAAOzM,IACxD4rC,EAAQvkC,EAAW5B,QAAQgD,cAAckjC,EAAc3rC,IAGxD,IAAIgmC,EAAsB3lC,EAAQ2lC,oBAAsBlwB,GAAaqsB,GAAS,QAAQj8B,KAAKglC,GAEvFW,OAAmD5pC,IAAhC2pC,EAAM51B,sBAEzB81B,OAAkD7pC,IAA5B2pC,EAAMG,kBAE5BF,GAAoB,iBAAiB3lC,KAAKglC,KAC7CY,GAAsB,EACtBD,GAAmB,GAGpB,IAAIG,OAA8D/pC,IAAlC2pC,EAAMK,wBAClCC,OAAwDjqC,IAA/B2pC,EAAMx1B,qBAC/B+1B,OAAsDlqC,IAA9B2pC,EAAMQ,oBAC9BC,EAA0BL,GAA6BE,GAA0BC,EACjFG,EAA0BD,EAC1BE,EAAsB,GACtBp5B,OAAe,EACfqD,OAAoB,EACpBsB,OAAmB,EAEnBo0B,EACHI,EAA0BjlC,EAAW5B,QAAQ+mC,qBACnCL,IACVG,EAA0BjlC,EAAW5B,QAAQgnC,qBAG1CzB,IACHa,GAAmB,GAGhBQ,IACCL,EACHO,EAAsB,yBACZL,EACVK,EAAsB,mBACZJ,IACVI,EAAsB,sBAGvBlsC,EAAQ8S,aAAeA,EAAe,WACrC,OAAI+4B,EACI7kC,EAAW5B,QAAQinC,cAChBV,EACH3kC,EAAW5B,QAAQkyB,mBAChBwU,EACwC,OAA3C9kC,EAAW5B,QAAQknC,yBADpB,GAKRtsC,EAAQmW,kBAAoBA,EAAoB,SAA2B0N,GACtE8nB,EACH9nB,EAAG+nB,0BACOC,EACVhoB,EAAG9N,uBACO+1B,GACVjoB,EAAGkoB,uBAIL/rC,EAAQyX,iBAAmBA,EAAmB,WACzCk0B,EACH3kC,EAAW5B,QAAQmnC,yBACTV,EACV7kC,EAAW5B,QAAQonC,sBACTV,GACV9kC,EAAW5B,QAAQqnC,qBAKtB,IAAI/B,EAAwB1qC,EAAQ0qC,sBAAwBe,EACxDhB,EAA+BzqC,EAAQyqC,6BAA+BkB,EACtEnB,EAA4BxqC,EAAQwqC,0BAA4BqB,EAChEtB,EAA2BvqC,EAAQuqC,yBAA2BuB,EAC9Dp2B,EAAqB1V,EAAQ0V,mBAAqB81B,EAClDx3B,EAA6BhU,EAAQgU,2BAA6Bg4B,EAClE1B,EAAgCtqC,EAAQsqC,8BAAgC2B,EACxEn3B,EAAwB9U,EAAQ8U,sBAAwBo3B,EAC5DlsC,EAAQ8S,aAAeA,EACvB9S,EAAQmW,kBAAoBA,EAC5BnW,EAAQyX,iBAAmBA,EAG3BvS,EAAOE,QAAQiN,SAAWnN,EAAOE,QAAQiN,UAAY,GACrDnN,EAAOE,QAAQiN,SAASq6B,OAAShY,EACjCxvB,EAAOE,QAAQiN,SAASs6B,OAAS/B,EACjC1lC,EAAOE,QAAQiN,SAASu6B,SAAWjY,EACnCzvB,EAAOE,QAAQiN,SAASw6B,MAAQ3nC,EAAOE,QAAQiN,SAASu6B,UAAY1nC,EAAOE,QAAQiN,SAASq6B,OAC5FxnC,EAAOE,QAAQiN,SAASy6B,UAAYl3B,EACpC1Q,EAAOE,QAAQiN,SAAS06B,KAAOjL,EAC/B58B,EAAOE,QAAQiN,SAAS26B,OAASjL,EACjC78B,EAAOE,QAAQiN,SAAS46B,SAAWtC,EACnCzlC,EAAOE,QAAQiN,SAAS66B,UAAYnvB,EACpC7Y,EAAOE,QAAQiN,SAAS86B,SAAW13B,EACnCvQ,EAAOE,QAAQiN,SAAS+6B,eAAiB7R,EACzCr2B,EAAOE,QAAQiN,SAASg7B,OAASnP,EACjCh5B,EAAOE,QAAQiN,SAASi7B,kBAAoB3H,EAC5CzgC,EAAOE,QAAQiN,SAASk7B,sBAAwBn4B,EAChDlQ,EAAOE,QAAQiN,SAASm7B,qBAAuBhvB,EAC/CtZ,EAAOE,QAAQiN,SAASm5B,iBAAmB91B,EAC3CxQ,EAAOE,QAAQiN,SAASo5B,oBAAsBf,EAC9CxlC,EAAOE,QAAQiN,SAASs5B,0BAA4BlB,EACpDvlC,EAAOE,QAAQiN,SAASw5B,uBAAyBrB,EACjDtlC,EAAOE,QAAQiN,SAASy5B,sBAAwBvB,EAChDrlC,EAAOE,QAAQiN,SAAS25B,wBAA0Bh4B,EAClD9O,EAAOE,QAAQiN,SAAS45B,wBAA0B3B,EAClDplC,EAAOE,QAAQiN,SAAS65B,oBAAsBp3B,EAC9C5P,EAAOE,QAAQiN,SAASS,aAAeA,EACvC5N,EAAOE,QAAQiN,SAAS8D,kBAAoBA,EAC5CjR,EAAOE,QAAQiN,SAASoF,iBAAmBA,GAEzC,CAAC,EAAI,EAAE,EAAI,EAAE,EAAI,IAAIg2B,GAAG,CAAC,SAASrtC,EAAQC,EAAOL,GACnD,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAERpD,EAAQiX,YAAcjX,EAAQgW,SAAWhW,EAAQ4c,cAAWhb,EAC5D5B,EAAQ09B,WAAaA,EACrB19B,EAAQmb,OAASA,EACjBnb,EAAQ0tC,YAAcA,EACtB1tC,EAAQ6qB,QAAUA,EAClB7qB,EAAQ0qB,OAASA,EACjB1qB,EAAQ4jB,SAAWA,EACnB5jB,EAAQ4qB,QAAUA,EAClB5qB,EAAQomB,KAAOA,EAEf,IAEItf,EAAWC,EAFD3G,EAAQ,IAMlB4G,EAAaD,EAFD3G,EAAQ,IAMpB8E,EAAS6B,EAFD3G,EAAQ,IAIpB,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvF,SAAS64B,EAAWr0B,GACnB,OAAO,IAAI/H,SAAQ,SAAUkB,EAASF,GACrC,IAAIqrC,EAAS3mC,EAAW5B,QAAQgD,cAAc,UAC9CulC,EAAOhjC,IAAMtB,EACbskC,EAAOC,OAAQ,EACfD,EAAOE,OAAS,WACfF,EAAOx9B,SACP3N,KAEDmrC,EAAOG,QAAU,WAChBH,EAAOx9B,SACP7N,KAED0E,EAAW5B,QAAQ2oC,KAAK5kC,YAAYwkC,MAItC,SAASxyB,EAAO0I,GACf,IAAImqB,EAAOnqB,EAAGoqB,wBACVC,EAAapnC,EAAS1B,QAAQ+oC,aAAennC,EAAW5B,QAAQ6Q,gBAAgBi4B,WAChFE,EAAYtnC,EAAS1B,QAAQipC,aAAernC,EAAW5B,QAAQ6Q,gBAAgBm4B,UACnF,MAAO,CAAE9c,IAAK0c,EAAK1c,IAAM8c,EAAWpyB,KAAMgyB,EAAKhyB,KAAOkyB,GAGvD,IAAII,OAAiB,EACjBC,OAAiB,EACjBC,OAAoB,EAEpB,cAAexnC,EAAW5B,QAAQ6Q,iBACrCq4B,EAAiB,SAAwBzqB,EAAIjQ,GAC5C,YAAwBhS,IAAjBiiB,EAAG4qB,WAA2B5qB,EAAG4qB,UAAUC,SAAS96B,IAE5D26B,EAAiB,SAAwB1qB,EAAIjQ,GAC5C,OAAOiQ,EAAG4qB,UAAUrP,IAAIxrB,IAEzB46B,EAAoB,SAA2B3qB,EAAIjQ,GAClD,OAAOiQ,EAAG4qB,UAAUt+B,OAAOyD,MAG5B06B,EAAiB,SAAwBzqB,EAAIjQ,GAC5C,OAAO,IAAI+6B,OAAO,MAAQ/6B,EAAY,OAAO/N,KAAKge,EAAGjQ,YAEtD26B,EAAiB,SAAwB1qB,EAAIjQ,GACvCgJ,EAASiH,EAAIjQ,KACjBiQ,EAAGjQ,WAAa,IAAMA,IAGxB46B,EAAoB,SAA2B3qB,EAAIjQ,GAClDiQ,EAAGjQ,UAAYiQ,EAAGjQ,UAAUnN,QAAQ,IAAIkoC,OAAO,MAAQ/6B,EAAY,MAAO,KAAM,MAIlF,IAAIgJ,EAAW5c,EAAQ4c,SAAW0xB,EAC9Bt4B,EAAWhW,EAAQgW,SAAWu4B,EAC9Bt3B,EAAcjX,EAAQiX,YAAcu3B,EAExC,SAASd,EAAY7pB,EAAIjQ,GACxBgJ,EAASiH,EAAIjQ,GAAaqD,EAAY4M,EAAIjQ,GAAaoC,EAAS6N,EAAIjQ,GAGrE,SAASiX,EAAQhH,GAChB,IAAIxK,EAAWtW,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,IAC/EyM,EAAWzM,UAAU,GAEpB8gB,EAAGjN,MAAM6e,UACb5R,EAAGjN,MAAM6e,QAAU,GAGpB,IAAI5O,EAAQ,KACZ/f,EAAS1B,QAAQwpC,uBAAsB,SAASC,EAAQC,GAEvD,IAAIC,EAAWD,GADfjoB,EAAQA,GAASioB,GAEbrZ,EAAUvf,WAAW,EAAI64B,EAAW11B,EAAU,GAClDwK,EAAGjN,MAAM6e,QAAUA,EAAU,EAAI,EAAIA,EACjCsZ,EAAW11B,EACV7J,GAAgC,mBAAbA,GACtBA,IAGD1I,EAAS1B,QAAQwpC,sBAAsBC,MAK1C,SAASnkB,EAAO7G,GACf,IAAIxK,EAAWtW,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,IAC/EyM,EAAWzM,UAAU,GAEpB8gB,EAAGjN,MAAM6e,UACb5R,EAAGjN,MAAM6e,QAAU,GAGpB,IAAI5O,EAAQ,KACZ/f,EAAS1B,QAAQwpC,uBAAsB,SAASC,EAAQC,GAEvD,IAAIC,EAAWD,GADfjoB,EAAQA,GAASioB,GAEbrZ,EAAUvf,WAAW64B,EAAW11B,EAAU,GAC9CwK,EAAGjN,MAAM6e,QAAUA,EAAU,EAAI,EAAIA,EACjCsZ,EAAW11B,EACV7J,GAAgC,mBAAbA,GACtBA,IAGD1I,EAAS1B,QAAQwpC,sBAAsBC,MAK1C,SAASjrB,EAASC,EAAI2S,GACrB,IAAI5S,EAAW,GACfC,EAAKA,EAAG5a,WAAWmZ,WACnB,GACMoU,IAAUA,EAAO3S,IACrBD,EAASnhB,KAAKohB,SAEPA,EAAKA,EAAGyM,aACjB,OAAO1M,EAGR,SAASgH,EAAQokB,GAChB,YAA4BptC,IAAxBotC,EAAKC,gBAAwD,aAAxBD,EAAKC,kBACnCD,EAAK5zB,aAAe4zB,EAAKhW,cAAgBgW,EAAKC,iBAAiB/uC,WAEhE8uC,EAAK5zB,cAAe4zB,EAAKhW,cAGpC,SAAS5S,EAAK/c,EAAK6lC,EAAU9+B,EAAS9H,GACrC,IAAIsB,EAAM9C,EAAS1B,QAAQyE,eAAiB,IAAIA,eAAmB,IAAI22B,cAAc,qBACrF52B,EAAIulC,iBAAkB,EAEtB,IAAI7lC,EAAO,mDACP8lC,GAAY,EACZC,EAAS,KAAK7oC,OAAO,KAEzB,OAAQ0oC,GACP,IAAK,OACJ5lC,EAAO,aACP,MACD,IAAK,OACJA,EAAO,oCACP,MACD,IAAK,OACJA,EAAO,YACP,MACD,IAAK,MACJA,EAAO,4BAII,sCAATA,IACH+lC,EAAS/lC,EAAO,iBAGbM,IACHA,EAAIU,KAAK,MAAOjB,GAAK,GACrBO,EAAI0lC,iBAAiB,SAAUD,GAC/BzlC,EAAIE,mBAAqB,WACxB,IAAIslC,GAImB,IAAnBxlC,EAAIG,WACP,GAAmB,MAAfH,EAAII,OAAgB,CACvBolC,GAAY,EACZ,IAAIlS,OAAO,EACX,OAAQgS,GACP,IAAK,OACJhS,EAAO/I,KAAKrM,MAAMle,EAAI2lC,cACtB,MACD,IAAK,MACJrS,EAAOtzB,EAAI4lC,YACX,MACD,QACCtS,EAAOtzB,EAAI2lC,aAGbn/B,EAAQ8sB,OACmB,mBAAV50B,GACjBA,EAAMsB,EAAII,SAKbJ,EAAIY,QAINtF,EAAOE,QAAQsX,MAAQxX,EAAOE,QAAQsX,OAAS,GAC/CxX,EAAOE,QAAQsX,MAAMvB,OAASA,EAC9BjW,EAAOE,QAAQsX,MAAME,SAAWA,EAChC1X,EAAOE,QAAQsX,MAAM1G,SAAWA,EAChC9Q,EAAOE,QAAQsX,MAAMzF,YAAcA,EACnC/R,EAAOE,QAAQsX,MAAMgxB,YAAcA,EACnCxoC,EAAOE,QAAQsX,MAAMgO,OAASA,EAC9BxlB,EAAOE,QAAQsX,MAAMmO,QAAUA,EAC/B3lB,EAAOE,QAAQsX,MAAMkH,SAAWA,EAChC1e,EAAOE,QAAQsX,MAAMkO,QAAUA,EAC/B1lB,EAAOE,QAAQsX,MAAM0J,KAAOA,EAC5BlhB,EAAOE,QAAQsX,MAAMghB,WAAaA,GAEhC,CAAC,EAAI,EAAE,EAAI,EAAE,EAAI,IAAI+R,GAAG,CAAC,SAASrvC,EAAQC,EAAOL,GACnD,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAERpD,EAAQ0G,WAAaA,EACrB1G,EAAQ0vC,SAAWA,EACnB1vC,EAAQ8F,cAAgBA,EACxB9F,EAAQy6B,YAAcA,EACtBz6B,EAAQ8M,YAAcA,EACtB9M,EAAQ+0B,YAAcA,EACtB/0B,EAAQ0T,SAAWA,EAEnB,IAIgC7O,EAJ5BI,EAAQ7E,EAAQ,GAEhB8E,GAE4BL,EAFII,IAEiBJ,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvF,SAAS6B,EAAWL,GAEnB,GAAqB,iBAAVA,EACV,MAAM,IAAIxG,MAAM,oCAGjB,IAAIkmB,EAAM,CACT,IAAK,QACL,IAAK,OACL,IAAK,OACL,IAAK,UAGN,OAAO1f,EAAMI,QAAQ,WAAW,SAAUuf,GACzC,OAAOD,EAAIC,MAIb,SAAS0pB,EAASC,EAAMC,GACvB,IAAIpoC,EAAQ3G,KACRgvC,EAAa9sC,UAEb+sC,EAAY/sC,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,IAAmBA,UAAU,GAG/E,GAAoB,mBAAT4sC,EACV,MAAM,IAAI9vC,MAAM,qCAGjB,GAAoB,iBAAT+vC,EACV,MAAM,IAAI/vC,MAAM,2CAGjB,IAAI81B,OAAU,EACd,OAAO,WACN,IAAIoa,EAAUvoC,EACV5D,EAAOisC,EAOPG,EAAUF,IAAcna,EAC5Bne,aAAame,GACbA,EAAUv0B,YARE,WACXu0B,EAAU,KACLma,GACJH,EAAK7sC,MAAMitC,EAASnsC,KAKMgsC,GAExBI,GACHL,EAAK7sC,MAAMitC,EAASnsC,IAKvB,SAASkC,EAAc2B,GACtB,OAAO9C,OAAOsrC,oBAAoBxoC,GAAUvH,QAAU,EAGvD,SAASu6B,EAAYvvB,EAAQ7C,GAC5B,IAAI6nC,EAAU,kHAEV7tC,EAAM,CAAEklB,EAAG,GAAIsT,EAAG,IActB,OAbC3vB,GAAU,IAAI4a,MAAM,KAAKqqB,SAAQ,SAAUzQ,GAC3C,IAAInwB,EAAiBmwB,GAAKr3B,EAAK,IAAMA,EAAK,IAEtCkH,EAAU2a,WAAW,MACxB7nB,EAAIklB,EAAE9kB,KAAK8M,GACXlN,EAAIw4B,EAAEp4B,KAAK8M,IAEXlN,EAAI6tC,EAAQrqC,KAAK65B,GAAK,IAAM,KAAKj9B,KAAK8M,MAIxClN,EAAIklB,EAAIllB,EAAIklB,EAAErB,KAAK,KACnB7jB,EAAIw4B,EAAIx4B,EAAIw4B,EAAE3U,KAAK,KACZ7jB,EAGR,SAASyK,EAAYyC,EAAWqB,GAE/B,GAAyB,iBAAdrB,EACV,MAAM,IAAI1P,MAAM,+BAGjB,IAAIuwC,EAAa7gC,EAAUmW,MAAM,uBAC7BrG,EAAS,CACZzO,OAAQA,GAQT,OALmB,OAAfw/B,IACH7gC,EAAY6gC,EAAW,GACvB/wB,EAAOgxB,UAAYD,EAAW,IAGxB,IAAI1vC,OAAO4vC,YAAY/gC,EAAW,CACxC8P,OAAQA,IAIV,SAAS0V,EAAYwb,EAAYC,GAEhC,SAAUD,GAAcC,GAA+D,EAAjDD,EAAWE,wBAAwBD,IAG1E,SAAS98B,EAAStQ,GACjB,MAAwB,iBAAVA,EAGf8B,EAAOE,QAAQsX,MAAQxX,EAAOE,QAAQsX,OAAS,GAC/CxX,EAAOE,QAAQsX,MAAMhW,WAAaA,EAClCxB,EAAOE,QAAQsX,MAAMgzB,SAAWA,EAChCxqC,EAAOE,QAAQsX,MAAM5W,cAAgBA,EACrCZ,EAAOE,QAAQsX,MAAM+d,YAAcA,EACnCv1B,EAAOE,QAAQsX,MAAM5P,YAAcA,EACnC5H,EAAOE,QAAQsX,MAAMqY,YAAcA,EACnC7vB,EAAOE,QAAQsX,MAAMhJ,SAAWA,GAE9B,CAAC,EAAI,IAAIg9B,GAAG,CAAC,SAAStwC,EAAQC,EAAOL,GACvC,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAERpD,EAAQm/B,gBAAav9B,EACrB5B,EAAQoO,cAAgBA,EACxBpO,EAAQgL,WAAaA,EACrBhL,EAAQ2wC,gBAAkBA,EAC1B3wC,EAAQkO,gBAAkBA,EAC1BlO,EAAQ4wC,aAAeA,EACvB5wC,EAAQ6wC,mBAAqBA,EAE7B,IAMgChsC,EAN5BI,EAAQ7E,EAAQ,GAEhB8E,GAI4BL,EAJII,IAIiBJ,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAFnFS,EAAWlF,EAAQ,IAIvB,IAAI++B,EAAan/B,EAAQm/B,WAAa,GAEtC,SAAS/wB,EAAc/E,GAEtB,GAAmB,iBAARA,EACV,MAAM,IAAIxJ,MAAM,mCAGjB,IAAIgkB,EAAKjjB,SAASwH,cAAc,OAEhC,OADAyb,EAAG/P,UAAY,aAAc,EAAIxO,EAASoB,YAAY2C,GAAO,UACtDwa,EAAGzB,WAAW0uB,KAGtB,SAAS9lC,EAAW3B,GACnB,IAAIC,EAAOvG,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,GAE/E,OAAOsG,IAAQC,EAAO4E,EAAgB7E,GAAOC,EAG9C,SAASqnC,EAAgBrnC,GAExB,GAAoB,iBAATA,EACV,MAAM,IAAIzJ,MAAM,oCAGjB,OAAOyJ,GAAQA,EAAKP,QAAQ,MAAQ,EAAIO,EAAKynC,OAAO,EAAGznC,EAAKP,QAAQ,MAAQO,EAG7E,SAAS4E,EAAgB7E,GAExB,GAAmB,iBAARA,EACV,MAAM,IAAIxJ,MAAM,mCAGjB,IAAK,IAAIF,EAAI,EAAGyM,EAAQ+yB,EAAWj/B,OAAQP,EAAIyM,EAAOzM,IAAK,CAC1D,IAAI2J,EAAO61B,EAAWx/B,GAAG0J,GAEzB,GAAIC,EACH,OAAOA,EAIT,IACI0nC,EAAgBH,EADVD,EAAavnC,IAGnB4nC,EAAO,YAYX,OAVID,KACE,CAAC,MAAO,MAAO,MAAO,MAAO,OAAQ,MAAO,QAAQjoC,QAAQioC,GAChEC,EAAO,SAAWD,EACR,QAAUA,EACpBC,EAAO,mBACI,CAAC,MAAO,MAAO,MAAO,MAAO,QAAQloC,QAAQioC,KACxDC,EAAO,SAAWD,IAIbC,EAGR,SAASL,EAAavnC,GAErB,GAAmB,iBAARA,EACV,MAAM,IAAIxJ,MAAM,mCAGjB,IACIqxC,EADU7nC,EAAIyc,MAAM,KAAK,GACNA,MAAM,MAAMwgB,MAAMxgB,MAAM,KAAKwgB,MACpD,OAAQ4K,EAASnoC,QAAQ,KAAOmoC,EAASrjC,UAAUqjC,EAAS1qB,YAAY,KAAO,GAAK,GAGrF,SAASqqB,EAAmBM,GAE3B,GAAyB,iBAAdA,EACV,MAAM,IAAItxC,MAAM,yCAGjB,OAAQsxC,GACP,IAAK,MACL,IAAK,MACJ,MAAO,MACR,IAAK,OACL,IAAK,QACL,IAAK,QACJ,MAAO,OACR,IAAK,MACL,IAAK,MACL,IAAK,MACJ,MAAO,MACR,QACC,OAAOA,GAIVjsC,EAAOE,QAAQsX,MAAQxX,EAAOE,QAAQsX,OAAS,GAC/CxX,EAAOE,QAAQsX,MAAMyiB,WAAaA,EAClCj6B,EAAOE,QAAQsX,MAAMtO,cAAgBA,EACrClJ,EAAOE,QAAQsX,MAAM1R,WAAaA,EAClC9F,EAAOE,QAAQsX,MAAMi0B,gBAAkBA,EACvCzrC,EAAOE,QAAQsX,MAAMxO,gBAAkBA,EACvChJ,EAAOE,QAAQsX,MAAMk0B,aAAeA,EACpC1rC,EAAOE,QAAQsX,MAAMm0B,mBAAqBA,GAExC,CAAC,GAAK,GAAG,EAAI,IAAIO,GAAG,CAAC,SAAShxC,EAAQC,EAAOL,GAC/C,aAEA,IAmIWyD,EAjIPuD,EAAaD,EAFD3G,EAAQ,IAMpBixC,EAAoBtqC,EAFD3G,EAAQ,IAI/B,SAAS2G,EAAuBlC,GAAO,OAAOA,GAAOA,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GA+GvF,GA/FG,CAACysC,QAAQ/tC,UAAWguC,cAAchuC,UAAWiuC,aAAajuC,WAbxD4sC,SAAQ,SAAU1Z,GACjBA,EAAKlkB,eAAe,WAGxB5N,OAAOC,eAAe6xB,EAAM,SAAU,CACrC1lB,cAAc,EACdD,YAAY,EACZE,UAAU,EACV5N,MAAO,WACNvC,KAAKoI,WAAWwoC,YAAY5wC,YAMhC,WAEC,GAAkC,mBAAvBH,OAAO4vC,YACjB,OAAO,EAGR,SAASA,EAAYzjC,EAAO6kC,GAC3BA,EAASA,GAAU,CAAEC,SAAS,EAAOC,YAAY,EAAOvyB,YAAQzd,GAChE,IAAI85B,EAAM10B,EAAW5B,QAAQ0H,YAAY,eAEzC,OADA4uB,EAAImW,gBAAgBhlC,EAAO6kC,EAAOC,QAASD,EAAOE,WAAYF,EAAOryB,QAC9Dqc,EAGR4U,EAAY/sC,UAAY7C,OAAOoxC,MAAMvuC,UACrC7C,OAAO4vC,YAAcA,EAdtB,GAiB6B,mBAAlB3rC,OAAOuD,SACjBvD,OAAOuD,OAAS,SAAU0I,GAEzB,GAAIA,QACH,MAAM,IAAIpP,UAAU,8CAKrB,IAFA,IAAIuwC,EAAKptC,OAAOiM,GAEPvE,EAAQ,EAAGD,EAAQrJ,UAAU7C,OAAQmM,EAAQD,EAAOC,IAAS,CACrE,IAAI2lC,EAAajvC,UAAUsJ,GAE3B,GAAmB,OAAf2lC,EACH,IAAK,IAAIC,KAAWD,EACfrtC,OAAOpB,UAAUgP,eAAetS,KAAK+xC,EAAYC,KACpDF,EAAGE,GAAWD,EAAWC,IAK7B,OAAOF,IAIJG,OAAO3uC,UAAU2mB,aACrBgoB,OAAO3uC,UAAU2mB,WAAa,SAAUioB,EAAcC,GAErD,OADAA,EAAWA,GAAY,EAChBvxC,KAAKkwC,OAAOqB,EAAUD,EAAajyC,UAAYiyC,IAInDb,QAAQ/tC,UAAU4sB,UACtBmhB,QAAQ/tC,UAAU4sB,QAAUmhB,QAAQ/tC,UAAU8uC,iBAAmBf,QAAQ/tC,UAAU+uC,oBAAsBhB,QAAQ/tC,UAAUgvC,mBAAqBjB,QAAQ/tC,UAAUivC,kBAAoBlB,QAAQ/tC,UAAUkvC,uBAAyB,SAAUjzC,GAG1O,IAFA,IAAI2wB,GAAWtvB,KAAKD,UAAYC,KAAK25B,eAAe1jB,iBAAiBtX,GACjEG,EAAIwwB,EAAQjwB,OAAS,IAChBP,GAAK,GAAKwwB,EAAQsG,KAAK92B,KAAOkB,OACvC,OAAOlB,GAAK,IAIVe,OAAO4wC,UAAYA,QAAQ/tC,UAAUgb,UACxC+yB,QAAQ/tC,UAAUgb,QAAU,SAAU/e,GACrC,IAAI2wB,GAAWtvB,KAAKD,UAAYC,KAAK25B,eAAe1jB,iBAAiBtX,GACjEG,OAAI,EACJkkB,EAAKhjB,KACT,GAEC,IADAlB,EAAIwwB,EAAQjwB,SACHP,GAAK,GAAKwwB,EAAQsG,KAAK92B,KAAOkkB,WAC/BlkB,EAAI,IAAMkkB,EAAKA,EAAG5T,gBAC3B,OAAO4T,IAIT,WAGC,IAFA,IAAI6uB,EAAW,EACXC,EAAU,CAAC,KAAM,MAAO,SAAU,KAC7Bh3B,EAAI,EAAGA,EAAIg3B,EAAQzyC,SAAWQ,OAAOkuC,wBAAyBjzB,EACtEjb,OAAOkuC,sBAAwBluC,OAAOiyC,EAAQh3B,GAAK,yBACnDjb,OAAOkyC,qBAAuBlyC,OAAOiyC,EAAQh3B,GAAK,yBAA2Bjb,OAAOiyC,EAAQh3B,GAAK,+BAG7Fjb,OAAOkuC,wBAAuBluC,OAAOkuC,sBAAwB,SAAUp/B,GAC3E,IAAIqjC,GAAW,IAAIx1B,MAAO+nB,UACtB0N,EAAarqC,KAAKkR,IAAI,EAAG,IAAMk5B,EAAWH,IAC1CrqC,EAAK3H,OAAOU,YAAW,WAC1BoO,EAASqjC,EAAWC,KAClBA,GAEH,OADAJ,EAAWG,EAAWC,EACfzqC,IAGH3H,OAAOkyC,uBAAsBlyC,OAAOkyC,qBAAuB,SAAUvqC,GACzEmP,aAAanP,KAnBf,GAuBI,WAAWxC,KAAKilC,UAAUC,WAAY,CACzC,IAAIz1B,EAAmB5U,OAAO4U,iBAC9B5U,OAAO4U,iBAAmB,SAAUuO,EAAIkvB,GACvC,IAAI1zC,EAAIiW,EAAiBuO,EAAIkvB,GAC7B,OAAa,OAAN1zC,EAAa,CAAE2zC,iBAAkB,cAAmC3zC,GAIxEqB,OAAOY,UACXZ,OAAOY,QAAU+vC,EAAkBjsC,UAGzB3B,EAiBR/C,OAAOuyC,MAAQvyC,OAAO4wC,UAhBL7tC,EAAYF,WAAgD,OAAnCE,EAAYF,UAAUsH,UACjElG,OAAOC,eAAenB,EAAYF,UAAW,WAAY,CACxDiK,IAAK,WAKJ,IAJA,IAAI7N,EAAI,EACJoL,OAAO,EACPmoC,EAAQryC,KAAKsyC,WACbtoC,EAAW,GACRE,EAAOmoC,EAAMvzC,MACG,IAAlBoL,EAAKqoC,UACRvoC,EAASpI,KAAKsI,GAGhB,OAAOF,MAMT,CAAC,EAAI,EAAE,EAAI,IAAIwoC,GAAG,CAAC,SAASjzC,EAAQC,EAAOL,GAC7C,aAEA2E,OAAOC,eAAe5E,EAAS,aAAc,CAC5CoD,OAAO,IAERpD,EAAQszC,YAAcA,EACtBtzC,EAAQ8c,kBAAoBA,EAC5B9c,EAAQuzC,kBAAoBA,EAC5BvzC,EAAQo0B,oBAAsBA,EAC9Bp0B,EAAQ4uB,sBAAwBA,EAEhC,IAIgC/pB,EAJ5BI,EAAQ7E,EAAQ,GAEhB8E,GAE4BL,EAFII,IAEiBJ,EAAIM,WAAaN,EAAM,CAAEO,QAASP,GAEvF,SAASyuC,IACR,IAAIE,EAAMzwC,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,GAE9E,QAASywC,EAAM,GAAM,GAEtB,SAAS12B,EAAkB+B,GAC1B,IAAI40B,EAAa1wC,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,IAAmBA,UAAU,GAC5E2wC,EAAiB3wC,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,IAAmBA,UAAU,GAChFywC,EAAMzwC,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,GAC1Ema,EAAuBna,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,EAC3Foa,EAAapa,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,WAGrF8b,GAAQA,GAAwB,iBAATA,GAAqBA,EAAO,EAAI,EAAIA,EAE3D,IAAI80B,EAAalrC,KAAKwX,MAAY,QAANuzB,GACxBI,EAAWnrC,KAAKwX,MAAMuzB,GACtBK,EAA4C,GAAzBprC,KAAKwX,MAAY,KAANuzB,GAC9BM,EAAqBrrC,KAAKwX,MAAY,IAANuzB,GAChCO,EAAWT,EAAYE,GAAO,IAAM,IACpCQ,OAAQ,EACRC,OAAU,EACVt1B,OAAU,EACVu1B,OAAS,EACTt0C,EAAI6I,KAAKwX,MAAMpB,EAAO20B,GAE1B,GAAIF,EAAYE,GAAM,CAEjB5zC,EAAI,IACPA,EAAIi0C,EAAmBj0C,GAGxBA,GAAQi0C,EAER,IAAItsB,EAAI9e,KAAKuV,MAAMpe,EAAIk0C,GACnB1sB,EAAIxnB,EAAIk0C,EACZl0C,GAAqB,EAAb+zC,EAAiBpsB,EACrBH,EAAIusB,IACP/zC,GAAQ+zC,EAAalrC,KAAKuV,OAAOoJ,EAAIusB,GAAclrC,KAAKwX,MAAiB,GAAX2zB,EAAgBD,KAG/E,IAAIQ,EAAmB1rC,KAAKuV,MAAMpe,EAAIg0C,GAEtCI,EAAQvrC,KAAKuV,MAAMvV,KAAKuV,MAAMm2B,EAAmB,IAAM,IACvDF,EAAUxrC,KAAKuV,MAAMm2B,EAAmB,IAAM,GAG7Cx1B,EADG+0B,EACOS,EAAmB,GAEnB1rC,KAAKuV,MAAMpe,EAAIg0C,EAAW,IAAI13B,QAAQgB,QAGjD82B,EAAQvrC,KAAKuV,MAAMa,EAAO,MAAQ,GAClCo1B,EAAUxrC,KAAKuV,MAAMa,EAAO,IAAM,GAEjCF,EADG+0B,EACOjrC,KAAKuV,MAAMa,EAAO,IAElBpW,KAAKuV,MAAMa,EAAO,IAAI3C,QAAQgB,GAG1C82B,EAAQA,GAAS,EAAI,EAAIA,EAIzBr1B,EAAsB,MAFtBA,EAAUA,GAAW,EAAI,EAAIA,GAEF,EAAIA,EAC/Bs1B,EAAsB,MAJtBA,EAAUA,GAAW,EAAI,EAAIA,GAIF,EAAIA,EAI/B,IAFA,IAAIG,EAAkBj3B,EAAW2I,MAAM,KACnCuuB,EAAqB,GAChB10C,EAAI,EAAGyM,EAAQgoC,EAAgBl0C,OAAQP,EAAIyM,IAASzM,EAAG,CAE/D,IADA,IAAI20C,EAAS,GACJ3iC,EAAI,EAAGtS,EAAI+0C,EAAgBz0C,GAAGO,OAAQyR,EAAItS,EAAGsS,IACjD2iC,EAAOvrC,QAAQqrC,EAAgBz0C,GAAGgS,IAAM,IAC3C2iC,GAAUF,EAAgBz0C,GAAGgS,KAG1B,CAAC,IAAK,IAAK,IAAK,KAAK5I,QAAQurC,KACjCD,EAAmBC,GAAUF,EAAgBz0C,GAAGO,QAIlD,IAAIq0C,EAASd,GAAcO,EAAQ,GAAKA,EAAQ,IAAMK,EAAmBG,EAAI,EAAI,IAAMR,EAAQA,GAAS,IAAM,GAU9G,OATAO,IAAWN,EAAU,IAAMI,EAAmBjtB,EAAI,EAAI,IAAM6sB,EAAUA,GAAW,IACjFM,GAAU,IAAM51B,EAAU,IAAM01B,EAAmB70C,EAAI,EAAI,IAAMmf,EAAUA,GAEvE+0B,IAGHa,IADAL,GADAA,GAAUt0C,EAAIg0C,GAAU13B,QAAQ,KACb,EAAI,EAAIg4B,GACR,IAAMG,EAAmBz0C,EAAIm0C,EAAW,IAAMG,EAAS,GAAKH,EAAWG,GAGpFK,EAGR,SAAShB,EAAkB10B,GAC1B,IAAI20B,EAAMzwC,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,GAG9E,GAAoB,iBAAT8b,EACV,MAAM,IAAIrd,UAAU,yBAOrB,GAJIqd,EAAK9V,QAAQ,KAAO,IACvB8V,EAAOA,EAAKpY,QAAQ,IAAK,OAGrB,uBAAuBZ,KAAKgZ,GAChC,MAAM,IAAIrd,UAAU,6CAGrB,IAAIulC,EAAQloB,EAAKiH,MAAM,KAEnB2uB,OAAS,EACTT,EAAQ,EACRC,EAAU,EACVt1B,EAAU,EACVu1B,EAAS,EACTQ,EAAe,EACff,EAAalrC,KAAKwX,MAAY,QAANuzB,GACxBI,EAAWnrC,KAAKwX,MAAMuzB,GACtBmB,EAAqB,KAAXf,EACVgB,EAAqB,GAAXhB,EAEd,OAAQ7M,EAAM7mC,QACb,QACA,KAAK,EACJye,EAAUwB,SAAS4mB,EAAM,GAAI,IAC7B,MACD,KAAK,EACJkN,EAAU9zB,SAAS4mB,EAAM,GAAI,IAC7BpoB,EAAUwB,SAAS4mB,EAAM,GAAI,IAC7B,MACD,KAAK,EACJiN,EAAQ7zB,SAAS4mB,EAAM,GAAI,IAC3BkN,EAAU9zB,SAAS4mB,EAAM,GAAI,IAC7BpoB,EAAUwB,SAAS4mB,EAAM,GAAI,IAC7B,MACD,KAAK,EACJiN,EAAQ7zB,SAAS4mB,EAAM,GAAI,IAC3BkN,EAAU9zB,SAAS4mB,EAAM,GAAI,IAC7BpoB,EAAUwB,SAAS4mB,EAAM,GAAI,IAC7BmN,EAAS/zB,SAAS4mB,EAAM,GAAI,IAW9B,OALC0N,EAFGnB,EAAYE,GAENmB,EAAUX,EAAQY,EAAUX,EAAUL,EAAWj1B,EAAUu1B,EAASP,IAD7Ee,EAAe,GAAKV,EAAQC,GAC8ExrC,KAAKuV,MAAM02B,EAAe,MAE1HC,EAAUX,EAAQY,EAAUX,EAAUT,EAAM70B,EAAUu1B,GAAUV,EAGpEt9B,WAAWu+B,EAAOv4B,QAAQ,IAGlC,SAASkY,EAAoBvV,EAAMvX,GAClC,IAAIksC,EAAMzwC,UAAU7C,OAAS,QAAsB0B,IAAjBmB,UAAU,GAAmBA,UAAU,GAAK,GAG9E8b,GAAQA,GAAwB,iBAATA,GAAqBA,EAAO,EAAI,EAAIA,EAe3D,IAbA,IAAIm1B,EAAQvrC,KAAKuV,MAAMa,EAAO,MAAQ,GAClCo1B,EAAUxrC,KAAKuV,MAAMa,EAAO,IAAM,GAClCF,EAAUlW,KAAKuV,MAAMa,EAAO,IAC5Bq1B,EAASzrC,KAAKuV,OAAOa,EAAO,EAAI20B,GAAKt3B,QAAQ,IAC7C24B,EAAM,CAAC,CAACX,EAAQ,KAAM,CAACv1B,EAAS,KAAM,CAACs1B,EAAS,KAAM,CAACD,EAAO,MAE9Dc,EAASxtC,EAAQ6V,WACjB43B,EAAiBD,EAAO,KAAOA,EAAO,GACtCE,EAAiBD,EAAiB,EAAI,EACtCE,EAAYH,EAAO50C,OAAS80C,EAAiBF,EAAOE,GAAkB,IACtEE,EAAYJ,EAAO,GACnBK,GAAW,EAENx1C,EAAI,EAAGsD,EAAM4xC,EAAI30C,OAAQP,EAAIsD,EAAKtD,IAC1C,IAAKm1C,EAAO/rC,QAAQ8rC,EAAIl1C,GAAG,IAC1Bw1C,GAAW,OACL,GAAIA,EAAU,CAEpB,IADA,IAAIC,GAAe,EACVzjC,EAAIhS,EAAGgS,EAAI1O,EAAK0O,IACxB,GAAIkjC,EAAIljC,GAAG,GAAK,EAAG,CAClByjC,GAAe,EACf,MAIF,IAAKA,EACJ,MAGIL,IACJD,EAASI,EAAYJ,GAEtBA,EAASD,EAAIl1C,GAAG,GAAKs1C,EAAYH,EAC7BC,IACHD,EAASD,EAAIl1C,GAAG,GAAKm1C,GAEtBI,EAAYL,EAAIl1C,GAAG,GAIrB2H,EAAQ6V,WAAa23B,EAGtB,SAASlmB,EAAsBymB,GAE9B,GAAqB,iBAAVA,EACV,MAAM,IAAI7zC,UAAU,mCAYrB,IAPA,IAAI8zC,IAFJD,EAAQA,EAAM5uC,QAAQ,IAAK,MAEHsC,QAAQ,KAAOssC,EAAMvvB,MAAM,KAAK,GAAG5lB,OAAS,EAEhEq1C,EAAO,EACPC,EAAa,EAIR71C,EAAI,EAAGyM,GAFhBipC,EAAQA,EAAMvvB,MAAM,KAAK2vB,WAEKv1C,OAAQP,EAAIyM,EAAOzM,IAChD61C,EAAa,EACT71C,EAAI,IACP61C,EAAa/sC,KAAKitC,IAAI,GAAI/1C,IAE3B41C,GAAQI,OAAON,EAAM11C,IAAM61C,EAE5B,OAAOG,OAAOJ,EAAKr5B,QAAQo5B,IAG5BpwC,EAAOE,QAAQsX,MAAQxX,EAAOE,QAAQsX,OAAS,GAC/CxX,EAAOE,QAAQsX,MAAMI,kBAAoBA,EACzC5X,EAAOE,QAAQsX,MAAM62B,kBAAoBA,EACzCruC,EAAOE,QAAQsX,MAAM0X,oBAAsBA,EAC3ClvB,EAAOE,QAAQsX,MAAMkS,sBAAwBA,GAE3C,CAAC,EAAI,KAAK,GAAG,CAAC,GAAG,EAAE,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,O","file":"async_main_357f8768.dc63956c75681b023819.bundle.js","sourcesContent":["/*!\n * MediaElement.js\n * http://www.mediaelementjs.com/\n *\n * Wrapper that mimics native HTML5 MediaElement (audio and video)\n * using a variety of technologies (pure JavaScript, Flash, iframe)\n *\n * Copyright 2010-2017, John Dyer (http://j.hn/)\n * License: MIT\n *\n */(function(){function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n\n\tif (typeof message === 'string' && message.length) {\n\n\t\tvar str = void 0,\n\t\t pluralForm = void 0;\n\n\t\tvar language = i18n.language();\n\n\t\tvar _plural = function _plural(input, number, form) {\n\n\t\t\tif ((typeof input === 'undefined' ? 'undefined' : _typeof(input)) !== 'object' || typeof number !== 'number' || typeof form !== 'number') {\n\t\t\t\treturn input;\n\t\t\t}\n\n\t\t\tvar _pluralForms = function () {\n\t\t\t\treturn [function () {\n\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t}, function () {\n\t\t\t\t\treturn (arguments.length <= 0 ? undefined : arguments[0]) === 1 ? arguments.length <= 1 ? undefined : arguments[1] : arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t}, function () {\n\t\t\t\t\treturn (arguments.length <= 0 ? undefined : arguments[0]) === 0 || (arguments.length <= 0 ? undefined : arguments[0]) === 1 ? arguments.length <= 1 ? undefined : arguments[1] : arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) % 10 === 1 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 !== 11) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) !== 0) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1 || (arguments.length <= 0 ? undefined : arguments[0]) === 11) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 2 || (arguments.length <= 0 ? undefined : arguments[0]) === 12) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) > 2 && (arguments.length <= 0 ? undefined : arguments[0]) < 20) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 0 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 > 0 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 < 20) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) % 10 === 1 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 !== 11) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 10 >= 2 && ((arguments.length <= 0 ? undefined : arguments[0]) % 100 < 10 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 20)) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn [3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) % 10 === 1 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 !== 11) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 10 >= 2 && (arguments.length <= 0 ? undefined : arguments[0]) % 10 <= 4 && ((arguments.length <= 0 ? undefined : arguments[0]) % 100 < 10 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 20)) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) >= 2 && (arguments.length <= 0 ? undefined : arguments[0]) <= 4) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 10 >= 2 && (arguments.length <= 0 ? undefined : arguments[0]) % 10 <= 4 && ((arguments.length <= 0 ? undefined : arguments[0]) % 100 < 10 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 20)) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) % 100 === 1) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 100 === 2) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 100 === 3 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 === 4) {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 2) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) > 2 && (arguments.length <= 0 ? undefined : arguments[0]) < 7) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) > 6 && (arguments.length <= 0 ? undefined : arguments[0]) < 11) {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 5 ? undefined : arguments[5];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 0) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 2) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 3 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 <= 10) {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 11) {\n\t\t\t\t\t\treturn arguments.length <= 5 ? undefined : arguments[5];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 6 ? undefined : arguments[6];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 0 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 > 1 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 < 11) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 100 > 10 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 < 20) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) % 10 === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 10 === 2) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\treturn (arguments.length <= 0 ? undefined : arguments[0]) !== 11 && (arguments.length <= 0 ? undefined : arguments[0]) % 10 === 1 ? arguments.length <= 1 ? undefined : arguments[1] : arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 10 >= 2 && (arguments.length <= 0 ? undefined : arguments[0]) % 10 <= 4 && ((arguments.length <= 0 ? undefined : arguments[0]) % 100 < 10 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 20)) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 2) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) !== 8 && (arguments.length <= 0 ? undefined : arguments[0]) !== 11) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\treturn (arguments.length <= 0 ? undefined : arguments[0]) === 0 ? arguments.length <= 1 ? undefined : arguments[1] : arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 2) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 3) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 0) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}];\n\t\t\t}();\n\n\t\t\treturn _pluralForms[form].apply(null, [number].concat(input));\n\t\t};\n\n\t\tif (i18n[language] !== undefined) {\n\t\t\tstr = i18n[language][message];\n\t\t\tif (pluralParam !== null && typeof pluralParam === 'number') {\n\t\t\t\tpluralForm = i18n[language]['mejs.plural-form'];\n\t\t\t\tstr = _plural.apply(null, [str, pluralParam, pluralForm]);\n\t\t\t}\n\t\t}\n\n\t\tif (!str && i18n.en) {\n\t\t\tstr = i18n.en[message];\n\t\t\tif (pluralParam !== null && typeof pluralParam === 'number') {\n\t\t\t\tpluralForm = i18n.en['mejs.plural-form'];\n\t\t\t\tstr = _plural.apply(null, [str, pluralParam, pluralForm]);\n\t\t\t}\n\t\t}\n\n\t\tstr = str || message;\n\n\t\tif (pluralParam !== null && typeof pluralParam === 'number') {\n\t\t\tstr = str.replace('%1', pluralParam);\n\t\t}\n\n\t\treturn (0, _general.escapeHTML)(str);\n\t}\n\n\treturn message;\n};\n\n_mejs2.default.i18n = i18n;\n\nif (typeof mejsL10n !== 'undefined') {\n\t_mejs2.default.i18n.language(mejsL10n.language, mejsL10n.strings);\n}\n\nexports.default = i18n;\n\n},{\"15\":15,\"27\":27,\"7\":7}],6:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _general = _dereq_(27);\n\nvar _media2 = _dereq_(28);\n\nvar _renderer = _dereq_(8);\n\nvar _constants = _dereq_(25);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar MediaElement = function MediaElement(idOrNode, options, sources) {\n\tvar _this = this;\n\n\t_classCallCheck(this, MediaElement);\n\n\tvar t = this;\n\n\tsources = Array.isArray(sources) ? sources : null;\n\n\tt.defaults = {\n\t\trenderers: [],\n\n\t\tfakeNodeName: 'mediaelementwrapper',\n\n\t\tpluginPath: 'build/',\n\n\t\tshimScriptAccess: 'sameDomain'\n\t};\n\n\toptions = Object.assign(t.defaults, options);\n\n\tt.mediaElement = _document2.default.createElement(options.fakeNodeName);\n\n\tvar id = idOrNode,\n\t error = false;\n\n\tif (typeof idOrNode === 'string') {\n\t\tt.mediaElement.originalNode = _document2.default.getElementById(idOrNode);\n\t} else {\n\t\tt.mediaElement.originalNode = idOrNode;\n\t\tid = idOrNode.id;\n\t}\n\n\tif (t.mediaElement.originalNode === undefined || t.mediaElement.originalNode === null) {\n\t\treturn null;\n\t}\n\n\tt.mediaElement.options = options;\n\tid = id || 'mejs_' + Math.random().toString().slice(2);\n\n\tt.mediaElement.originalNode.setAttribute('id', id + '_from_mejs');\n\n\tvar tagName = t.mediaElement.originalNode.tagName.toLowerCase();\n\tif (['video', 'audio'].indexOf(tagName) > -1 && !t.mediaElement.originalNode.getAttribute('preload')) {\n\t\tt.mediaElement.originalNode.setAttribute('preload', 'none');\n\t}\n\n\tt.mediaElement.originalNode.parentNode.insertBefore(t.mediaElement, t.mediaElement.originalNode);\n\n\tt.mediaElement.appendChild(t.mediaElement.originalNode);\n\n\tvar processURL = function processURL(url, type) {\n\t\tif (_window2.default.location.protocol === 'https:' && url.indexOf('http:') === 0 && _constants.IS_IOS && _mejs2.default.html5media.mediaTypes.indexOf(type) > -1) {\n\t\t\tvar xhr = new XMLHttpRequest();\n\t\t\txhr.onreadystatechange = function () {\n\t\t\t\tif (this.readyState === 4 && this.status === 200) {\n\t\t\t\t\tvar _url = _window2.default.URL || _window2.default.webkitURL,\n\t\t\t\t\t blobUrl = _url.createObjectURL(this.response);\n\t\t\t\t\tt.mediaElement.originalNode.setAttribute('src', blobUrl);\n\t\t\t\t\treturn blobUrl;\n\t\t\t\t}\n\t\t\t\treturn url;\n\t\t\t};\n\t\t\txhr.open('GET', url);\n\t\t\txhr.responseType = 'blob';\n\t\t\txhr.send();\n\t\t}\n\n\t\treturn url;\n\t};\n\n\tvar mediaFiles = void 0;\n\n\tif (sources !== null) {\n\t\tmediaFiles = sources;\n\t} else if (t.mediaElement.originalNode !== null) {\n\n\t\tmediaFiles = [];\n\n\t\tswitch (t.mediaElement.originalNode.nodeName.toLowerCase()) {\n\t\t\tcase 'iframe':\n\t\t\t\tmediaFiles.push({\n\t\t\t\t\ttype: '',\n\t\t\t\t\tsrc: t.mediaElement.originalNode.getAttribute('src')\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\tcase 'audio':\n\t\t\tcase 'video':\n\t\t\t\tvar _sources = t.mediaElement.originalNode.children.length,\n\t\t\t\t nodeSource = t.mediaElement.originalNode.getAttribute('src');\n\n\t\t\t\tif (nodeSource) {\n\t\t\t\t\tvar node = t.mediaElement.originalNode,\n\t\t\t\t\t type = (0, _media2.formatType)(nodeSource, node.getAttribute('type'));\n\t\t\t\t\tmediaFiles.push({\n\t\t\t\t\t\ttype: type,\n\t\t\t\t\t\tsrc: processURL(nodeSource, type)\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tfor (var i = 0; i < _sources; i++) {\n\t\t\t\t\tvar n = t.mediaElement.originalNode.children[i];\n\t\t\t\t\tif (n.tagName.toLowerCase() === 'source') {\n\t\t\t\t\t\tvar src = n.getAttribute('src'),\n\t\t\t\t\t\t _type = (0, _media2.formatType)(src, n.getAttribute('type'));\n\t\t\t\t\t\tmediaFiles.push({ type: _type, src: processURL(src, _type) });\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tt.mediaElement.id = id;\n\tt.mediaElement.renderers = {};\n\tt.mediaElement.events = {};\n\tt.mediaElement.promises = [];\n\tt.mediaElement.renderer = null;\n\tt.mediaElement.rendererName = null;\n\n\tt.mediaElement.changeRenderer = function (rendererName, mediaFiles) {\n\n\t\tvar t = _this,\n\t\t media = Object.keys(mediaFiles[0]).length > 2 ? mediaFiles[0] : mediaFiles[0].src;\n\n\t\tif (t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null && t.mediaElement.renderer.name === rendererName) {\n\t\t\tt.mediaElement.renderer.pause();\n\t\t\tif (t.mediaElement.renderer.stop) {\n\t\t\t\tt.mediaElement.renderer.stop();\n\t\t\t}\n\t\t\tt.mediaElement.renderer.show();\n\t\t\tt.mediaElement.renderer.setSrc(media);\n\t\t\treturn true;\n\t\t}\n\n\t\tif (t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null) {\n\t\t\tt.mediaElement.renderer.pause();\n\t\t\tif (t.mediaElement.renderer.stop) {\n\t\t\t\tt.mediaElement.renderer.stop();\n\t\t\t}\n\t\t\tt.mediaElement.renderer.hide();\n\t\t}\n\n\t\tvar newRenderer = t.mediaElement.renderers[rendererName],\n\t\t newRendererType = null;\n\n\t\tif (newRenderer !== undefined && newRenderer !== null) {\n\t\t\tnewRenderer.show();\n\t\t\tnewRenderer.setSrc(media);\n\t\t\tt.mediaElement.renderer = newRenderer;\n\t\t\tt.mediaElement.rendererName = rendererName;\n\t\t\treturn true;\n\t\t}\n\n\t\tvar rendererArray = t.mediaElement.options.renderers.length ? t.mediaElement.options.renderers : _renderer.renderer.order;\n\n\t\tfor (var _i = 0, total = rendererArray.length; _i < total; _i++) {\n\t\t\tvar index = rendererArray[_i];\n\n\t\t\tif (index === rendererName) {\n\t\t\t\tvar rendererList = _renderer.renderer.renderers;\n\t\t\t\tnewRendererType = rendererList[index];\n\n\t\t\t\tvar renderOptions = Object.assign(newRendererType.options, t.mediaElement.options);\n\t\t\t\tnewRenderer = newRendererType.create(t.mediaElement, renderOptions, mediaFiles);\n\t\t\t\tnewRenderer.name = rendererName;\n\n\t\t\t\tt.mediaElement.renderers[newRendererType.name] = newRenderer;\n\t\t\t\tt.mediaElement.renderer = newRenderer;\n\t\t\t\tt.mediaElement.rendererName = rendererName;\n\t\t\t\tnewRenderer.show();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t};\n\n\tt.mediaElement.setSize = function (width, height) {\n\t\tif (t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null) {\n\t\t\tt.mediaElement.renderer.setSize(width, height);\n\t\t}\n\t};\n\n\tt.mediaElement.generateError = function (message, urlList) {\n\t\tmessage = message || '';\n\t\turlList = Array.isArray(urlList) ? urlList : [];\n\t\tvar event = (0, _general.createEvent)('error', t.mediaElement);\n\t\tevent.message = message;\n\t\tevent.urls = urlList;\n\t\tt.mediaElement.dispatchEvent(event);\n\t\terror = true;\n\t};\n\n\tvar props = _mejs2.default.html5media.properties,\n\t methods = _mejs2.default.html5media.methods,\n\t addProperty = function addProperty(obj, name, onGet, onSet) {\n\t\tvar oldValue = obj[name];\n\t\tvar getFn = function getFn() {\n\t\t\treturn onGet.apply(obj, [oldValue]);\n\t\t},\n\t\t setFn = function setFn(newValue) {\n\t\t\toldValue = onSet.apply(obj, [newValue]);\n\t\t\treturn oldValue;\n\t\t};\n\n\t\tObject.defineProperty(obj, name, {\n\t\t\tget: getFn,\n\t\t\tset: setFn\n\t\t});\n\t},\n\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\tif (propName !== 'src') {\n\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1),\n\t\t\t getFn = function getFn() {\n\t\t\t\treturn t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null && typeof t.mediaElement.renderer['get' + capName] === 'function' ? t.mediaElement.renderer['get' + capName]() : null;\n\t\t\t},\n\t\t\t setFn = function setFn(value) {\n\t\t\t\tif (t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null && typeof t.mediaElement.renderer['set' + capName] === 'function') {\n\t\t\t\t\tt.mediaElement.renderer['set' + capName](value);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\taddProperty(t.mediaElement, propName, getFn, setFn);\n\t\t\tt.mediaElement['get' + capName] = getFn;\n\t\t\tt.mediaElement['set' + capName] = setFn;\n\t\t}\n\t},\n\t getSrc = function getSrc() {\n\t\treturn t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null ? t.mediaElement.renderer.getSrc() : null;\n\t},\n\t setSrc = function setSrc(value) {\n\t\tvar mediaFiles = [];\n\n\t\tif (typeof value === 'string') {\n\t\t\tmediaFiles.push({\n\t\t\t\tsrc: value,\n\t\t\t\ttype: value ? (0, _media2.getTypeFromFile)(value) : ''\n\t\t\t});\n\t\t} else if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.src !== undefined) {\n\t\t\tvar _src = (0, _media2.absolutizeUrl)(value.src),\n\t\t\t _type2 = value.type,\n\t\t\t media = Object.assign(value, {\n\t\t\t\tsrc: _src,\n\t\t\t\ttype: (_type2 === '' || _type2 === null || _type2 === undefined) && _src ? (0, _media2.getTypeFromFile)(_src) : _type2\n\t\t\t});\n\t\t\tmediaFiles.push(media);\n\t\t} else if (Array.isArray(value)) {\n\t\t\tfor (var _i2 = 0, total = value.length; _i2 < total; _i2++) {\n\n\t\t\t\tvar _src2 = (0, _media2.absolutizeUrl)(value[_i2].src),\n\t\t\t\t _type3 = value[_i2].type,\n\t\t\t\t _media = Object.assign(value[_i2], {\n\t\t\t\t\tsrc: _src2,\n\t\t\t\t\ttype: (_type3 === '' || _type3 === null || _type3 === undefined) && _src2 ? (0, _media2.getTypeFromFile)(_src2) : _type3\n\t\t\t\t});\n\n\t\t\t\tmediaFiles.push(_media);\n\t\t\t}\n\t\t}\n\n\t\tvar renderInfo = _renderer.renderer.select(mediaFiles, t.mediaElement.options.renderers.length ? t.mediaElement.options.renderers : []),\n\t\t event = void 0;\n\n\t\tif (!t.mediaElement.paused && !(t.mediaElement.src == null || t.mediaElement.src === '')) {\n\t\t\tt.mediaElement.pause();\n\t\t\tevent = (0, _general.createEvent)('pause', t.mediaElement);\n\t\t\tt.mediaElement.dispatchEvent(event);\n\t\t}\n\t\tt.mediaElement.originalNode.src = mediaFiles[0].src || '';\n\n\t\tif (renderInfo === null && mediaFiles[0].src) {\n\t\t\tt.mediaElement.generateError('No renderer found', mediaFiles);\n\t\t\treturn;\n\t\t}\n\n\t\tvar shouldChangeRenderer = !(mediaFiles[0].src == null || mediaFiles[0].src === '');\n\t\treturn shouldChangeRenderer ? t.mediaElement.changeRenderer(renderInfo.rendererName, mediaFiles) : null;\n\t},\n\t triggerAction = function triggerAction(methodName, args) {\n\t\ttry {\n\t\t\tif (methodName === 'play' && (t.mediaElement.rendererName === 'native_dash' || t.mediaElement.rendererName === 'native_hls' || t.mediaElement.rendererName === 'vimeo_iframe')) {\n\t\t\t\tvar response = t.mediaElement.renderer[methodName](args);\n\t\t\t\tif (response && typeof response.then === 'function') {\n\t\t\t\t\tresponse.catch(function () {\n\t\t\t\t\t\tif (t.mediaElement.paused) {\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tvar tmpResponse = t.mediaElement.renderer.play();\n\t\t\t\t\t\t\t\tif (tmpResponse !== undefined) {\n\t\t\t\t\t\t\t\t\ttmpResponse.catch(function () {\n\t\t\t\t\t\t\t\t\t\tif (!t.mediaElement.renderer.paused) {\n\t\t\t\t\t\t\t\t\t\t\tt.mediaElement.renderer.pause();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}, 150);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn response;\n\t\t\t} else {\n\t\t\t\treturn t.mediaElement.renderer[methodName](args);\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tt.mediaElement.generateError(e, mediaFiles);\n\t\t\tthrow e;\n\t\t}\n\t},\n\t assignMethods = function assignMethods(methodName) {\n\t\tt.mediaElement[methodName] = function () {\n\t\t\tfor (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t\t\t\targs[_key] = arguments[_key];\n\t\t\t}\n\n\t\t\tif (t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null && typeof t.mediaElement.renderer[methodName] === 'function') {\n\t\t\t\tif (t.mediaElement.promises.length) {\n\t\t\t\t\treturn Promise.all(t.mediaElement.promises).then(function () {\n\t\t\t\t\t\treturn triggerAction(methodName, args);\n\t\t\t\t\t}).catch(function (e) {\n\t\t\t\t\t\tt.mediaElement.generateError(e, mediaFiles);\n\t\t\t\t\t\treturn Promise.reject(e);\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturn triggerAction(methodName, args);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn null;\n\t\t};\n\t};\n\n\taddProperty(t.mediaElement, 'src', getSrc, setSrc);\n\tt.mediaElement.getSrc = getSrc;\n\tt.mediaElement.setSrc = setSrc;\n\n\tfor (var _i3 = 0, total = props.length; _i3 < total; _i3++) {\n\t\tassignGettersSetters(props[_i3]);\n\t}\n\n\tfor (var _i4 = 0, _total = methods.length; _i4 < _total; _i4++) {\n\t\tassignMethods(methods[_i4]);\n\t}\n\n\tt.mediaElement.addEventListener = function (eventName, callback) {\n\t\tt.mediaElement.events[eventName] = t.mediaElement.events[eventName] || [];\n\n\t\tt.mediaElement.events[eventName].push(callback);\n\t};\n\tt.mediaElement.removeEventListener = function (eventName, callback) {\n\t\tif (!eventName) {\n\t\t\tt.mediaElement.events = {};\n\t\t\treturn true;\n\t\t}\n\n\t\tvar callbacks = t.mediaElement.events[eventName];\n\n\t\tif (!callbacks) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif (!callback) {\n\t\t\tt.mediaElement.events[eventName] = [];\n\t\t\treturn true;\n\t\t}\n\n\t\tfor (var _i5 = 0; _i5 < callbacks.length; _i5++) {\n\t\t\tif (callbacks[_i5] === callback) {\n\t\t\t\tt.mediaElement.events[eventName].splice(_i5, 1);\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t};\n\n\tt.mediaElement.dispatchEvent = function (event) {\n\t\tvar callbacks = t.mediaElement.events[event.type];\n\t\tif (callbacks) {\n\t\t\tfor (var _i6 = 0; _i6 < callbacks.length; _i6++) {\n\t\t\t\tcallbacks[_i6].apply(null, [event]);\n\t\t\t}\n\t\t}\n\t};\n\n\tt.mediaElement.destroy = function () {\n\t\tvar mediaElement = t.mediaElement.originalNode.cloneNode(true);\n\t\tvar wrapper = t.mediaElement.parentElement;\n\t\tmediaElement.removeAttribute('id');\n\t\tmediaElement.remove();\n\t\tt.mediaElement.remove();\n\t\twrapper.appendChild(mediaElement);\n\t};\n\n\tif (mediaFiles.length) {\n\t\tt.mediaElement.src = mediaFiles;\n\t}\n\n\tif (t.mediaElement.promises.length) {\n\t\tPromise.all(t.mediaElement.promises).then(function () {\n\t\t\tif (t.mediaElement.options.success) {\n\t\t\t\tt.mediaElement.options.success(t.mediaElement, t.mediaElement.originalNode);\n\t\t\t}\n\t\t}).catch(function () {\n\t\t\tif (error && t.mediaElement.options.error) {\n\t\t\t\tt.mediaElement.options.error(t.mediaElement, t.mediaElement.originalNode);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tif (t.mediaElement.options.success) {\n\t\t\tt.mediaElement.options.success(t.mediaElement, t.mediaElement.originalNode);\n\t\t}\n\n\t\tif (error && t.mediaElement.options.error) {\n\t\t\tt.mediaElement.options.error(t.mediaElement, t.mediaElement.originalNode);\n\t\t}\n\t}\n\n\treturn t.mediaElement;\n};\n\n_window2.default.MediaElement = MediaElement;\n_mejs2.default.MediaElement = MediaElement;\n\nexports.default = MediaElement;\n\n},{\"2\":2,\"25\":25,\"27\":27,\"28\":28,\"3\":3,\"7\":7,\"8\":8}],7:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar mejs = {};\n\nmejs.version = '4.2.17';\n\nmejs.html5media = {\n\tproperties: ['volume', 'src', 'currentTime', 'muted', 'duration', 'paused', 'ended', 'buffered', 'error', 'networkState', 'readyState', 'seeking', 'seekable', 'currentSrc', 'preload', 'bufferedBytes', 'bufferedTime', 'initialTime', 'startOffsetTime', 'defaultPlaybackRate', 'playbackRate', 'played', 'autoplay', 'loop', 'controls'],\n\treadOnlyProperties: ['duration', 'paused', 'ended', 'buffered', 'error', 'networkState', 'readyState', 'seeking', 'seekable'],\n\n\tmethods: ['load', 'play', 'pause', 'canPlayType'],\n\n\tevents: ['loadstart', 'durationchange', 'loadedmetadata', 'loadeddata', 'progress', 'canplay', 'canplaythrough', 'suspend', 'abort', 'error', 'emptied', 'stalled', 'play', 'playing', 'pause', 'waiting', 'seeking', 'seeked', 'timeupdate', 'ended', 'ratechange', 'volumechange'],\n\n\tmediaTypes: ['audio/mp3', 'audio/ogg', 'audio/oga', 'audio/wav', 'audio/x-wav', 'audio/wave', 'audio/x-pn-wav', 'audio/mpeg', 'audio/mp4', 'video/mp4', 'video/webm', 'video/ogg', 'video/ogv']\n};\n\n_window2.default.mejs = mejs;\n\nexports.default = mejs;\n\n},{\"3\":3}],8:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.renderer = undefined;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Renderer = function () {\n\tfunction Renderer() {\n\t\t_classCallCheck(this, Renderer);\n\n\t\tthis.renderers = {};\n\t\tthis.order = [];\n\t}\n\n\t_createClass(Renderer, [{\n\t\tkey: 'add',\n\t\tvalue: function add(renderer) {\n\t\t\tif (renderer.name === undefined) {\n\t\t\t\tthrow new TypeError('renderer must contain at least `name` property');\n\t\t\t}\n\n\t\t\tthis.renderers[renderer.name] = renderer;\n\t\t\tthis.order.push(renderer.name);\n\t\t}\n\t}, {\n\t\tkey: 'select',\n\t\tvalue: function select(mediaFiles) {\n\t\t\tvar renderers = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n\n\t\t\tvar renderersLength = renderers.length;\n\n\t\t\trenderers = renderers.length ? renderers : this.order;\n\n\t\t\tif (!renderersLength) {\n\t\t\t\tvar rendererIndicator = [/^(html5|native)/i, /^flash/i, /iframe$/i],\n\t\t\t\t rendererRanking = function rendererRanking(renderer) {\n\t\t\t\t\tfor (var i = 0, total = rendererIndicator.length; i < total; i++) {\n\t\t\t\t\t\tif (rendererIndicator[i].test(renderer)) {\n\t\t\t\t\t\t\treturn i;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn rendererIndicator.length;\n\t\t\t\t};\n\n\t\t\t\trenderers.sort(function (a, b) {\n\t\t\t\t\treturn rendererRanking(a) - rendererRanking(b);\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tfor (var i = 0, total = renderers.length; i < total; i++) {\n\t\t\t\tvar key = renderers[i],\n\t\t\t\t _renderer = this.renderers[key];\n\n\t\t\t\tif (_renderer !== null && _renderer !== undefined) {\n\t\t\t\t\tfor (var j = 0, jl = mediaFiles.length; j < jl; j++) {\n\t\t\t\t\t\tif (typeof _renderer.canPlayType === 'function' && typeof mediaFiles[j].type === 'string' && _renderer.canPlayType(mediaFiles[j].type)) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\trendererName: _renderer.name,\n\t\t\t\t\t\t\t\tsrc: mediaFiles[j].src\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn null;\n\t\t}\n\t}, {\n\t\tkey: 'order',\n\t\tset: function set(order) {\n\t\t\tif (!Array.isArray(order)) {\n\t\t\t\tthrow new TypeError('order must be an array of strings.');\n\t\t\t}\n\n\t\t\tthis._order = order;\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this._order;\n\t\t}\n\t}, {\n\t\tkey: 'renderers',\n\t\tset: function set(renderers) {\n\t\t\tif (renderers !== null && (typeof renderers === 'undefined' ? 'undefined' : _typeof(renderers)) !== 'object') {\n\t\t\t\tthrow new TypeError('renderers must be an array of objects.');\n\t\t\t}\n\n\t\t\tthis._renderers = renderers;\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this._renderers;\n\t\t}\n\t}]);\n\n\treturn Renderer;\n}();\n\nvar renderer = exports.renderer = new Renderer();\n\n_mejs2.default.Renderers = renderer;\n\n},{\"7\":7}],9:[function(_dereq_,module,exports){\n'use strict';\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _constants = _dereq_(25);\n\nvar Features = _interopRequireWildcard(_constants);\n\nvar _general = _dereq_(27);\n\nvar _dom = _dereq_(26);\n\nvar _media = _dereq_(28);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tusePluginFullScreen: true,\n\n\tfullscreenText: null,\n\n\tuseFakeFullscreen: false\n});\n\nObject.assign(_player2.default.prototype, {\n\tisFullScreen: false,\n\n\tisNativeFullScreen: false,\n\n\tisInIframe: false,\n\n\tisPluginClickThroughCreated: false,\n\n\tfullscreenMode: '',\n\n\tcontainerSizeTimeout: null,\n\n\tbuildfullscreen: function buildfullscreen(player) {\n\t\tif (!player.isVideo) {\n\t\t\treturn;\n\t\t}\n\n\t\tplayer.isInIframe = _window2.default.location !== _window2.default.parent.location;\n\n\t\tplayer.detectFullscreenMode();\n\n\t\tvar t = this,\n\t\t fullscreenTitle = (0, _general.isString)(t.options.fullscreenText) ? t.options.fullscreenText : _i18n2.default.t('mejs.fullscreen'),\n\t\t fullscreenBtn = _document2.default.createElement('div');\n\n\t\tfullscreenBtn.className = t.options.classPrefix + 'button ' + t.options.classPrefix + 'fullscreen-button';\n\t\tfullscreenBtn.innerHTML = '';\n\t\tt.addControlElement(fullscreenBtn, 'fullscreen');\n\n\t\tfullscreenBtn.addEventListener('click', function () {\n\t\t\tvar isFullScreen = Features.HAS_TRUE_NATIVE_FULLSCREEN && Features.IS_FULLSCREEN || player.isFullScreen;\n\n\t\t\tif (isFullScreen) {\n\t\t\t\tplayer.exitFullScreen();\n\t\t\t} else {\n\t\t\t\tplayer.enterFullScreen();\n\t\t\t}\n\t\t});\n\n\t\tplayer.fullscreenBtn = fullscreenBtn;\n\n\t\tt.options.keyActions.push({\n\t\t\tkeys: [70],\n\t\t\taction: function action(player, media, key, event) {\n\t\t\t\tif (!event.ctrlKey) {\n\t\t\t\t\tif (typeof player.enterFullScreen !== 'undefined') {\n\t\t\t\t\t\tif (player.isFullScreen) {\n\t\t\t\t\t\t\tplayer.exitFullScreen();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tplayer.enterFullScreen();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tt.exitFullscreenCallback = function (e) {\n\t\t\tvar key = e.which || e.keyCode || 0;\n\t\t\tif (t.options.enableKeyboard && key === 27 && (Features.HAS_TRUE_NATIVE_FULLSCREEN && Features.IS_FULLSCREEN || t.isFullScreen)) {\n\t\t\t\tplayer.exitFullScreen();\n\t\t\t}\n\t\t};\n\n\t\tt.globalBind('keydown', t.exitFullscreenCallback);\n\n\t\tt.normalHeight = 0;\n\t\tt.normalWidth = 0;\n\n\t\tif (Features.HAS_TRUE_NATIVE_FULLSCREEN) {\n\t\t\tvar fullscreenChanged = function fullscreenChanged() {\n\t\t\t\tif (player.isFullScreen) {\n\t\t\t\t\tif (Features.isFullScreen()) {\n\t\t\t\t\t\tplayer.isNativeFullScreen = true;\n\n\t\t\t\t\t\tplayer.setControlsSize();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tplayer.isNativeFullScreen = false;\n\n\t\t\t\t\t\tplayer.exitFullScreen();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tplayer.globalBind(Features.FULLSCREEN_EVENT_NAME, fullscreenChanged);\n\t\t}\n\t},\n\tcleanfullscreen: function cleanfullscreen(player) {\n\t\tplayer.exitFullScreen();\n\t\tplayer.globalUnbind('keydown', player.exitFullscreenCallback);\n\t},\n\tdetectFullscreenMode: function detectFullscreenMode() {\n\t\tvar t = this,\n\t\t isNative = t.media.rendererName !== null && /(native|html5)/i.test(t.media.rendererName);\n\n\t\tvar mode = '';\n\n\t\tif (Features.HAS_TRUE_NATIVE_FULLSCREEN && isNative) {\n\t\t\tmode = 'native-native';\n\t\t} else if (Features.HAS_TRUE_NATIVE_FULLSCREEN && !isNative) {\n\t\t\tmode = 'plugin-native';\n\t\t} else if (t.usePluginFullScreen && Features.SUPPORT_POINTER_EVENTS) {\n\t\t\tmode = 'plugin-click';\n\t\t}\n\n\t\tt.fullscreenMode = mode;\n\t\treturn mode;\n\t},\n\tenterFullScreen: function enterFullScreen() {\n\t\tvar t = this,\n\t\t isNative = t.media.rendererName !== null && /(html5|native)/i.test(t.media.rendererName),\n\t\t containerStyles = getComputedStyle(t.getElement(t.container));\n\n\t\tif (!t.isVideo) {\n\t\t\treturn;\n\t\t}\n\n\t\tt.getElement(t.container).dispatchEvent((0, _general.createEvent)('enteringfullscreen', t.getElement(t.container)));\n\n\t\tif (t.options.useFakeFullscreen === false && (Features.IS_IOS || Features.IS_SAFARI) && Features.HAS_IOS_FULLSCREEN && typeof t.media.originalNode.webkitEnterFullscreen === 'function' && t.media.originalNode.canPlayType((0, _media.getTypeFromFile)(t.media.getSrc()))) {\n\t\t\tt.media.originalNode.webkitEnterFullscreen();\n\t\t\treturn;\n\t\t}\n\n\t\tif (Features.IS_ANDROID) {\n\t\t\tvar myVideo = t.media.originalNode;\n\t\t\tif (typeof myVideo.webkitEnterFullscreen != \"undefined\") {\n\t\t\t\tmyVideo.webkitEnterFullscreen();\n\t\t\t\treturn;\n\t\t\t} else if (typeof myVideo.webkitRequestFullscreen != \"undefined\") {\n\t\t\t\tmyVideo.webkitRequestFullscreen();\n\t\t\t\treturn;\n\t\t\t} else if (typeof myVideo.mozRequestFullScreen != \"undefined\") {\n\t\t\t\tmyVideo.mozRequestFullScreen();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\t(0, _dom.addClass)(_document2.default.documentElement, t.options.classPrefix + 'fullscreen');\n\t\t(0, _dom.addClass)(t.getElement(t.container), t.options.classPrefix + 'container-fullscreen');\n\n\t\tt.normalHeight = parseFloat(containerStyles.height);\n\t\tt.normalWidth = parseFloat(containerStyles.width);\n\n\t\tif (t.fullscreenMode === 'native-native' || t.fullscreenMode === 'plugin-native') {\n\t\t\tFeatures.requestFullScreen(t.getElement(t.container));\n\n\t\t\tif (t.isInIframe) {\n\t\t\t\tsetTimeout(function checkFullscreen() {\n\n\t\t\t\t\tif (t.isNativeFullScreen) {\n\t\t\t\t\t\tvar percentErrorMargin = 0.002,\n\t\t\t\t\t\t windowWidth = _window2.default.innerWidth || _document2.default.documentElement.clientWidth || _document2.default.body.clientWidth,\n\t\t\t\t\t\t screenWidth = screen.width,\n\t\t\t\t\t\t absDiff = Math.abs(screenWidth - windowWidth),\n\t\t\t\t\t\t marginError = screenWidth * percentErrorMargin;\n\n\t\t\t\t\t\tif (absDiff > marginError) {\n\t\t\t\t\t\t\tt.exitFullScreen();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tsetTimeout(checkFullscreen, 500);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}, 1000);\n\t\t\t}\n\t\t}\n\n\t\tt.getElement(t.container).style.width = '100%';\n\t\tt.getElement(t.container).style.height = '100%';\n\n\t\tt.containerSizeTimeout = setTimeout(function () {\n\t\t\tt.getElement(t.container).style.width = '100%';\n\t\t\tt.getElement(t.container).style.height = '100%';\n\t\t\tt.setControlsSize();\n\t\t}, 500);\n\n\t\tif (isNative) {\n\t\t\tt.node.style.width = '100%';\n\t\t\tt.node.style.height = '100%';\n\t\t} else {\n\t\t\tvar elements = t.getElement(t.container).querySelectorAll('embed, object, video'),\n\t\t\t _total = elements.length;\n\t\t\tfor (var i = 0; i < _total; i++) {\n\t\t\t\telements[i].style.width = '100%';\n\t\t\t\telements[i].style.height = '100%';\n\t\t\t}\n\t\t}\n\n\t\tif (t.options.setDimensions && typeof t.media.setSize === 'function') {\n\t\t\tt.media.setSize(screen.width, screen.height);\n\t\t}\n\n\t\tvar layers = t.getElement(t.layers).children,\n\t\t total = layers.length;\n\t\tfor (var _i = 0; _i < total; _i++) {\n\t\t\tlayers[_i].style.width = '100%';\n\t\t\tlayers[_i].style.height = '100%';\n\t\t}\n\n\t\tif (t.fullscreenBtn) {\n\t\t\t(0, _dom.removeClass)(t.fullscreenBtn, t.options.classPrefix + 'fullscreen');\n\t\t\t(0, _dom.addClass)(t.fullscreenBtn, t.options.classPrefix + 'unfullscreen');\n\t\t}\n\n\t\tt.setControlsSize();\n\t\tt.isFullScreen = true;\n\n\t\tvar zoomFactor = Math.min(screen.width / t.width, screen.height / t.height),\n\t\t captionText = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'captions-text');\n\t\tif (captionText) {\n\t\t\tcaptionText.style.fontSize = zoomFactor * 50 + '%';\n\t\t\tcaptionText.style.lineHeight = 'normal';\n\t\t}\n\t\tvar event = (0, _general.createEvent)('enteredfullscreen', t.getElement(t.container));\n\t\tt.getElement(t.container).dispatchEvent(event);\n\t},\n\texitFullScreen: function exitFullScreen() {\n\t\tvar t = this,\n\t\t isNative = t.media.rendererName !== null && /(native|html5)/i.test(t.media.rendererName);\n\n\t\tif (!t.isVideo) {\n\t\t\treturn;\n\t\t}\n\n\t\tclearTimeout(t.containerSizeTimeout);\n\n\t\tif (Features.HAS_TRUE_NATIVE_FULLSCREEN && (Features.IS_FULLSCREEN || t.isFullScreen)) {\n\t\t\tFeatures.cancelFullScreen();\n\t\t}\n\n\t\t(0, _dom.removeClass)(_document2.default.documentElement, t.options.classPrefix + 'fullscreen');\n\t\t(0, _dom.removeClass)(t.getElement(t.container), t.options.classPrefix + 'container-fullscreen');\n\n\t\tif (t.options.setDimensions) {\n\t\t\tt.getElement(t.container).style.width = t.normalWidth + 'px';\n\t\t\tt.getElement(t.container).style.height = t.normalHeight + 'px';\n\n\t\t\tif (isNative) {\n\t\t\t\tt.node.style.width = t.normalWidth + 'px';\n\t\t\t\tt.node.style.height = t.normalHeight + 'px';\n\t\t\t} else {\n\t\t\t\tvar elements = t.getElement(t.container).querySelectorAll('embed, object, video'),\n\t\t\t\t _total2 = elements.length;\n\t\t\t\tfor (var i = 0; i < _total2; i++) {\n\t\t\t\t\telements[i].style.width = t.normalWidth + 'px';\n\t\t\t\t\telements[i].style.height = t.normalHeight + 'px';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (typeof t.media.setSize === 'function') {\n\t\t\t\tt.media.setSize(t.normalWidth, t.normalHeight);\n\t\t\t}\n\n\t\t\tvar layers = t.getElement(t.layers).children,\n\t\t\t total = layers.length;\n\t\t\tfor (var _i2 = 0; _i2 < total; _i2++) {\n\t\t\t\tlayers[_i2].style.width = t.normalWidth + 'px';\n\t\t\t\tlayers[_i2].style.height = t.normalHeight + 'px';\n\t\t\t}\n\t\t}\n\n\t\tif (t.fullscreenBtn) {\n\t\t\t(0, _dom.removeClass)(t.fullscreenBtn, t.options.classPrefix + 'unfullscreen');\n\t\t\t(0, _dom.addClass)(t.fullscreenBtn, t.options.classPrefix + 'fullscreen');\n\t\t}\n\n\t\tt.setControlsSize();\n\t\tt.isFullScreen = false;\n\n\t\tvar captionText = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'captions-text');\n\t\tif (captionText) {\n\t\t\tcaptionText.style.fontSize = '';\n\t\t\tcaptionText.style.lineHeight = '';\n\t\t\tt.getElement(t.container).querySelector('.' + t.options.classPrefix + 'captions-position').style.bottom = '';\n\t\t}\n\t\tvar event = (0, _general.createEvent)('exitedfullscreen', t.getElement(t.container));\n\t\tt.getElement(t.container).dispatchEvent(event);\n\t}\n});\n\n},{\"16\":16,\"2\":2,\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"5\":5}],10:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _general = _dereq_(27);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tplayText: null,\n\n\tpauseText: null\n});\n\nObject.assign(_player2.default.prototype, {\n\tbuildplaypause: function buildplaypause(player, controls, layers, media) {\n\t\tvar t = this,\n\t\t op = t.options,\n\t\t playTitle = (0, _general.isString)(op.playText) ? op.playText : _i18n2.default.t('mejs.play'),\n\t\t pauseTitle = (0, _general.isString)(op.pauseText) ? op.pauseText : _i18n2.default.t('mejs.pause'),\n\t\t play = _document2.default.createElement('div');\n\n\t\tplay.className = t.options.classPrefix + 'button ' + t.options.classPrefix + 'playpause-button ' + t.options.classPrefix + 'play';\n\t\tplay.innerHTML = '';\n\t\tplay.addEventListener('click', function () {\n\t\t\tif (t.paused) {\n\t\t\t\tt.play();\n\t\t\t} else {\n\t\t\t\tt.pause();\n\t\t\t}\n\t\t});\n\n\t\tvar playBtn = play.querySelector('button');\n\t\tt.addControlElement(play, 'playpause');\n\n\t\tfunction togglePlayPause(which) {\n\t\t\tif ('play' === which) {\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'play');\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'replay');\n\t\t\t\t(0, _dom.addClass)(play, t.options.classPrefix + 'pause');\n\t\t\t\tplayBtn.setAttribute('title', pauseTitle);\n\t\t\t\tplayBtn.setAttribute('aria-label', pauseTitle);\n\t\t\t} else {\n\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'pause');\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'replay');\n\t\t\t\t(0, _dom.addClass)(play, t.options.classPrefix + 'play');\n\t\t\t\tplayBtn.setAttribute('title', playTitle);\n\t\t\t\tplayBtn.setAttribute('aria-label', playTitle);\n\t\t\t}\n\t\t}\n\n\t\ttogglePlayPause('pse');\n\n\t\tmedia.addEventListener('loadedmetadata', function () {\n\t\t\tif (media.rendererName.indexOf('flash') === -1) {\n\t\t\t\ttogglePlayPause('pse');\n\t\t\t}\n\t\t});\n\t\tmedia.addEventListener('play', function () {\n\t\t\ttogglePlayPause('play');\n\t\t});\n\t\tmedia.addEventListener('playing', function () {\n\t\t\ttogglePlayPause('play');\n\t\t});\n\t\tmedia.addEventListener('pause', function () {\n\t\t\ttogglePlayPause('pse');\n\t\t});\n\t\tmedia.addEventListener('ended', function () {\n\t\t\tif (!player.options.loop) {\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'pause');\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'play');\n\t\t\t\t(0, _dom.addClass)(play, t.options.classPrefix + 'replay');\n\t\t\t\tplayBtn.setAttribute('title', playTitle);\n\t\t\t\tplayBtn.setAttribute('aria-label', playTitle);\n\t\t\t}\n\t\t});\n\t}\n});\n\n},{\"16\":16,\"2\":2,\"26\":26,\"27\":27,\"5\":5}],11:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _constants = _dereq_(25);\n\nvar _time = _dereq_(30);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tenableProgressTooltip: true,\n\n\tuseSmoothHover: true,\n\n\tforceLive: false\n});\n\nObject.assign(_player2.default.prototype, {\n\tbuildprogress: function buildprogress(player, controls, layers, media) {\n\n\t\tvar lastKeyPressTime = 0,\n\t\t mouseIsDown = false,\n\t\t startedPaused = false;\n\n\t\tvar t = this,\n\t\t autoRewindInitial = player.options.autoRewind,\n\t\t tooltip = player.options.enableProgressTooltip ? '' + ('00:00') + ('') + '' : '',\n\t\t rail = _document2.default.createElement('div');\n\n\t\trail.className = t.options.classPrefix + 'time-rail';\n\t\trail.innerHTML = '' + ('') + ('') + ('') + ('') + ('') + ('' + tooltip) + '';\n\n\t\tt.addControlElement(rail, 'progress');\n\n\t\tt.options.keyActions.push({\n\t\t\tkeys: [37, 227],\n\t\t\taction: function action(player) {\n\t\t\t\tif (!isNaN(player.duration) && player.duration > 0) {\n\t\t\t\t\tif (player.isVideo) {\n\t\t\t\t\t\tplayer.showControls();\n\t\t\t\t\t\tplayer.startControlsTimer();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar timeSlider = player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'time-total');\n\t\t\t\t\tif (timeSlider) {\n\t\t\t\t\t\ttimeSlider.focus();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar newTime = Math.max(player.currentTime - player.options.defaultSeekBackwardInterval(player), 0);\n\n\t\t\t\t\tif (!player.paused) {\n\t\t\t\t\t\tplayer.pause();\n\t\t\t\t\t}\n\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tplayer.setCurrentTime(newTime);\n\t\t\t\t\t}, 0);\n\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tplayer.play();\n\t\t\t\t\t}, 0);\n\t\t\t\t}\n\t\t\t}\n\t\t}, {\n\t\t\tkeys: [39, 228],\n\t\t\taction: function action(player) {\n\n\t\t\t\tif (!isNaN(player.duration) && player.duration > 0) {\n\t\t\t\t\tif (player.isVideo) {\n\t\t\t\t\t\tplayer.showControls();\n\t\t\t\t\t\tplayer.startControlsTimer();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar timeSlider = player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'time-total');\n\t\t\t\t\tif (timeSlider) {\n\t\t\t\t\t\ttimeSlider.focus();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar newTime = Math.min(player.currentTime + player.options.defaultSeekForwardInterval(player), player.duration);\n\n\t\t\t\t\tif (!player.paused) {\n\t\t\t\t\t\tplayer.pause();\n\t\t\t\t\t}\n\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tplayer.setCurrentTime(newTime);\n\t\t\t\t\t}, 0);\n\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tplayer.play();\n\t\t\t\t\t}, 0);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tt.rail = controls.querySelector('.' + t.options.classPrefix + 'time-rail');\n\t\tt.total = controls.querySelector('.' + t.options.classPrefix + 'time-total');\n\t\tt.loaded = controls.querySelector('.' + t.options.classPrefix + 'time-loaded');\n\t\tt.current = controls.querySelector('.' + t.options.classPrefix + 'time-current');\n\t\tt.handle = controls.querySelector('.' + t.options.classPrefix + 'time-handle');\n\t\tt.timefloat = controls.querySelector('.' + t.options.classPrefix + 'time-float');\n\t\tt.timefloatcurrent = controls.querySelector('.' + t.options.classPrefix + 'time-float-current');\n\t\tt.slider = controls.querySelector('.' + t.options.classPrefix + 'time-slider');\n\t\tt.hovered = controls.querySelector('.' + t.options.classPrefix + 'time-hovered');\n\t\tt.buffer = controls.querySelector('.' + t.options.classPrefix + 'time-buffering');\n\t\tt.newTime = 0;\n\t\tt.forcedHandlePause = false;\n\t\tt.setTransformStyle = function (element, value) {\n\t\t\telement.style.transform = value;\n\t\t\telement.style.webkitTransform = value;\n\t\t\telement.style.MozTransform = value;\n\t\t\telement.style.msTransform = value;\n\t\t\telement.style.OTransform = value;\n\t\t};\n\n\t\tt.buffer.style.display = 'none';\n\n\t\tvar handleMouseMove = function handleMouseMove(e) {\n\t\t\tvar totalStyles = getComputedStyle(t.total),\n\t\t\t offsetStyles = (0, _dom.offset)(t.total),\n\t\t\t width = t.total.offsetWidth,\n\t\t\t transform = function () {\n\t\t\t\tif (totalStyles.webkitTransform !== undefined) {\n\t\t\t\t\treturn 'webkitTransform';\n\t\t\t\t} else if (totalStyles.mozTransform !== undefined) {\n\t\t\t\t\treturn 'mozTransform ';\n\t\t\t\t} else if (totalStyles.oTransform !== undefined) {\n\t\t\t\t\treturn 'oTransform';\n\t\t\t\t} else if (totalStyles.msTransform !== undefined) {\n\t\t\t\t\treturn 'msTransform';\n\t\t\t\t} else {\n\t\t\t\t\treturn 'transform';\n\t\t\t\t}\n\t\t\t}(),\n\t\t\t cssMatrix = function () {\n\t\t\t\tif ('WebKitCSSMatrix' in window) {\n\t\t\t\t\treturn 'WebKitCSSMatrix';\n\t\t\t\t} else if ('MSCSSMatrix' in window) {\n\t\t\t\t\treturn 'MSCSSMatrix';\n\t\t\t\t} else if ('CSSMatrix' in window) {\n\t\t\t\t\treturn 'CSSMatrix';\n\t\t\t\t}\n\t\t\t}();\n\n\t\t\tvar percentage = 0,\n\t\t\t leftPos = 0,\n\t\t\t pos = 0,\n\t\t\t x = void 0;\n\n\t\t\tif (e.originalEvent && e.originalEvent.changedTouches) {\n\t\t\t\tx = e.originalEvent.changedTouches[0].pageX;\n\t\t\t} else if (e.changedTouches) {\n\t\t\t\tx = e.changedTouches[0].pageX;\n\t\t\t} else {\n\t\t\t\tx = e.pageX;\n\t\t\t}\n\n\t\t\tif (t.getDuration()) {\n\t\t\t\tif (x < offsetStyles.left) {\n\t\t\t\t\tx = offsetStyles.left;\n\t\t\t\t} else if (x > width + offsetStyles.left) {\n\t\t\t\t\tx = width + offsetStyles.left;\n\t\t\t\t}\n\n\t\t\t\tpos = x - offsetStyles.left;\n\t\t\t\tpercentage = pos / width;\n\t\t\t\tt.newTime = percentage * t.getDuration();\n\n\t\t\t\tif (mouseIsDown && t.getCurrentTime() !== null && t.newTime.toFixed(4) !== t.getCurrentTime().toFixed(4)) {\n\t\t\t\t\tt.setCurrentRailHandle(t.newTime);\n\t\t\t\t\tt.updateCurrent(t.newTime);\n\t\t\t\t}\n\n\t\t\t\tif (!_constants.IS_IOS && !_constants.IS_ANDROID) {\n\t\t\t\t\tif (pos < 0) {\n\t\t\t\t\t\tpos = 0;\n\t\t\t\t\t}\n\t\t\t\t\tif (t.options.useSmoothHover && cssMatrix !== null && typeof window[cssMatrix] !== 'undefined') {\n\t\t\t\t\t\tvar matrix = new window[cssMatrix](getComputedStyle(t.handle)[transform]),\n\t\t\t\t\t\t handleLocation = matrix.m41,\n\t\t\t\t\t\t hoverScaleX = pos / parseFloat(getComputedStyle(t.total).width) - handleLocation / parseFloat(getComputedStyle(t.total).width);\n\n\t\t\t\t\t\tt.hovered.style.left = handleLocation + 'px';\n\t\t\t\t\t\tt.setTransformStyle(t.hovered, 'scaleX(' + hoverScaleX + ')');\n\t\t\t\t\t\tt.hovered.setAttribute('pos', pos);\n\n\t\t\t\t\t\tif (hoverScaleX >= 0) {\n\t\t\t\t\t\t\t(0, _dom.removeClass)(t.hovered, 'negative');\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t(0, _dom.addClass)(t.hovered, 'negative');\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.timefloat) {\n\t\t\t\t\t\tvar half = t.timefloat.offsetWidth / 2,\n\t\t\t\t\t\t offsetContainer = mejs.Utils.offset(t.getElement(t.container)),\n\t\t\t\t\t\t tooltipStyles = getComputedStyle(t.timefloat);\n\n\t\t\t\t\t\tif (x - offsetContainer.left < t.timefloat.offsetWidth) {\n\t\t\t\t\t\t\tleftPos = half;\n\t\t\t\t\t\t} else if (x - offsetContainer.left >= t.getElement(t.container).offsetWidth - half) {\n\t\t\t\t\t\t\tleftPos = t.total.offsetWidth - half;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tleftPos = pos;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ((0, _dom.hasClass)(t.getElement(t.container), t.options.classPrefix + 'long-video')) {\n\t\t\t\t\t\t\tleftPos += parseFloat(tooltipStyles.marginLeft) / 2 + t.timefloat.offsetWidth / 2;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tt.timefloat.style.left = leftPos + 'px';\n\t\t\t\t\t\tt.timefloatcurrent.innerHTML = (0, _time.secondsToTimeCode)(t.newTime, player.options.alwaysShowHours, player.options.showTimecodeFrameCount, player.options.framesPerSecond, player.options.secondsDecimalLength, player.options.timeFormat);\n\t\t\t\t\t\tt.timefloat.style.display = 'block';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (!_constants.IS_IOS && !_constants.IS_ANDROID && t.timefloat) {\n\t\t\t\tleftPos = t.timefloat.offsetWidth + width >= t.getElement(t.container).offsetWidth ? t.timefloat.offsetWidth / 2 : 0;\n\t\t\t\tt.timefloat.style.left = leftPos + 'px';\n\t\t\t\tt.timefloat.style.left = leftPos + 'px';\n\t\t\t\tt.timefloat.style.display = 'block';\n\t\t\t}\n\t\t},\n\t\t updateSlider = function updateSlider() {\n\t\t\tvar seconds = t.getCurrentTime(),\n\t\t\t timeSliderText = _i18n2.default.t('mejs.time-slider'),\n\t\t\t time = (0, _time.secondsToTimeCode)(seconds, player.options.alwaysShowHours, player.options.showTimecodeFrameCount, player.options.framesPerSecond, player.options.secondsDecimalLength, player.options.timeFormat),\n\t\t\t duration = t.getDuration();\n\n\t\t\tt.slider.setAttribute('role', 'slider');\n\t\t\tt.slider.tabIndex = 0;\n\n\t\t\tif (media.paused) {\n\t\t\t\tt.slider.setAttribute('aria-label', timeSliderText);\n\t\t\t\tt.slider.setAttribute('aria-valuemin', 0);\n\t\t\t\tt.slider.setAttribute('aria-valuemax', isNaN(duration) ? 0 : duration);\n\t\t\t\tt.slider.setAttribute('aria-valuenow', seconds);\n\t\t\t\tt.slider.setAttribute('aria-valuetext', time);\n\t\t\t} else {\n\t\t\t\tt.slider.removeAttribute('aria-label');\n\t\t\t\tt.slider.removeAttribute('aria-valuemin');\n\t\t\t\tt.slider.removeAttribute('aria-valuemax');\n\t\t\t\tt.slider.removeAttribute('aria-valuenow');\n\t\t\t\tt.slider.removeAttribute('aria-valuetext');\n\t\t\t}\n\t\t},\n\t\t restartPlayer = function restartPlayer() {\n\t\t\tif (new Date() - lastKeyPressTime >= 1000) {\n\t\t\t\tt.play();\n\t\t\t}\n\t\t},\n\t\t handleMouseup = function handleMouseup() {\n\t\t\tif (mouseIsDown && t.getCurrentTime() !== null && t.newTime.toFixed(4) !== t.getCurrentTime().toFixed(4)) {\n\t\t\t\tt.setCurrentTime(t.newTime);\n\t\t\t\tt.setCurrentRailHandle(t.newTime);\n\t\t\t\tt.updateCurrent(t.newTime);\n\t\t\t}\n\t\t\tif (t.forcedHandlePause) {\n\t\t\t\tt.slider.focus();\n\t\t\t\tt.play();\n\t\t\t}\n\t\t\tt.forcedHandlePause = false;\n\t\t};\n\n\t\tt.slider.addEventListener('focus', function () {\n\t\t\tplayer.options.autoRewind = false;\n\t\t});\n\t\tt.slider.addEventListener('blur', function () {\n\t\t\tplayer.options.autoRewind = autoRewindInitial;\n\t\t});\n\t\tt.slider.addEventListener('keydown', function (e) {\n\t\t\tif (new Date() - lastKeyPressTime >= 1000) {\n\t\t\t\tstartedPaused = t.paused;\n\t\t\t}\n\n\t\t\tif (t.options.enableKeyboard && t.options.keyActions.length) {\n\n\t\t\t\tvar keyCode = e.which || e.keyCode || 0,\n\t\t\t\t duration = t.getDuration(),\n\t\t\t\t seekForward = player.options.defaultSeekForwardInterval(media),\n\t\t\t\t seekBackward = player.options.defaultSeekBackwardInterval(media);\n\n\t\t\t\tvar seekTime = t.getCurrentTime();\n\t\t\t\tvar volume = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'volume-slider');\n\n\t\t\t\tif (keyCode === 38 || keyCode === 40) {\n\t\t\t\t\tif (volume) {\n\t\t\t\t\t\tvolume.style.display = 'block';\n\t\t\t\t\t}\n\t\t\t\t\tif (t.isVideo) {\n\t\t\t\t\t\tt.showControls();\n\t\t\t\t\t\tt.startControlsTimer();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar newVolume = keyCode === 38 ? Math.min(t.volume + 0.1, 1) : Math.max(t.volume - 0.1, 0),\n\t\t\t\t\t mutePlayer = newVolume <= 0;\n\t\t\t\t\tt.setVolume(newVolume);\n\t\t\t\t\tt.setMuted(mutePlayer);\n\t\t\t\t\treturn;\n\t\t\t\t} else {\n\t\t\t\t\tif (volume) {\n\t\t\t\t\t\tvolume.style.display = 'none';\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tswitch (keyCode) {\n\t\t\t\t\tcase 37:\n\t\t\t\t\t\tif (t.getDuration() !== Infinity) {\n\t\t\t\t\t\t\tseekTime -= seekBackward;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 39:\n\t\t\t\t\t\tif (t.getDuration() !== Infinity) {\n\t\t\t\t\t\t\tseekTime += seekForward;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 36:\n\t\t\t\t\t\tseekTime = 0;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 35:\n\t\t\t\t\t\tseekTime = duration;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 13:\n\t\t\t\t\tcase 32:\n\t\t\t\t\t\tif (_constants.IS_FIREFOX) {\n\t\t\t\t\t\t\tif (t.paused) {\n\t\t\t\t\t\t\t\tt.play();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tt.pause();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tseekTime = seekTime < 0 || isNaN(seekTime) ? 0 : seekTime >= duration ? duration : Math.floor(seekTime);\n\t\t\t\tlastKeyPressTime = new Date();\n\t\t\t\tif (!startedPaused) {\n\t\t\t\t\tplayer.pause();\n\t\t\t\t}\n\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tt.setCurrentTime(seekTime);\n\t\t\t\t}, 0);\n\n\t\t\t\tif (seekTime < t.getDuration() && !startedPaused) {\n\t\t\t\t\tsetTimeout(restartPlayer, 1100);\n\t\t\t\t}\n\n\t\t\t\tplayer.showControls();\n\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopPropagation();\n\t\t\t}\n\t\t});\n\n\t\tvar events = ['mousedown', 'touchstart'];\n\n\t\tt.slider.addEventListener('dragstart', function () {\n\t\t\treturn false;\n\t\t});\n\n\t\tfor (var i = 0, total = events.length; i < total; i++) {\n\t\t\tt.slider.addEventListener(events[i], function (e) {\n\t\t\t\tt.forcedHandlePause = false;\n\t\t\t\tif (t.getDuration() !== Infinity && t.newTime < player.proxy.getOriginalDuration()) {\n\t\t\t\t\tif (e.which === 1 || e.which === 0) {\n\t\t\t\t\t\tif (!t.paused) {\n\t\t\t\t\t\t\tt.pause();\n\t\t\t\t\t\t\tt.forcedHandlePause = true;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tmouseIsDown = true;\n\t\t\t\t\t\thandleMouseMove(e);\n\t\t\t\t\t\tvar endEvents = ['mouseup', 'touchend'];\n\n\t\t\t\t\t\tfor (var j = 0, totalEvents = endEvents.length; j < totalEvents; j++) {\n\t\t\t\t\t\t\tt.getElement(t.container).addEventListener(endEvents[j], function (event) {\n\t\t\t\t\t\t\t\tvar target = event.target;\n\t\t\t\t\t\t\t\tif (target === t.slider || target.closest('.' + t.options.classPrefix + 'time-slider')) {\n\t\t\t\t\t\t\t\t\thandleMouseMove(event);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t\tt.globalBind('mouseup.dur touchend.dur', function () {\n\t\t\t\t\t\t\thandleMouseup();\n\t\t\t\t\t\t\tmouseIsDown = false;\n\t\t\t\t\t\t\tif (t.timefloat) {\n\t\t\t\t\t\t\t\tt.timefloat.style.display = 'none';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, _constants.SUPPORT_PASSIVE_EVENT && events[i] === 'touchstart' ? { passive: true } : false);\n\t\t}\n\t\tt.slider.addEventListener('mouseenter', function (e) {\n\t\t\tif (e.target === t.slider && t.getDuration() !== Infinity) {\n\t\t\t\tt.getElement(t.container).addEventListener('mousemove', function (event) {\n\t\t\t\t\tvar target = event.target;\n\t\t\t\t\tif (target === t.slider || target.closest('.' + t.options.classPrefix + 'time-slider')) {\n\t\t\t\t\t\thandleMouseMove(event);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif (t.timefloat && !_constants.IS_IOS && !_constants.IS_ANDROID) {\n\t\t\t\t\tt.timefloat.style.display = 'block';\n\t\t\t\t}\n\t\t\t\tif (t.hovered && !_constants.IS_IOS && !_constants.IS_ANDROID && t.options.useSmoothHover) {\n\t\t\t\t\t(0, _dom.removeClass)(t.hovered, 'no-hover');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tt.slider.addEventListener('mouseleave', function () {\n\t\t\tif (t.getDuration() !== Infinity) {\n\t\t\t\tif (!mouseIsDown) {\n\t\t\t\t\tif (t.timefloat) {\n\t\t\t\t\t\tt.timefloat.style.display = 'none';\n\t\t\t\t\t}\n\t\t\t\t\tif (t.hovered && t.options.useSmoothHover) {\n\t\t\t\t\t\t(0, _dom.addClass)(t.hovered, 'no-hover');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tt.broadcastCallback = function (e) {\n\t\t\tvar broadcast = controls.querySelector('.' + t.options.classPrefix + 'broadcast');\n\t\t\tif (!t.options.forceLive && t.getDuration() !== Infinity) {\n\t\t\t\tif (broadcast) {\n\t\t\t\t\tt.slider.style.display = '';\n\t\t\t\t\tbroadcast.remove();\n\t\t\t\t}\n\n\t\t\t\tplayer.setProgressRail(e);\n\t\t\t\tif (!t.forcedHandlePause) {\n\t\t\t\t\tplayer.setCurrentRail(e);\n\t\t\t\t}\n\t\t\t\tupdateSlider();\n\t\t\t} else if (!broadcast && t.options.forceLive) {\n\t\t\t\tvar label = _document2.default.createElement('span');\n\t\t\t\tlabel.className = t.options.classPrefix + 'broadcast';\n\t\t\t\tlabel.innerText = _i18n2.default.t('mejs.live-broadcast');\n\t\t\t\tt.slider.style.display = 'none';\n\t\t\t\tt.rail.appendChild(label);\n\t\t\t}\n\t\t};\n\n\t\tmedia.addEventListener('progress', t.broadcastCallback);\n\t\tmedia.addEventListener('timeupdate', t.broadcastCallback);\n\t\tmedia.addEventListener('play', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\t\tmedia.addEventListener('playing', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\t\tmedia.addEventListener('seeking', function () {\n\t\t\tt.buffer.style.display = '';\n\t\t});\n\t\tmedia.addEventListener('seeked', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\t\tmedia.addEventListener('pause', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\t\tmedia.addEventListener('waiting', function () {\n\t\t\tt.buffer.style.display = '';\n\t\t});\n\t\tmedia.addEventListener('loadeddata', function () {\n\t\t\tt.buffer.style.display = '';\n\t\t});\n\t\tmedia.addEventListener('canplay', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\t\tmedia.addEventListener('error', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\n\t\tt.getElement(t.container).addEventListener('controlsresize', function (e) {\n\t\t\tif (t.getDuration() !== Infinity) {\n\t\t\t\tplayer.setProgressRail(e);\n\t\t\t\tif (!t.forcedHandlePause) {\n\t\t\t\t\tplayer.setCurrentRail(e);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t},\n\tcleanprogress: function cleanprogress(player, controls, layers, media) {\n\t\tmedia.removeEventListener('progress', player.broadcastCallback);\n\t\tmedia.removeEventListener('timeupdate', player.broadcastCallback);\n\t\tif (player.rail) {\n\t\t\tplayer.rail.remove();\n\t\t}\n\t},\n\tsetProgressRail: function setProgressRail(e) {\n\t\tvar t = this,\n\t\t target = e !== undefined ? e.detail.target || e.target : t.media;\n\n\t\tvar percent = null;\n\n\t\tif (target && target.buffered && target.buffered.length > 0 && target.buffered.end && t.getDuration()) {\n\t\t\tpercent = target.buffered.end(target.buffered.length - 1) / t.getDuration();\n\t\t} else if (target && target.bytesTotal !== undefined && target.bytesTotal > 0 && target.bufferedBytes !== undefined) {\n\t\t\t\tpercent = target.bufferedBytes / target.bytesTotal;\n\t\t\t} else if (e && e.lengthComputable && e.total !== 0) {\n\t\t\t\t\tpercent = e.loaded / e.total;\n\t\t\t\t}\n\n\t\tif (percent !== null) {\n\t\t\tpercent = Math.min(1, Math.max(0, percent));\n\n\t\t\tif (t.loaded) {\n\t\t\t\tt.setTransformStyle(t.loaded, 'scaleX(' + percent + ')');\n\t\t\t}\n\t\t}\n\t},\n\tsetCurrentRailHandle: function setCurrentRailHandle(fakeTime) {\n\t\tvar t = this;\n\t\tt.setCurrentRailMain(t, fakeTime);\n\t},\n\tsetCurrentRail: function setCurrentRail() {\n\t\tvar t = this;\n\t\tt.setCurrentRailMain(t);\n\t},\n\tsetCurrentRailMain: function setCurrentRailMain(t, fakeTime) {\n\t\tif (t.getCurrentTime() !== undefined && t.getDuration()) {\n\t\t\tvar nTime = typeof fakeTime === 'undefined' ? t.getCurrentTime() : fakeTime;\n\n\t\t\tif (t.total && t.handle) {\n\t\t\t\tvar tW = parseFloat(getComputedStyle(t.total).width);\n\n\t\t\t\tvar newWidth = Math.round(tW * nTime / t.getDuration()),\n\t\t\t\t handlePos = newWidth - Math.round(t.handle.offsetWidth / 2);\n\n\t\t\t\thandlePos = handlePos < 0 ? 0 : handlePos;\n\t\t\t\tt.setTransformStyle(t.current, 'scaleX(' + newWidth / tW + ')');\n\t\t\t\tt.setTransformStyle(t.handle, 'translateX(' + handlePos + 'px)');\n\n\t\t\t\tif (t.options.useSmoothHover && !(0, _dom.hasClass)(t.hovered, 'no-hover')) {\n\t\t\t\t\tvar pos = parseInt(t.hovered.getAttribute('pos'), 10);\n\t\t\t\t\tpos = isNaN(pos) ? 0 : pos;\n\n\t\t\t\t\tvar hoverScaleX = pos / tW - handlePos / tW;\n\n\t\t\t\t\tt.hovered.style.left = handlePos + 'px';\n\t\t\t\t\tt.setTransformStyle(t.hovered, 'scaleX(' + hoverScaleX + ')');\n\n\t\t\t\t\tif (hoverScaleX >= 0) {\n\t\t\t\t\t\t(0, _dom.removeClass)(t.hovered, 'negative');\n\t\t\t\t\t} else {\n\t\t\t\t\t\t(0, _dom.addClass)(t.hovered, 'negative');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\n\n},{\"16\":16,\"2\":2,\"25\":25,\"26\":26,\"30\":30,\"5\":5}],12:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _time = _dereq_(30);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tduration: 0,\n\n\ttimeAndDurationSeparator: ' | '\n});\n\nObject.assign(_player2.default.prototype, {\n\tbuildcurrent: function buildcurrent(player, controls, layers, media) {\n\t\tvar t = this,\n\t\t time = _document2.default.createElement('div');\n\n\t\ttime.className = t.options.classPrefix + 'time';\n\t\ttime.setAttribute('role', 'timer');\n\t\ttime.setAttribute('aria-live', 'off');\n\t\ttime.innerHTML = '' + (0, _time.secondsToTimeCode)(0, player.options.alwaysShowHours, player.options.showTimecodeFrameCount, player.options.framesPerSecond, player.options.secondsDecimalLength, player.options.timeFormat) + '';\n\n\t\tt.addControlElement(time, 'current');\n\t\tplayer.updateCurrent();\n\t\tt.updateTimeCallback = function () {\n\t\t\tif (t.controlsAreVisible) {\n\t\t\t\tplayer.updateCurrent();\n\t\t\t}\n\t\t};\n\t\tmedia.addEventListener('timeupdate', t.updateTimeCallback);\n\t},\n\tcleancurrent: function cleancurrent(player, controls, layers, media) {\n\t\tmedia.removeEventListener('timeupdate', player.updateTimeCallback);\n\t},\n\tbuildduration: function buildduration(player, controls, layers, media) {\n\t\tvar t = this,\n\t\t currTime = controls.lastChild.querySelector('.' + t.options.classPrefix + 'currenttime');\n\n\t\tif (currTime) {\n\t\t\tcontrols.querySelector('.' + t.options.classPrefix + 'time').innerHTML += t.options.timeAndDurationSeparator + '' + ((0, _time.secondsToTimeCode)(t.options.duration, t.options.alwaysShowHours, t.options.showTimecodeFrameCount, t.options.framesPerSecond, t.options.secondsDecimalLength, t.options.timeFormat) + '');\n\t\t} else {\n\t\t\tif (controls.querySelector('.' + t.options.classPrefix + 'currenttime')) {\n\t\t\t\t(0, _dom.addClass)(controls.querySelector('.' + t.options.classPrefix + 'currenttime').parentNode, t.options.classPrefix + 'currenttime-container');\n\t\t\t}\n\n\t\t\tvar duration = _document2.default.createElement('div');\n\t\t\tduration.className = t.options.classPrefix + 'time ' + t.options.classPrefix + 'duration-container';\n\t\t\tduration.innerHTML = '' + ((0, _time.secondsToTimeCode)(t.options.duration, t.options.alwaysShowHours, t.options.showTimecodeFrameCount, t.options.framesPerSecond, t.options.secondsDecimalLength, t.options.timeFormat) + '');\n\n\t\t\tt.addControlElement(duration, 'duration');\n\t\t}\n\n\t\tt.updateDurationCallback = function () {\n\t\t\tif (t.controlsAreVisible) {\n\t\t\t\tplayer.updateDuration();\n\t\t\t}\n\t\t};\n\n\t\tmedia.addEventListener('timeupdate', t.updateDurationCallback);\n\t},\n\tcleanduration: function cleanduration(player, controls, layers, media) {\n\t\tmedia.removeEventListener('timeupdate', player.updateDurationCallback);\n\t},\n\tupdateCurrent: function updateCurrent() {\n\t\tvar t = this;\n\n\t\tvar currentTime = t.getCurrentTime();\n\n\t\tif (isNaN(currentTime)) {\n\t\t\tcurrentTime = 0;\n\t\t}\n\n\t\tvar timecode = (0, _time.secondsToTimeCode)(currentTime, t.options.alwaysShowHours, t.options.showTimecodeFrameCount, t.options.framesPerSecond, t.options.secondsDecimalLength, t.options.timeFormat);\n\n\t\tif (timecode.length > 5) {\n\t\t\t(0, _dom.addClass)(t.getElement(t.container), t.options.classPrefix + 'long-video');\n\t\t} else {\n\t\t\t(0, _dom.removeClass)(t.getElement(t.container), t.options.classPrefix + 'long-video');\n\t\t}\n\n\t\tif (t.getElement(t.controls).querySelector('.' + t.options.classPrefix + 'currenttime')) {\n\t\t\tt.getElement(t.controls).querySelector('.' + t.options.classPrefix + 'currenttime').innerText = timecode;\n\t\t}\n\t},\n\tupdateDuration: function updateDuration() {\n\t\tvar t = this;\n\n\t\tvar duration = t.getDuration();\n\n\t\tif (t.media !== undefined && (isNaN(duration) || duration === Infinity || duration < 0)) {\n\t\t\tt.media.duration = t.options.duration = duration = 0;\n\t\t}\n\n\t\tif (t.options.duration > 0) {\n\t\t\tduration = t.options.duration;\n\t\t}\n\n\t\tvar timecode = (0, _time.secondsToTimeCode)(duration, t.options.alwaysShowHours, t.options.showTimecodeFrameCount, t.options.framesPerSecond, t.options.secondsDecimalLength, t.options.timeFormat);\n\n\t\tif (timecode.length > 5) {\n\t\t\t(0, _dom.addClass)(t.getElement(t.container), t.options.classPrefix + 'long-video');\n\t\t} else {\n\t\t\t(0, _dom.removeClass)(t.getElement(t.container), t.options.classPrefix + 'long-video');\n\t\t}\n\n\t\tif (t.getElement(t.controls).querySelector('.' + t.options.classPrefix + 'duration') && duration > 0) {\n\t\t\tt.getElement(t.controls).querySelector('.' + t.options.classPrefix + 'duration').innerHTML = timecode;\n\t\t}\n\t}\n});\n\n},{\"16\":16,\"2\":2,\"26\":26,\"30\":30}],13:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _time = _dereq_(30);\n\nvar _general = _dereq_(27);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tstartLanguage: '',\n\n\ttracksText: null,\n\n\tchaptersText: null,\n\n\ttracksAriaLive: false,\n\n\thideCaptionsButtonWhenEmpty: true,\n\n\ttoggleCaptionsButtonWhenOnlyOne: false,\n\n\tslidesSelector: ''\n});\n\nObject.assign(_player2.default.prototype, {\n\thasChapters: false,\n\n\tbuildtracks: function buildtracks(player, controls, layers, media) {\n\n\t\tthis.findTracks();\n\n\t\tif (!player.tracks.length && (!player.trackFiles || !player.trackFiles.length === 0)) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar t = this,\n\t\t attr = t.options.tracksAriaLive ? ' role=\"log\" aria-live=\"assertive\" aria-atomic=\"false\"' : '',\n\t\t tracksTitle = (0, _general.isString)(t.options.tracksText) ? t.options.tracksText : _i18n2.default.t('mejs.captions-subtitles'),\n\t\t chaptersTitle = (0, _general.isString)(t.options.chaptersText) ? t.options.chaptersText : _i18n2.default.t('mejs.captions-chapters'),\n\t\t total = player.trackFiles === null ? player.tracks.length : player.trackFiles.length;\n\n\t\tif (t.domNode.textTracks) {\n\t\t\tfor (var i = t.domNode.textTracks.length - 1; i >= 0; i--) {\n\t\t\t\tt.domNode.textTracks[i].mode = 'hidden';\n\t\t\t}\n\t\t}\n\n\t\tt.cleartracks(player);\n\n\t\tplayer.captions = _document2.default.createElement('div');\n\t\tplayer.captions.className = t.options.classPrefix + 'captions-layer ' + t.options.classPrefix + 'layer';\n\t\tplayer.captions.innerHTML = '
    ' + ('') + '
    ';\n\t\tplayer.captions.style.display = 'none';\n\t\tlayers.insertBefore(player.captions, layers.firstChild);\n\n\t\tplayer.captionsText = player.captions.querySelector('.' + t.options.classPrefix + 'captions-text');\n\n\t\tplayer.captionsButton = _document2.default.createElement('div');\n\t\tplayer.captionsButton.className = t.options.classPrefix + 'button ' + t.options.classPrefix + 'captions-button';\n\t\tplayer.captionsButton.innerHTML = '' + ('
    ') + ('
      ') + ('
    • ') + ('' + ('') + '
    • ' + '
    ' + '
    ';\n\n\t\tt.addControlElement(player.captionsButton, 'tracks');\n\n\t\tplayer.captionsButton.querySelector('.' + t.options.classPrefix + 'captions-selector-input').disabled = false;\n\n\t\tplayer.chaptersButton = _document2.default.createElement('div');\n\t\tplayer.chaptersButton.className = t.options.classPrefix + 'button ' + t.options.classPrefix + 'chapters-button';\n\t\tplayer.chaptersButton.innerHTML = '' + ('
    ') + ('
      ') + '
      ';\n\n\t\tvar subtitleCount = 0;\n\n\t\tfor (var _i = 0; _i < total; _i++) {\n\t\t\tvar kind = player.tracks[_i].kind,\n\t\t\t src = player.tracks[_i].src;\n\t\t\tif (src.trim()) {\n\t\t\t\tif (kind === 'subtitles' || kind === 'captions') {\n\t\t\t\t\tsubtitleCount++;\n\t\t\t\t} else if (kind === 'chapters' && !controls.querySelector('.' + t.options.classPrefix + 'chapter-selector')) {\n\t\t\t\t\tplayer.captionsButton.parentNode.insertBefore(player.chaptersButton, player.captionsButton);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tplayer.trackToLoad = -1;\n\t\tplayer.selectedTrack = null;\n\t\tplayer.isLoadingTrack = false;\n\n\t\tfor (var _i2 = 0; _i2 < total; _i2++) {\n\t\t\tvar _kind = player.tracks[_i2].kind;\n\t\t\tif (player.tracks[_i2].src.trim() && (_kind === 'subtitles' || _kind === 'captions')) {\n\t\t\t\tplayer.addTrackButton(player.tracks[_i2].trackId, player.tracks[_i2].srclang, player.tracks[_i2].label);\n\t\t\t}\n\t\t}\n\n\t\tplayer.loadNextTrack();\n\n\t\tvar inEvents = ['mouseenter', 'focusin'],\n\t\t outEvents = ['mouseleave', 'focusout'];\n\n\t\tif (t.options.toggleCaptionsButtonWhenOnlyOne && subtitleCount === 1) {\n\t\t\tplayer.captionsButton.addEventListener('click', function (e) {\n\t\t\t\tvar trackId = 'none';\n\t\t\t\tif (player.selectedTrack === null) {\n\t\t\t\t\ttrackId = player.tracks[0].trackId;\n\t\t\t\t}\n\t\t\t\tvar keyboard = e.keyCode || e.which;\n\t\t\t\tplayer.setTrack(trackId, typeof keyboard !== 'undefined');\n\t\t\t});\n\t\t} else {\n\t\t\tvar labels = player.captionsButton.querySelectorAll('.' + t.options.classPrefix + 'captions-selector-label'),\n\t\t\t captions = player.captionsButton.querySelectorAll('input[type=radio]');\n\n\t\t\tfor (var _i3 = 0, _total = inEvents.length; _i3 < _total; _i3++) {\n\t\t\t\tplayer.captionsButton.addEventListener(inEvents[_i3], function () {\n\t\t\t\t\t(0, _dom.removeClass)(this.querySelector('.' + t.options.classPrefix + 'captions-selector'), t.options.classPrefix + 'offscreen');\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tfor (var _i4 = 0, _total2 = outEvents.length; _i4 < _total2; _i4++) {\n\t\t\t\tplayer.captionsButton.addEventListener(outEvents[_i4], function () {\n\t\t\t\t\t(0, _dom.addClass)(this.querySelector('.' + t.options.classPrefix + 'captions-selector'), t.options.classPrefix + 'offscreen');\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tfor (var _i5 = 0, _total3 = captions.length; _i5 < _total3; _i5++) {\n\t\t\t\tcaptions[_i5].addEventListener('click', function (e) {\n\t\t\t\t\tvar keyboard = e.keyCode || e.which;\n\t\t\t\t\tplayer.setTrack(this.value, typeof keyboard !== 'undefined');\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tfor (var _i6 = 0, _total4 = labels.length; _i6 < _total4; _i6++) {\n\t\t\t\tlabels[_i6].addEventListener('click', function (e) {\n\t\t\t\t\tvar radio = (0, _dom.siblings)(this, function (el) {\n\t\t\t\t\t\treturn el.tagName === 'INPUT';\n\t\t\t\t\t})[0],\n\t\t\t\t\t event = (0, _general.createEvent)('click', radio);\n\t\t\t\t\tradio.dispatchEvent(event);\n\t\t\t\t\te.preventDefault();\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tplayer.captionsButton.addEventListener('keydown', function (e) {\n\t\t\t\te.stopPropagation();\n\t\t\t});\n\t\t}\n\n\t\tfor (var _i7 = 0, _total5 = inEvents.length; _i7 < _total5; _i7++) {\n\t\t\tplayer.chaptersButton.addEventListener(inEvents[_i7], function () {\n\t\t\t\tif (this.querySelector('.' + t.options.classPrefix + 'chapters-selector-list').children.length) {\n\t\t\t\t\t(0, _dom.removeClass)(this.querySelector('.' + t.options.classPrefix + 'chapters-selector'), t.options.classPrefix + 'offscreen');\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tfor (var _i8 = 0, _total6 = outEvents.length; _i8 < _total6; _i8++) {\n\t\t\tplayer.chaptersButton.addEventListener(outEvents[_i8], function () {\n\t\t\t\t(0, _dom.addClass)(this.querySelector('.' + t.options.classPrefix + 'chapters-selector'), t.options.classPrefix + 'offscreen');\n\t\t\t});\n\t\t}\n\n\t\tplayer.chaptersButton.addEventListener('keydown', function (e) {\n\t\t\te.stopPropagation();\n\t\t});\n\n\t\tif (!player.options.alwaysShowControls) {\n\t\t\tplayer.getElement(player.container).addEventListener('controlsshown', function () {\n\t\t\t\t(0, _dom.addClass)(player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'captions-position'), t.options.classPrefix + 'captions-position-hover');\n\t\t\t});\n\n\t\t\tplayer.getElement(player.container).addEventListener('controlshidden', function () {\n\t\t\t\tif (!media.paused) {\n\t\t\t\t\t(0, _dom.removeClass)(player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'captions-position'), t.options.classPrefix + 'captions-position-hover');\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t(0, _dom.addClass)(player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'captions-position'), t.options.classPrefix + 'captions-position-hover');\n\t\t}\n\n\t\tmedia.addEventListener('timeupdate', function () {\n\t\t\tplayer.displayCaptions();\n\t\t});\n\n\t\tif (player.options.slidesSelector !== '') {\n\t\t\tplayer.slidesContainer = _document2.default.querySelectorAll(player.options.slidesSelector);\n\n\t\t\tmedia.addEventListener('timeupdate', function () {\n\t\t\t\tplayer.displaySlides();\n\t\t\t});\n\t\t}\n\t},\n\tcleartracks: function cleartracks(player) {\n\t\tif (player) {\n\t\t\tif (player.captions) {\n\t\t\t\tplayer.captions.remove();\n\t\t\t}\n\t\t\tif (player.chapters) {\n\t\t\t\tplayer.chapters.remove();\n\t\t\t}\n\t\t\tif (player.captionsText) {\n\t\t\t\tplayer.captionsText.remove();\n\t\t\t}\n\t\t\tif (player.captionsButton) {\n\t\t\t\tplayer.captionsButton.remove();\n\t\t\t}\n\t\t\tif (player.chaptersButton) {\n\t\t\t\tplayer.chaptersButton.remove();\n\t\t\t}\n\t\t}\n\t},\n\trebuildtracks: function rebuildtracks() {\n\t\tvar t = this;\n\t\tt.findTracks();\n\t\tt.buildtracks(t, t.getElement(t.controls), t.getElement(t.layers), t.media);\n\t},\n\tfindTracks: function findTracks() {\n\t\tvar t = this,\n\t\t tracktags = t.trackFiles === null ? t.node.querySelectorAll('track') : t.trackFiles,\n\t\t total = tracktags.length;\n\n\t\tt.tracks = [];\n\t\tfor (var i = 0; i < total; i++) {\n\t\t\tvar track = tracktags[i],\n\t\t\t srclang = track.getAttribute('srclang').toLowerCase() || '',\n\t\t\t trackId = t.id + '_track_' + i + '_' + track.getAttribute('kind') + '_' + srclang;\n\t\t\tt.tracks.push({\n\t\t\t\ttrackId: trackId,\n\t\t\t\tsrclang: srclang,\n\t\t\t\tsrc: track.getAttribute('src'),\n\t\t\t\tkind: track.getAttribute('kind'),\n\t\t\t\tlabel: track.getAttribute('label') || '',\n\t\t\t\tentries: [],\n\t\t\t\tisLoaded: false\n\t\t\t});\n\t\t}\n\t},\n\tsetTrack: function setTrack(trackId, setByKeyboard) {\n\n\t\tvar t = this,\n\t\t radios = t.captionsButton.querySelectorAll('input[type=\"radio\"]'),\n\t\t captions = t.captionsButton.querySelectorAll('.' + t.options.classPrefix + 'captions-selected'),\n\t\t track = t.captionsButton.querySelector('input[value=\"' + trackId + '\"]');\n\n\t\tfor (var i = 0, total = radios.length; i < total; i++) {\n\t\t\tradios[i].checked = false;\n\t\t}\n\n\t\tfor (var _i9 = 0, _total7 = captions.length; _i9 < _total7; _i9++) {\n\t\t\t(0, _dom.removeClass)(captions[_i9], t.options.classPrefix + 'captions-selected');\n\t\t}\n\n\t\ttrack.checked = true;\n\t\tvar labels = (0, _dom.siblings)(track, function (el) {\n\t\t\treturn (0, _dom.hasClass)(el, t.options.classPrefix + 'captions-selector-label');\n\t\t});\n\t\tfor (var _i10 = 0, _total8 = labels.length; _i10 < _total8; _i10++) {\n\t\t\t(0, _dom.addClass)(labels[_i10], t.options.classPrefix + 'captions-selected');\n\t\t}\n\n\t\tif (trackId === 'none') {\n\t\t\tt.selectedTrack = null;\n\t\t\t(0, _dom.removeClass)(t.captionsButton, t.options.classPrefix + 'captions-enabled');\n\t\t} else {\n\t\t\tfor (var _i11 = 0, _total9 = t.tracks.length; _i11 < _total9; _i11++) {\n\t\t\t\tvar _track = t.tracks[_i11];\n\t\t\t\tif (_track.trackId === trackId) {\n\t\t\t\t\tif (t.selectedTrack === null) {\n\t\t\t\t\t\t(0, _dom.addClass)(t.captionsButton, t.options.classPrefix + 'captions-enabled');\n\t\t\t\t\t}\n\t\t\t\t\tt.selectedTrack = _track;\n\t\t\t\t\tt.captions.setAttribute('lang', t.selectedTrack.srclang);\n\t\t\t\t\tt.displayCaptions();\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tvar event = (0, _general.createEvent)('captionschange', t.media);\n\t\tevent.detail.caption = t.selectedTrack;\n\t\tt.media.dispatchEvent(event);\n\n\t\tif (!setByKeyboard) {\n\t\t\tsetTimeout(function () {\n\t\t\t\tt.getElement(t.container).focus();\n\t\t\t}, 500);\n\t\t}\n\t},\n\tloadNextTrack: function loadNextTrack() {\n\t\tvar t = this;\n\n\t\tt.trackToLoad++;\n\t\tif (t.trackToLoad < t.tracks.length) {\n\t\t\tt.isLoadingTrack = true;\n\t\t\tt.loadTrack(t.trackToLoad);\n\t\t} else {\n\t\t\tt.isLoadingTrack = false;\n\t\t\tt.checkForTracks();\n\t\t}\n\t},\n\tisDataURI: function isDataURI(url) {\n\t\treturn url.match(/^data:(?:.+?\\/.+?)?(?:;.+?=.+?)*(?:;base64)?,.*$/);\n\t},\n\tb64DecodeUnicode: function b64DecodeUnicode(str) {\n\t\treturn decodeURIComponent(atob(str).split('').map(function (c) {\n\t\t\treturn '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);\n\t\t}).join(''));\n\t},\n\treadSrc: function readSrc(src, callback) {\n\t\tif (this.isDataURI(src)) {\n\t\t\tvar byteString = this.b64DecodeUnicode(src.split(',')[1]);\n\t\t\tcallback(byteString);\n\t\t} else {\n\t\t\t(0, _dom.ajax)(src, 'text', callback);\n\t\t}\n\t},\n\tparseHLSPlaylist: function parseHLSPlaylist(srcUrl, src) {\n\t\tvar parentUrl = srcUrl.substring(0, srcUrl.lastIndexOf(\"/\") + 1);\n\t\tvar fragments = [];\n\t\tvar lines = src.split(\"\\n\");\n\t\tvar current = 0;\n\t\tvar num = 0;\n\t\tvar fragment = { start: current };\n\t\tvar _iteratorNormalCompletion = true;\n\t\tvar _didIteratorError = false;\n\t\tvar _iteratorError = undefined;\n\n\t\ttry {\n\t\t\tfor (var _iterator = lines[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n\t\t\t\tvar l = _step.value;\n\n\t\t\t\tvar m = l.match('#EXTINF:([0-9\\.]+),');\n\t\t\t\tif (m) {\n\t\t\t\t\tfragment.num = num;\n\t\t\t\t\tfragment.end = fragment.start + parseFloat(m[1]);\n\t\t\t\t\tnum++;\n\t\t\t\t}\n\t\t\t\tif (l.match('^[^#]')) {\n\t\t\t\t\tfragment.name = l;\n\t\t\t\t\tfragment.src = parentUrl + fragment.name;\n\t\t\t\t}\n\t\t\t\tif (fragment.name !== undefined) {\n\t\t\t\t\tfragments.push(fragment);\n\t\t\t\t\tcurrent = fragment.end;\n\t\t\t\t\tfragment.content = function (f) {\n\t\t\t\t\t\tvar prom = null;\n\t\t\t\t\t\treturn function () {\n\t\t\t\t\t\t\tif (prom === null) {\n\t\t\t\t\t\t\t\tprom = new Promise(function (resolve) {\n\t\t\t\t\t\t\t\t\t(0, _dom.ajax)(f.src, 'text', resolve);\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn prom;\n\t\t\t\t\t\t};\n\t\t\t\t\t}(fragment);\n\t\t\t\t\tfragment = { start: current };\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (err) {\n\t\t\t_didIteratorError = true;\n\t\t\t_iteratorError = err;\n\t\t} finally {\n\t\t\ttry {\n\t\t\t\tif (!_iteratorNormalCompletion && _iterator.return) {\n\t\t\t\t\t_iterator.return();\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tif (_didIteratorError) {\n\t\t\t\t\tthrow _iteratorError;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn fragments;\n\t},\n\tloadTrack: function loadTrack(index) {\n\t\tvar _this = this;\n\n\t\tvar t = this,\n\t\t track = t.tracks[index];\n\n\t\tif (track !== undefined && (track.src !== undefined || track.src !== \"\")) {\n\t\t\tthis.readSrc(track.src, function (d) {\n\t\t\t\tif (track.src.match(/\\.m3u8/)) {\n\t\t\t\t\tvar fragments = _this.parseHLSPlaylist(track.src, d);\n\t\t\t\t\tvar empty = false;\n\t\t\t\t\ttrack.getEntries = function (time, callback) {\n\t\t\t\t\t\tif (empty) return;\n\t\t\t\t\t\tvar found = false;\n\n\t\t\t\t\t\tvar _loop = function _loop(f) {\n\t\t\t\t\t\t\tif (time > f.start && time < f.end) {\n\t\t\t\t\t\t\t\tfound = true;\n\t\t\t\t\t\t\t\tf.content().then(function (c) {\n\t\t\t\t\t\t\t\t\tvar entries = _mejs2.default.TrackFormatParser.webvtt.parse(c);\n\t\t\t\t\t\t\t\t\tcallback(entries);\n\t\t\t\t\t\t\t\t\tfor (var _index2 = 1; _index2 < 5; _index2++) {\n\t\t\t\t\t\t\t\t\t\tvar nextNum = f.num + _index2;\n\t\t\t\t\t\t\t\t\t\tif (fragments[nextNum] !== undefined) {\n\t\t\t\t\t\t\t\t\t\t\tfragments[nextNum].content();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tvar _iteratorNormalCompletion2 = true;\n\t\t\t\t\t\tvar _didIteratorError2 = false;\n\t\t\t\t\t\tvar _iteratorError2 = undefined;\n\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tfor (var _iterator2 = fragments[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n\t\t\t\t\t\t\t\tvar f = _step2.value;\n\n\t\t\t\t\t\t\t\t_loop(f);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\t_didIteratorError2 = true;\n\t\t\t\t\t\t\t_iteratorError2 = err;\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tif (!_iteratorNormalCompletion2 && _iterator2.return) {\n\t\t\t\t\t\t\t\t\t_iterator2.return();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\t\tif (_didIteratorError2) {\n\t\t\t\t\t\t\t\t\tthrow _iteratorError2;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!found) {\n\t\t\t\t\t\t\tt.readSrc(track.src, function (d) {\n\t\t\t\t\t\t\t\tfragments = t.parseHLSPlaylist(track.src, d);\n\t\t\t\t\t\t\t\tif (fragments.length == 0) {\n\t\t\t\t\t\t\t\t\tempty = true;\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tvar _loop2 = function _loop2(f) {\n\t\t\t\t\t\t\t\t\t\tif (time > f.start && time < f.end) {\n\t\t\t\t\t\t\t\t\t\t\tfound = true;\n\t\t\t\t\t\t\t\t\t\t\tf.content().then(function (c) {\n\t\t\t\t\t\t\t\t\t\t\t\tvar entries = _mejs2.default.TrackFormatParser.webvtt.parse(c);\n\t\t\t\t\t\t\t\t\t\t\t\tcallback(entries);\n\t\t\t\t\t\t\t\t\t\t\t\tfor (var _index = 1; _index < 5; _index++) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvar nextNum = f.num + _index;\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (fragments[nextNum] !== undefined) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfragments[nextNum].content();\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\tvar _iteratorNormalCompletion3 = true;\n\t\t\t\t\t\t\t\t\tvar _didIteratorError3 = false;\n\t\t\t\t\t\t\t\t\tvar _iteratorError3 = undefined;\n\n\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\tfor (var _iterator3 = fragments[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n\t\t\t\t\t\t\t\t\t\t\tvar f = _step3.value;\n\n\t\t\t\t\t\t\t\t\t\t\t_loop2(f);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\t\t\t\t_didIteratorError3 = true;\n\t\t\t\t\t\t\t\t\t\t_iteratorError3 = err;\n\t\t\t\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\t\tif (!_iteratorNormalCompletion3 && _iterator3.return) {\n\t\t\t\t\t\t\t\t\t\t\t\t_iterator3.return();\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\t\t\t\t\tif (_didIteratorError3) {\n\t\t\t\t\t\t\t\t\t\t\t\tthrow _iteratorError3;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\ttrack.entries = typeof d === 'string' && /' + ('') + ('') + '';\n\t},\n\tcheckForTracks: function checkForTracks() {\n\t\tvar t = this;\n\n\t\tvar hasSubtitles = false;\n\n\t\tif (t.options.hideCaptionsButtonWhenEmpty) {\n\t\t\tfor (var i = 0, total = t.tracks.length; i < total; i++) {\n\t\t\t\tvar kind = t.tracks[i].kind;\n\t\t\t\tif ((kind === 'subtitles' || kind === 'captions') && t.tracks[i].isLoaded) {\n\t\t\t\t\thasSubtitles = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tt.captionsButton.style.display = hasSubtitles ? '' : 'none';\n\t\t\tt.setControlsSize();\n\t\t}\n\t},\n\tdisplayCaptions: function displayCaptions() {\n\t\tif (this.tracks === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar t = this,\n\t\t track = t.selectedTrack,\n\t\t sanitize = function sanitize(html) {\n\t\t\tvar div = _document2.default.createElement('div');\n\t\t\tdiv.innerHTML = html;\n\n\t\t\tvar scripts = div.getElementsByTagName('script');\n\t\t\tvar i = scripts.length;\n\t\t\twhile (i--) {\n\t\t\t\tscripts[i].remove();\n\t\t\t}\n\n\t\t\tvar allElements = div.getElementsByTagName('*');\n\t\t\tfor (var _i12 = 0, n = allElements.length; _i12 < n; _i12++) {\n\t\t\t\tvar attributesObj = allElements[_i12].attributes,\n\t\t\t\t attributes = Array.prototype.slice.call(attributesObj);\n\n\t\t\t\tfor (var j = 0, total = attributes.length; j < total; j++) {\n\t\t\t\t\tif (attributes[j].name.startsWith('on') || attributes[j].value.startsWith('javascript')) {\n\t\t\t\t\t\tallElements[_i12].remove();\n\t\t\t\t\t} else if (attributes[j].name === 'style') {\n\t\t\t\t\t\tallElements[_i12].removeAttribute(attributes[j].name);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn div.innerHTML;\n\t\t};\n\n\t\tif (track !== null && track.isLoaded) {\n\t\t\tvar i = t.searchTrackPosition(track.entries, t.media.currentTime);\n\t\t\tif (i > -1) {\n\t\t\t\tvar text = track.entries[i].text;\n\t\t\t\tif (typeof t.options.captionTextPreprocessor === 'function') text = t.options.captionTextPreprocessor(text);\n\t\t\t\tt.captionsText.innerHTML = sanitize(text);\n\t\t\t\tt.captionsText.className = t.options.classPrefix + 'captions-text ' + (track.entries[i].identifier || '');\n\t\t\t\tt.captions.style.display = '';\n\t\t\t\tt.captions.style.height = '0px';\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tt.captions.style.display = 'none';\n\t\t} else {\n\t\t\tt.captions.style.display = 'none';\n\t\t}\n\t},\n\tsetupSlides: function setupSlides(track) {\n\t\tvar t = this;\n\t\tt.slides = track;\n\t\tt.slides.entries.imgs = [t.slides.entries.length];\n\t\tt.showSlide(0);\n\t},\n\tshowSlide: function showSlide(index) {\n\t\tvar _this2 = this;\n\n\t\tvar t = this;\n\n\t\tif (t.tracks === undefined || t.slidesContainer === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar url = t.slides.entries[index].text;\n\n\t\tvar img = t.slides.entries[index].imgs;\n\n\t\tif (img === undefined || img.fadeIn === undefined) {\n\t\t\tvar image = _document2.default.createElement('img');\n\t\t\timage.src = url;\n\t\t\timage.addEventListener('load', function () {\n\t\t\t\tvar self = _this2,\n\t\t\t\t visible = (0, _dom.siblings)(self, function (el) {\n\t\t\t\t\treturn visible(el);\n\t\t\t\t});\n\t\t\t\tself.style.display = 'none';\n\t\t\t\tt.slidesContainer.innerHTML += self.innerHTML;\n\t\t\t\t(0, _dom.fadeIn)(t.slidesContainer.querySelector(image));\n\t\t\t\tfor (var i = 0, total = visible.length; i < total; i++) {\n\t\t\t\t\t(0, _dom.fadeOut)(visible[i], 400);\n\t\t\t\t}\n\t\t\t});\n\t\t\tt.slides.entries[index].imgs = img = image;\n\t\t} else if (!(0, _dom.visible)(img)) {\n\t\t\tvar _visible = (0, _dom.siblings)(self, function (el) {\n\t\t\t\treturn _visible(el);\n\t\t\t});\n\t\t\t(0, _dom.fadeIn)(t.slidesContainer.querySelector(img));\n\t\t\tfor (var i = 0, total = _visible.length; i < total; i++) {\n\t\t\t\t(0, _dom.fadeOut)(_visible[i]);\n\t\t\t}\n\t\t}\n\t},\n\tdisplaySlides: function displaySlides() {\n\t\tvar t = this;\n\n\t\tif (this.slides === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar slides = t.slides,\n\t\t i = t.searchTrackPosition(slides.entries, t.media.currentTime);\n\n\t\tif (i > -1) {\n\t\t\tt.showSlide(i);\n\t\t}\n\t},\n\tdrawChapters: function drawChapters(chapters) {\n\t\tvar t = this,\n\t\t total = chapters.entries.length;\n\n\t\tif (!total) {\n\t\t\treturn;\n\t\t}\n\n\t\tt.chaptersButton.querySelector('ul').innerHTML = '';\n\n\t\tfor (var i = 0; i < total; i++) {\n\t\t\tt.chaptersButton.querySelector('ul').innerHTML += '
    • ' + ('') + ('') + '
    • ';\n\t\t}\n\n\t\tvar radios = t.chaptersButton.querySelectorAll('input[type=\"radio\"]'),\n\t\t labels = t.chaptersButton.querySelectorAll('.' + t.options.classPrefix + 'chapters-selector-label');\n\n\t\tfor (var _i13 = 0, _total10 = radios.length; _i13 < _total10; _i13++) {\n\t\t\tradios[_i13].disabled = false;\n\t\t\tradios[_i13].checked = false;\n\t\t\tradios[_i13].addEventListener('click', function (e) {\n\t\t\t\tvar self = this,\n\t\t\t\t listItems = t.chaptersButton.querySelectorAll('li'),\n\t\t\t\t label = (0, _dom.siblings)(self, function (el) {\n\t\t\t\t\treturn (0, _dom.hasClass)(el, t.options.classPrefix + 'chapters-selector-label');\n\t\t\t\t})[0];\n\n\t\t\t\tself.checked = true;\n\t\t\t\tself.parentNode.setAttribute('aria-checked', true);\n\t\t\t\t(0, _dom.addClass)(label, t.options.classPrefix + 'chapters-selected');\n\t\t\t\t(0, _dom.removeClass)(t.chaptersButton.querySelector('.' + t.options.classPrefix + 'chapters-selected'), t.options.classPrefix + 'chapters-selected');\n\n\t\t\t\tfor (var _i14 = 0, _total11 = listItems.length; _i14 < _total11; _i14++) {\n\t\t\t\t\tlistItems[_i14].setAttribute('aria-checked', false);\n\t\t\t\t}\n\n\t\t\t\tvar keyboard = e.keyCode || e.which;\n\t\t\t\tif (typeof keyboard === 'undefined') {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tt.getElement(t.container).focus();\n\t\t\t\t\t}, 500);\n\t\t\t\t}\n\n\t\t\t\tt.media.setCurrentTime(parseFloat(self.value));\n\t\t\t\tif (t.media.paused) {\n\t\t\t\t\tt.media.play();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tfor (var _i15 = 0, _total12 = labels.length; _i15 < _total12; _i15++) {\n\t\t\tlabels[_i15].addEventListener('click', function (e) {\n\t\t\t\tvar radio = (0, _dom.siblings)(this, function (el) {\n\t\t\t\t\treturn el.tagName === 'INPUT';\n\t\t\t\t})[0],\n\t\t\t\t event = (0, _general.createEvent)('click', radio);\n\t\t\t\tradio.dispatchEvent(event);\n\t\t\t\te.preventDefault();\n\t\t\t});\n\t\t}\n\t},\n\tsearchTrackPosition: function searchTrackPosition(tracks, currentTime) {\n\t\tvar lo = 0,\n\t\t hi = tracks.length - 1,\n\t\t mid = void 0,\n\t\t start = void 0,\n\t\t stop = void 0;\n\n\t\twhile (lo <= hi) {\n\t\t\tmid = lo + hi >> 1;\n\t\t\tstart = tracks[mid].start;\n\t\t\tstop = tracks[mid].stop;\n\n\t\t\tif (currentTime >= start && currentTime < stop) {\n\t\t\t\treturn mid;\n\t\t\t} else if (start < currentTime) {\n\t\t\t\tlo = mid + 1;\n\t\t\t} else if (start > currentTime) {\n\t\t\t\thi = mid - 1;\n\t\t\t}\n\t\t}\n\n\t\treturn -1;\n\t}\n});\n\n_mejs2.default.language = {\n\tcodes: {\n\t\taf: 'mejs.afrikaans',\n\t\tsq: 'mejs.albanian',\n\t\tar: 'mejs.arabic',\n\t\tbe: 'mejs.belarusian',\n\t\tbg: 'mejs.bulgarian',\n\t\tca: 'mejs.catalan',\n\t\tzh: 'mejs.chinese',\n\t\t'zh-cn': 'mejs.chinese-simplified',\n\t\t'zh-tw': 'mejs.chines-traditional',\n\t\thr: 'mejs.croatian',\n\t\tcs: 'mejs.czech',\n\t\tda: 'mejs.danish',\n\t\tnl: 'mejs.dutch',\n\t\ten: 'mejs.english',\n\t\tet: 'mejs.estonian',\n\t\tfl: 'mejs.filipino',\n\t\tfi: 'mejs.finnish',\n\t\tfr: 'mejs.french',\n\t\tgl: 'mejs.galician',\n\t\tde: 'mejs.german',\n\t\tel: 'mejs.greek',\n\t\tht: 'mejs.haitian-creole',\n\t\tiw: 'mejs.hebrew',\n\t\thi: 'mejs.hindi',\n\t\thu: 'mejs.hungarian',\n\t\tis: 'mejs.icelandic',\n\t\tid: 'mejs.indonesian',\n\t\tga: 'mejs.irish',\n\t\tit: 'mejs.italian',\n\t\tja: 'mejs.japanese',\n\t\tko: 'mejs.korean',\n\t\tlv: 'mejs.latvian',\n\t\tlt: 'mejs.lithuanian',\n\t\tmk: 'mejs.macedonian',\n\t\tms: 'mejs.malay',\n\t\tmt: 'mejs.maltese',\n\t\tno: 'mejs.norwegian',\n\t\tfa: 'mejs.persian',\n\t\tpl: 'mejs.polish',\n\t\tpt: 'mejs.portuguese',\n\t\tro: 'mejs.romanian',\n\t\tru: 'mejs.russian',\n\t\tsr: 'mejs.serbian',\n\t\tsk: 'mejs.slovak',\n\t\tsl: 'mejs.slovenian',\n\t\tes: 'mejs.spanish',\n\t\tsw: 'mejs.swahili',\n\t\tsv: 'mejs.swedish',\n\t\ttl: 'mejs.tagalog',\n\t\tth: 'mejs.thai',\n\t\ttr: 'mejs.turkish',\n\t\tuk: 'mejs.ukrainian',\n\t\tvi: 'mejs.vietnamese',\n\t\tcy: 'mejs.welsh',\n\t\tyi: 'mejs.yiddish'\n\t}\n};\n\n_mejs2.default.TrackFormatParser = {\n\twebvtt: {\n\t\tpattern: /^((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{1,3})?) --\\> ((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{3})?)(.*)$/,\n\n\t\tparse: function parse(trackText) {\n\t\t\tvar lines = trackText.split(/\\r?\\n/),\n\t\t\t entries = [];\n\n\t\t\tvar timecode = void 0,\n\t\t\t text = void 0,\n\t\t\t identifier = void 0;\n\n\t\t\tfor (var i = 0, total = lines.length; i < total; i++) {\n\t\t\t\ttimecode = this.pattern.exec(lines[i]);\n\n\t\t\t\tif (timecode && i < lines.length) {\n\t\t\t\t\tif (i - 1 >= 0 && lines[i - 1] !== '') {\n\t\t\t\t\t\tidentifier = lines[i - 1];\n\t\t\t\t\t}\n\t\t\t\t\ti++;\n\n\t\t\t\t\ttext = lines[i];\n\t\t\t\t\ti++;\n\t\t\t\t\twhile (lines[i] !== '' && i < lines.length) {\n\t\t\t\t\t\ttext = text + '\\n' + lines[i];\n\t\t\t\t\t\ti++;\n\t\t\t\t\t}\n\t\t\t\t\ttext = text === null ? '' : text.trim().replace(/(\\b(https?|ftp|file):\\/\\/[-A-Z0-9+&@#\\/%?=~_|!:,.;]*[-A-Z0-9+&@#\\/%=~_|])/ig, \"$1\");\n\t\t\t\t\tentries.push({\n\t\t\t\t\t\tidentifier: identifier,\n\t\t\t\t\t\tstart: (0, _time.convertSMPTEtoSeconds)(timecode[1]) === 0 ? 0.200 : (0, _time.convertSMPTEtoSeconds)(timecode[1]),\n\t\t\t\t\t\tstop: (0, _time.convertSMPTEtoSeconds)(timecode[3]),\n\t\t\t\t\t\ttext: text,\n\t\t\t\t\t\tsettings: timecode[5]\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tidentifier = '';\n\t\t\t}\n\t\t\treturn entries;\n\t\t}\n\t},\n\n\tdfxp: {\n\t\tparse: function parse(trackText) {\n\t\t\tvar trackElem = _document2.default.adoptNode(new DOMParser().parseFromString(trackText, 'application/xml').documentElement),\n\t\t\t container = trackElem.querySelector('div'),\n\t\t\t lines = container.querySelectorAll('p'),\n\t\t\t styleNode = _document2.default.getElementById(container.getAttribute('style')),\n\t\t\t entries = [];\n\n\t\t\tvar styles = void 0;\n\n\t\t\tif (styleNode) {\n\t\t\t\tstyleNode.removeAttribute('id');\n\t\t\t\tvar attributes = styleNode.attributes;\n\t\t\t\tif (attributes.length) {\n\t\t\t\t\tstyles = {};\n\t\t\t\t\tfor (var i = 0, total = attributes.length; i < total; i++) {\n\t\t\t\t\t\tstyles[attributes[i].name.split(\":\")[1]] = attributes[i].value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor (var _i16 = 0, _total13 = lines.length; _i16 < _total13; _i16++) {\n\t\t\t\tvar style = void 0,\n\t\t\t\t _temp = {\n\t\t\t\t\tstart: null,\n\t\t\t\t\tstop: null,\n\t\t\t\t\tstyle: null,\n\t\t\t\t\ttext: null\n\t\t\t\t};\n\n\t\t\t\tif (lines[_i16].getAttribute('begin')) {\n\t\t\t\t\t_temp.start = (0, _time.convertSMPTEtoSeconds)(lines[_i16].getAttribute('begin'));\n\t\t\t\t}\n\t\t\t\tif (!_temp.start && lines[_i16 - 1].getAttribute('end')) {\n\t\t\t\t\t_temp.start = (0, _time.convertSMPTEtoSeconds)(lines[_i16 - 1].getAttribute('end'));\n\t\t\t\t}\n\t\t\t\tif (lines[_i16].getAttribute('end')) {\n\t\t\t\t\t_temp.stop = (0, _time.convertSMPTEtoSeconds)(lines[_i16].getAttribute('end'));\n\t\t\t\t}\n\t\t\t\tif (!_temp.stop && lines[_i16 + 1].getAttribute('begin')) {\n\t\t\t\t\t_temp.stop = (0, _time.convertSMPTEtoSeconds)(lines[_i16 + 1].getAttribute('begin'));\n\t\t\t\t}\n\n\t\t\t\tif (styles) {\n\t\t\t\t\tstyle = '';\n\t\t\t\t\tfor (var _style in styles) {\n\t\t\t\t\t\tstyle += _style + ': ' + styles[_style] + ';';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (style) {\n\t\t\t\t\t_temp.style = style;\n\t\t\t\t}\n\t\t\t\tif (_temp.start === 0) {\n\t\t\t\t\t_temp.start = 0.200;\n\t\t\t\t}\n\t\t\t\t_temp.text = lines[_i16].innerHTML.trim().replace(/(\\b(https?|ftp|file):\\/\\/[-A-Z0-9+&@#\\/%?=~_| !:, .; ]*[-A-Z0-9+&@#\\/%=~_|])/ig, \"$1\");\n\t\t\t\tentries.push(_temp);\n\t\t\t}\n\t\t\treturn entries;\n\t\t}\n\t}\n};\n\n},{\"16\":16,\"2\":2,\"26\":26,\"27\":27,\"30\":30,\"5\":5,\"7\":7}],14:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _constants = _dereq_(25);\n\nvar _general = _dereq_(27);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tmuteText: null,\n\n\tunmuteText: null,\n\n\tallyVolumeControlText: null,\n\n\thideVolumeOnTouchDevices: true,\n\n\taudioVolume: 'horizontal',\n\n\tvideoVolume: 'vertical',\n\n\tstartVolume: 0.8\n});\n\nObject.assign(_player2.default.prototype, {\n\tbuildvolume: function buildvolume(player, controls, layers, media) {\n\t\tif ((_constants.IS_ANDROID || _constants.IS_IOS) && this.options.hideVolumeOnTouchDevices) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar t = this,\n\t\t mode = t.isVideo ? t.options.videoVolume : t.options.audioVolume,\n\t\t muteText = (0, _general.isString)(t.options.muteText) ? t.options.muteText : _i18n2.default.t('mejs.mute'),\n\t\t unmuteText = (0, _general.isString)(t.options.unmuteText) ? t.options.unmuteText : _i18n2.default.t('mejs.unmute'),\n\t\t volumeControlText = (0, _general.isString)(t.options.allyVolumeControlText) ? t.options.allyVolumeControlText : _i18n2.default.t('mejs.volume-help-text'),\n\t\t mute = _document2.default.createElement('div');\n\n\t\tmute.className = t.options.classPrefix + 'button ' + t.options.classPrefix + 'volume-button ' + t.options.classPrefix + 'mute';\n\t\tmute.innerHTML = mode === 'horizontal' ? '' : '' + ('' + ('' + volumeControlText + '') + ('
      ') + ('
      ') + ('
      ') + '
      ' + '
      ';\n\n\t\tt.addControlElement(mute, 'volume');\n\n\t\tt.options.keyActions.push({\n\t\t\tkeys: [38],\n\t\t\taction: function action(player) {\n\t\t\t\tvar volumeSlider = player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'volume-slider');\n\t\t\t\tif (volumeSlider && volumeSlider.matches(':focus')) {\n\t\t\t\t\tvolumeSlider.style.display = 'block';\n\t\t\t\t}\n\t\t\t\tif (player.isVideo) {\n\t\t\t\t\tplayer.showControls();\n\t\t\t\t\tplayer.startControlsTimer();\n\t\t\t\t}\n\n\t\t\t\tvar newVolume = Math.min(player.volume + 0.1, 1);\n\t\t\t\tplayer.setVolume(newVolume);\n\t\t\t\tif (newVolume > 0) {\n\t\t\t\t\tplayer.setMuted(false);\n\t\t\t\t}\n\t\t\t}\n\t\t}, {\n\t\t\tkeys: [40],\n\t\t\taction: function action(player) {\n\t\t\t\tvar volumeSlider = player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'volume-slider');\n\t\t\t\tif (volumeSlider) {\n\t\t\t\t\tvolumeSlider.style.display = 'block';\n\t\t\t\t}\n\n\t\t\t\tif (player.isVideo) {\n\t\t\t\t\tplayer.showControls();\n\t\t\t\t\tplayer.startControlsTimer();\n\t\t\t\t}\n\n\t\t\t\tvar newVolume = Math.max(player.volume - 0.1, 0);\n\t\t\t\tplayer.setVolume(newVolume);\n\n\t\t\t\tif (newVolume <= 0.1) {\n\t\t\t\t\tplayer.setMuted(true);\n\t\t\t\t}\n\t\t\t}\n\t\t}, {\n\t\t\tkeys: [77],\n\t\t\taction: function action(player) {\n\t\t\t\tvar volumeSlider = player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'volume-slider');\n\t\t\t\tif (volumeSlider) {\n\t\t\t\t\tvolumeSlider.style.display = 'block';\n\t\t\t\t}\n\n\t\t\t\tif (player.isVideo) {\n\t\t\t\t\tplayer.showControls();\n\t\t\t\t\tplayer.startControlsTimer();\n\t\t\t\t}\n\t\t\t\tif (player.media.muted) {\n\t\t\t\t\tplayer.setMuted(false);\n\t\t\t\t} else {\n\t\t\t\t\tplayer.setMuted(true);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tif (mode === 'horizontal') {\n\t\t\tvar anchor = _document2.default.createElement('a');\n\t\t\tanchor.className = t.options.classPrefix + 'horizontal-volume-slider';\n\t\t\tanchor.setAttribute('aria-label', _i18n2.default.t('mejs.volume-slider'));\n\t\t\tanchor.setAttribute('aria-valuemin', 0);\n\t\t\tanchor.setAttribute('aria-valuemax', 100);\n\t\t\tanchor.setAttribute('aria-valuenow', 100);\n\t\t\tanchor.setAttribute('role', 'slider');\n\t\t\tanchor.innerHTML += '' + volumeControlText + '' + ('
      ') + ('
      ') + ('
      ') + '
      ';\n\t\t\tmute.parentNode.insertBefore(anchor, mute.nextSibling);\n\t\t}\n\n\t\tvar mouseIsDown = false,\n\t\t mouseIsOver = false,\n\t\t modified = false,\n\t\t updateVolumeSlider = function updateVolumeSlider() {\n\t\t\tvar volume = Math.floor(media.volume * 100);\n\t\t\tvolumeSlider.setAttribute('aria-valuenow', volume);\n\t\t\tvolumeSlider.setAttribute('aria-valuetext', volume + '%');\n\t\t};\n\n\t\tvar volumeSlider = mode === 'vertical' ? t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'volume-slider') : t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'horizontal-volume-slider'),\n\t\t volumeTotal = mode === 'vertical' ? t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'volume-total') : t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'horizontal-volume-total'),\n\t\t volumeCurrent = mode === 'vertical' ? t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'volume-current') : t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'horizontal-volume-current'),\n\t\t volumeHandle = mode === 'vertical' ? t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'volume-handle') : t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'horizontal-volume-handle'),\n\t\t positionVolumeHandle = function positionVolumeHandle(volume) {\n\n\t\t\tif (volume === null || isNaN(volume) || volume === undefined) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvolume = Math.max(0, volume);\n\t\t\tvolume = Math.min(volume, 1);\n\n\t\t\tif (volume === 0) {\n\t\t\t\t(0, _dom.removeClass)(mute, t.options.classPrefix + 'mute');\n\t\t\t\t(0, _dom.addClass)(mute, t.options.classPrefix + 'unmute');\n\t\t\t\tvar button = mute.firstElementChild;\n\t\t\t\tbutton.setAttribute('title', unmuteText);\n\t\t\t\tbutton.setAttribute('aria-label', unmuteText);\n\t\t\t} else {\n\t\t\t\t(0, _dom.removeClass)(mute, t.options.classPrefix + 'unmute');\n\t\t\t\t(0, _dom.addClass)(mute, t.options.classPrefix + 'mute');\n\t\t\t\tvar _button = mute.firstElementChild;\n\t\t\t\t_button.setAttribute('title', muteText);\n\t\t\t\t_button.setAttribute('aria-label', muteText);\n\t\t\t}\n\n\t\t\tvar volumePercentage = volume * 100 + '%',\n\t\t\t volumeStyles = getComputedStyle(volumeHandle);\n\n\t\t\tif (mode === 'vertical') {\n\t\t\t\tvolumeCurrent.style.bottom = 0;\n\t\t\t\tvolumeCurrent.style.height = volumePercentage;\n\t\t\t\tvolumeHandle.style.bottom = volumePercentage;\n\t\t\t\tvolumeHandle.style.marginBottom = -parseFloat(volumeStyles.height) / 2 + 'px';\n\t\t\t} else {\n\t\t\t\tvolumeCurrent.style.left = 0;\n\t\t\t\tvolumeCurrent.style.width = volumePercentage;\n\t\t\t\tvolumeHandle.style.left = volumePercentage;\n\t\t\t\tvolumeHandle.style.marginLeft = -parseFloat(volumeStyles.width) / 2 + 'px';\n\t\t\t}\n\t\t},\n\t\t handleVolumeMove = function handleVolumeMove(e) {\n\t\t\tvar totalOffset = (0, _dom.offset)(volumeTotal),\n\t\t\t volumeStyles = getComputedStyle(volumeTotal);\n\n\t\t\tmodified = true;\n\n\t\t\tvar volume = null;\n\n\t\t\tif (mode === 'vertical') {\n\t\t\t\tvar railHeight = parseFloat(volumeStyles.height),\n\t\t\t\t newY = e.pageY - totalOffset.top;\n\n\t\t\t\tvolume = (railHeight - newY) / railHeight;\n\n\t\t\t\tif (totalOffset.top === 0 || totalOffset.left === 0) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tvar railWidth = parseFloat(volumeStyles.width),\n\t\t\t\t newX = e.pageX - totalOffset.left;\n\n\t\t\t\tvolume = newX / railWidth;\n\t\t\t}\n\n\t\t\tvolume = Math.max(0, volume);\n\t\t\tvolume = Math.min(volume, 1);\n\n\t\t\tpositionVolumeHandle(volume);\n\n\t\t\tt.setMuted(volume === 0);\n\t\t\tt.setVolume(volume);\n\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t},\n\t\t toggleMute = function toggleMute() {\n\t\t\tif (t.muted) {\n\t\t\t\tpositionVolumeHandle(0);\n\t\t\t\t(0, _dom.removeClass)(mute, t.options.classPrefix + 'mute');\n\t\t\t\t(0, _dom.addClass)(mute, t.options.classPrefix + 'unmute');\n\t\t\t} else {\n\n\t\t\t\tpositionVolumeHandle(media.volume);\n\t\t\t\t(0, _dom.removeClass)(mute, t.options.classPrefix + 'unmute');\n\t\t\t\t(0, _dom.addClass)(mute, t.options.classPrefix + 'mute');\n\t\t\t}\n\t\t};\n\n\t\tplayer.getElement(player.container).addEventListener('keydown', function (e) {\n\t\t\tvar hasFocus = !!e.target.closest('.' + t.options.classPrefix + 'container');\n\t\t\tif (!hasFocus && mode === 'vertical') {\n\t\t\t\tvolumeSlider.style.display = 'none';\n\t\t\t}\n\t\t});\n\n\t\tmute.addEventListener('mouseenter', function (e) {\n\t\t\tif (e.target === mute) {\n\t\t\t\tvolumeSlider.style.display = 'block';\n\t\t\t\tmouseIsOver = true;\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopPropagation();\n\t\t\t}\n\t\t});\n\t\tmute.addEventListener('focusin', function () {\n\t\t\tvolumeSlider.style.display = 'block';\n\t\t\tmouseIsOver = true;\n\t\t});\n\n\t\tmute.addEventListener('focusout', function (e) {\n\t\t\tif ((!e.relatedTarget || e.relatedTarget && !e.relatedTarget.matches('.' + t.options.classPrefix + 'volume-slider')) && mode === 'vertical') {\n\t\t\t\tvolumeSlider.style.display = 'none';\n\t\t\t}\n\t\t});\n\t\tmute.addEventListener('mouseleave', function () {\n\t\t\tmouseIsOver = false;\n\t\t\tif (!mouseIsDown && mode === 'vertical') {\n\t\t\t\tvolumeSlider.style.display = 'none';\n\t\t\t}\n\t\t});\n\t\tmute.addEventListener('focusout', function () {\n\t\t\tmouseIsOver = false;\n\t\t});\n\t\tmute.addEventListener('keydown', function (e) {\n\t\t\tif (t.options.enableKeyboard && t.options.keyActions.length) {\n\t\t\t\tvar keyCode = e.which || e.keyCode || 0,\n\t\t\t\t volume = media.volume;\n\n\t\t\t\tswitch (keyCode) {\n\t\t\t\t\tcase 38:\n\t\t\t\t\t\tvolume = Math.min(volume + 0.1, 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 40:\n\t\t\t\t\t\tvolume = Math.max(0, volume - 0.1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tmouseIsDown = false;\n\t\t\t\tpositionVolumeHandle(volume);\n\t\t\t\tmedia.setVolume(volume);\n\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopPropagation();\n\t\t\t}\n\t\t});\n\t\tmute.querySelector('button').addEventListener('click', function () {\n\t\t\tmedia.setMuted(!media.muted);\n\t\t\tvar event = (0, _general.createEvent)('volumechange', media);\n\t\t\tmedia.dispatchEvent(event);\n\t\t});\n\n\t\tvolumeSlider.addEventListener('dragstart', function () {\n\t\t\treturn false;\n\t\t});\n\n\t\tvolumeSlider.addEventListener('mouseover', function () {\n\t\t\tmouseIsOver = true;\n\t\t});\n\t\tvolumeSlider.addEventListener('focusin', function () {\n\t\t\tvolumeSlider.style.display = 'block';\n\t\t\tmouseIsOver = true;\n\t\t});\n\t\tvolumeSlider.addEventListener('focusout', function () {\n\t\t\tmouseIsOver = false;\n\t\t\tif (!mouseIsDown && mode === 'vertical') {\n\t\t\t\tvolumeSlider.style.display = 'none';\n\t\t\t}\n\t\t});\n\t\tvolumeSlider.addEventListener('mousedown', function (e) {\n\t\t\thandleVolumeMove(e);\n\t\t\tt.globalBind('mousemove.vol', function (event) {\n\t\t\t\tvar target = event.target;\n\t\t\t\tif (mouseIsDown && (target === volumeSlider || target.closest(mode === 'vertical' ? '.' + t.options.classPrefix + 'volume-slider' : '.' + t.options.classPrefix + 'horizontal-volume-slider'))) {\n\t\t\t\t\thandleVolumeMove(event);\n\t\t\t\t}\n\t\t\t});\n\t\t\tt.globalBind('mouseup.vol', function () {\n\t\t\t\tmouseIsDown = false;\n\t\t\t\tif (!mouseIsOver && mode === 'vertical') {\n\t\t\t\t\tvolumeSlider.style.display = 'none';\n\t\t\t\t}\n\t\t\t});\n\t\t\tmouseIsDown = true;\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t});\n\n\t\tmedia.addEventListener('volumechange', function (e) {\n\t\t\tif (!mouseIsDown) {\n\t\t\t\ttoggleMute();\n\t\t\t}\n\t\t\tupdateVolumeSlider(e);\n\t\t});\n\n\t\tvar rendered = false;\n\t\tmedia.addEventListener('rendererready', function () {\n\t\t\tif (!modified) {\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\trendered = true;\n\t\t\t\t\tif (player.options.startVolume === 0 || media.originalNode.muted) {\n\t\t\t\t\t\tmedia.setMuted(true);\n\t\t\t\t\t}\n\t\t\t\t\tmedia.setVolume(player.options.startVolume);\n\t\t\t\t\tt.setControlsSize();\n\t\t\t\t}, 250);\n\t\t\t}\n\t\t});\n\n\t\tmedia.addEventListener('loadedmetadata', function () {\n\t\t\tsetTimeout(function () {\n\t\t\t\tif (!modified && !rendered) {\n\t\t\t\t\tif (player.options.startVolume === 0 || media.originalNode.muted) {\n\t\t\t\t\t\tmedia.setMuted(true);\n\t\t\t\t\t}\n\t\t\t\t\tif (player.options.startVolume === 0) {\n\t\t\t\t\t\tplayer.options.startVolume = 0;\n\t\t\t\t\t}\n\t\t\t\t\tmedia.setVolume(player.options.startVolume);\n\t\t\t\t\tt.setControlsSize();\n\t\t\t\t}\n\t\t\t\trendered = false;\n\t\t\t}, 250);\n\t\t});\n\n\t\tif (player.options.startVolume === 0 || media.originalNode.muted) {\n\t\t\tmedia.setMuted(true);\n\t\t\tif (player.options.startVolume === 0) {\n\t\t\t\tplayer.options.startVolume = 0;\n\t\t\t}\n\t\t\ttoggleMute();\n\t\t}\n\n\t\tt.getElement(t.container).addEventListener('controlsresize', function () {\n\t\t\ttoggleMute();\n\t\t});\n\t}\n});\n\n},{\"16\":16,\"2\":2,\"25\":25,\"26\":26,\"27\":27,\"5\":5}],15:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nvar EN = exports.EN = {\n\t'mejs.plural-form': 1,\n\n\t'mejs.download-file': 'Download File',\n\n\t'mejs.install-flash': 'You are using a browser that does not have Flash player enabled or installed. Please turn on your Flash player plugin or download the latest version from https://get.adobe.com/flashplayer/',\n\n\t'mejs.fullscreen': 'Fullscreen',\n\n\t'mejs.play': 'Play',\n\t'mejs.pause': 'Pause',\n\n\t'mejs.time-slider': 'Time Slider',\n\t'mejs.time-help-text': 'Use Left/Right Arrow keys to advance one second, Up/Down arrows to advance ten seconds.',\n\t'mejs.live-broadcast': 'Live Broadcast',\n\n\t'mejs.volume-help-text': 'Use Up/Down Arrow keys to increase or decrease volume.',\n\t'mejs.unmute': 'Unmute',\n\t'mejs.mute': 'Mute',\n\t'mejs.volume-slider': 'Volume Slider',\n\n\t'mejs.video-player': 'Video Player',\n\t'mejs.audio-player': 'Audio Player',\n\n\t'mejs.captions-subtitles': 'Captions/Subtitles',\n\t'mejs.captions-chapters': 'Chapters',\n\t'mejs.none': 'None',\n\t'mejs.afrikaans': 'Afrikaans',\n\t'mejs.albanian': 'Albanian',\n\t'mejs.arabic': 'Arabic',\n\t'mejs.belarusian': 'Belarusian',\n\t'mejs.bulgarian': 'Bulgarian',\n\t'mejs.catalan': 'Catalan',\n\t'mejs.chinese': 'Chinese',\n\t'mejs.chinese-simplified': 'Chinese (Simplified)',\n\t'mejs.chinese-traditional': 'Chinese (Traditional)',\n\t'mejs.croatian': 'Croatian',\n\t'mejs.czech': 'Czech',\n\t'mejs.danish': 'Danish',\n\t'mejs.dutch': 'Dutch',\n\t'mejs.english': 'English',\n\t'mejs.estonian': 'Estonian',\n\t'mejs.filipino': 'Filipino',\n\t'mejs.finnish': 'Finnish',\n\t'mejs.french': 'French',\n\t'mejs.galician': 'Galician',\n\t'mejs.german': 'German',\n\t'mejs.greek': 'Greek',\n\t'mejs.haitian-creole': 'Haitian Creole',\n\t'mejs.hebrew': 'Hebrew',\n\t'mejs.hindi': 'Hindi',\n\t'mejs.hungarian': 'Hungarian',\n\t'mejs.icelandic': 'Icelandic',\n\t'mejs.indonesian': 'Indonesian',\n\t'mejs.irish': 'Irish',\n\t'mejs.italian': 'Italian',\n\t'mejs.japanese': 'Japanese',\n\t'mejs.korean': 'Korean',\n\t'mejs.latvian': 'Latvian',\n\t'mejs.lithuanian': 'Lithuanian',\n\t'mejs.macedonian': 'Macedonian',\n\t'mejs.malay': 'Malay',\n\t'mejs.maltese': 'Maltese',\n\t'mejs.norwegian': 'Norwegian',\n\t'mejs.persian': 'Persian',\n\t'mejs.polish': 'Polish',\n\t'mejs.portuguese': 'Portuguese',\n\t'mejs.romanian': 'Romanian',\n\t'mejs.russian': 'Russian',\n\t'mejs.serbian': 'Serbian',\n\t'mejs.slovak': 'Slovak',\n\t'mejs.slovenian': 'Slovenian',\n\t'mejs.spanish': 'Spanish',\n\t'mejs.swahili': 'Swahili',\n\t'mejs.swedish': 'Swedish',\n\t'mejs.tagalog': 'Tagalog',\n\t'mejs.thai': 'Thai',\n\t'mejs.turkish': 'Turkish',\n\t'mejs.ukrainian': 'Ukrainian',\n\t'mejs.vietnamese': 'Vietnamese',\n\t'mejs.welsh': 'Welsh',\n\t'mejs.yiddish': 'Yiddish'\n};\n\n},{}],16:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.config = undefined;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _mediaelement = _dereq_(6);\n\nvar _mediaelement2 = _interopRequireDefault(_mediaelement);\n\nvar _default = _dereq_(17);\n\nvar _default2 = _interopRequireDefault(_default);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _constants = _dereq_(25);\n\nvar _general = _dereq_(27);\n\nvar _time = _dereq_(30);\n\nvar _media = _dereq_(28);\n\nvar _dom = _dereq_(26);\n\nvar dom = _interopRequireWildcard(_dom);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n_mejs2.default.mepIndex = 0;\n\n_mejs2.default.players = {};\n\nvar config = exports.config = {\n\tposter: '',\n\n\tshowPosterWhenEnded: false,\n\n\tshowPosterWhenPaused: false,\n\n\tdefaultVideoWidth: 480,\n\n\tdefaultVideoHeight: 270,\n\n\tvideoWidth: -1,\n\n\tvideoHeight: -1,\n\n\tdefaultAudioWidth: 400,\n\n\tdefaultAudioHeight: 40,\n\n\tdefaultSeekBackwardInterval: function defaultSeekBackwardInterval(media) {\n\t\treturn media.getDuration() * 0.05;\n\t},\n\n\tdefaultSeekForwardInterval: function defaultSeekForwardInterval(media) {\n\t\treturn media.getDuration() * 0.05;\n\t},\n\n\tsetDimensions: true,\n\n\taudioWidth: -1,\n\n\taudioHeight: -1,\n\n\tloop: false,\n\n\tautoRewind: true,\n\n\tenableAutosize: true,\n\n\ttimeFormat: '',\n\n\talwaysShowHours: false,\n\n\tshowTimecodeFrameCount: false,\n\n\tframesPerSecond: 25,\n\n\talwaysShowControls: false,\n\n\thideVideoControlsOnLoad: false,\n\n\thideVideoControlsOnPause: false,\n\n\tclickToPlayPause: true,\n\n\tcontrolsTimeoutDefault: 1500,\n\n\tcontrolsTimeoutMouseEnter: 2500,\n\n\tcontrolsTimeoutMouseLeave: 1000,\n\n\tiPadUseNativeControls: false,\n\n\tiPhoneUseNativeControls: false,\n\n\tAndroidUseNativeControls: false,\n\n\tfeatures: ['playpause', 'current', 'progress', 'duration', 'tracks', 'volume', 'fullscreen'],\n\n\tuseDefaultControls: false,\n\n\tisVideo: true,\n\n\tstretching: 'auto',\n\n\tclassPrefix: 'mejs__',\n\n\tenableKeyboard: true,\n\n\tpauseOtherPlayers: true,\n\n\tsecondsDecimalLength: 0,\n\n\tcustomError: null,\n\n\tkeyActions: [{\n\t\tkeys: [32, 179],\n\t\taction: function action(player) {\n\n\t\t\tif (!_constants.IS_FIREFOX) {\n\t\t\t\tif (player.paused || player.ended) {\n\t\t\t\t\tplayer.play();\n\t\t\t\t} else {\n\t\t\t\t\tplayer.pause();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}]\n};\n\n_mejs2.default.MepDefaults = config;\n\nvar MediaElementPlayer = function () {\n\tfunction MediaElementPlayer(node, o) {\n\t\t_classCallCheck(this, MediaElementPlayer);\n\n\t\tvar t = this,\n\t\t element = typeof node === 'string' ? _document2.default.getElementById(node) : node;\n\n\t\tif (!(t instanceof MediaElementPlayer)) {\n\t\t\treturn new MediaElementPlayer(element, o);\n\t\t}\n\n\t\tt.node = t.media = element;\n\n\t\tif (!t.node) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (t.media.player) {\n\t\t\treturn t.media.player;\n\t\t}\n\n\t\tt.hasFocus = false;\n\n\t\tt.controlsAreVisible = true;\n\n\t\tt.controlsEnabled = true;\n\n\t\tt.controlsTimer = null;\n\n\t\tt.currentMediaTime = 0;\n\n\t\tt.proxy = null;\n\n\t\tif (o === undefined) {\n\t\t\tvar options = t.node.getAttribute('data-mejsoptions');\n\t\t\to = options ? JSON.parse(options) : {};\n\t\t}\n\n\t\tt.options = Object.assign({}, config, o);\n\n\t\tif (t.options.loop && !t.media.getAttribute('loop')) {\n\t\t\tt.media.loop = true;\n\t\t\tt.node.loop = true;\n\t\t} else if (t.media.loop) {\n\t\t\tt.options.loop = true;\n\t\t}\n\n\t\tif (!t.options.timeFormat) {\n\t\t\tt.options.timeFormat = 'mm:ss';\n\t\t\tif (t.options.alwaysShowHours) {\n\t\t\t\tt.options.timeFormat = 'hh:mm:ss';\n\t\t\t}\n\t\t\tif (t.options.showTimecodeFrameCount) {\n\t\t\t\tt.options.timeFormat += ':ff';\n\t\t\t}\n\t\t}\n\n\t\t(0, _time.calculateTimeFormat)(0, t.options, t.options.framesPerSecond || 25);\n\n\t\tt.id = 'mep_' + _mejs2.default.mepIndex++;\n\n\t\t_mejs2.default.players[t.id] = t;\n\n\t\tt.init();\n\n\t\treturn t;\n\t}\n\n\t_createClass(MediaElementPlayer, [{\n\t\tkey: 'getElement',\n\t\tvalue: function getElement(element) {\n\t\t\treturn element;\n\t\t}\n\t}, {\n\t\tkey: 'init',\n\t\tvalue: function init() {\n\t\t\tvar t = this,\n\t\t\t playerOptions = Object.assign({}, t.options, {\n\t\t\t\tsuccess: function success(media, domNode) {\n\t\t\t\t\tt._meReady(media, domNode);\n\t\t\t\t},\n\t\t\t\terror: function error(e) {\n\t\t\t\t\tt._handleError(e);\n\t\t\t\t}\n\t\t\t}),\n\t\t\t tagName = t.node.tagName.toLowerCase();\n\n\t\t\tt.isDynamic = tagName !== 'audio' && tagName !== 'video' && tagName !== 'iframe';\n\t\t\tt.isVideo = t.isDynamic ? t.options.isVideo : tagName !== 'audio' && t.options.isVideo;\n\t\t\tt.mediaFiles = null;\n\t\t\tt.trackFiles = null;\n\n\t\t\tif (_constants.IS_IPAD && t.options.iPadUseNativeControls || _constants.IS_IPHONE && t.options.iPhoneUseNativeControls) {\n\t\t\t\tt.node.setAttribute('controls', true);\n\n\t\t\t\tif (_constants.IS_IPAD && t.node.getAttribute('autoplay')) {\n\t\t\t\t\tt.play();\n\t\t\t\t}\n\t\t\t} else if ((t.isVideo || !t.isVideo && (t.options.features.length || t.options.useDefaultControls)) && !(_constants.IS_ANDROID && t.options.AndroidUseNativeControls)) {\n\t\t\t\tt.node.removeAttribute('controls');\n\t\t\t\tvar videoPlayerTitle = t.isVideo ? _i18n2.default.t('mejs.video-player') : _i18n2.default.t('mejs.audio-player');\n\n\t\t\t\tvar offscreen = _document2.default.createElement('span');\n\t\t\t\toffscreen.className = t.options.classPrefix + 'offscreen';\n\t\t\t\toffscreen.innerText = videoPlayerTitle;\n\t\t\t\tt.media.parentNode.insertBefore(offscreen, t.media);\n\n\t\t\t\tt.container = _document2.default.createElement('div');\n\t\t\t\tt.getElement(t.container).id = t.id;\n\t\t\t\tt.getElement(t.container).className = t.options.classPrefix + 'container ' + t.options.classPrefix + 'container-keyboard-inactive ' + t.media.className;\n\t\t\t\tt.getElement(t.container).tabIndex = 0;\n\t\t\t\tt.getElement(t.container).setAttribute('role', 'application');\n\t\t\t\tt.getElement(t.container).setAttribute('aria-label', videoPlayerTitle);\n\t\t\t\tt.getElement(t.container).innerHTML = '
      ' + ('
      ') + ('
      ') + ('
      ') + '
      ';\n\t\t\t\tt.getElement(t.container).addEventListener('focus', function (e) {\n\t\t\t\t\tif (!t.controlsAreVisible && !t.hasFocus && t.controlsEnabled) {\n\t\t\t\t\t\tt.showControls(true);\n\n\t\t\t\t\t\tvar btnSelector = (0, _general.isNodeAfter)(e.relatedTarget, t.getElement(t.container)) ? '.' + t.options.classPrefix + 'controls .' + t.options.classPrefix + 'button:last-child > button' : '.' + t.options.classPrefix + 'playpause-button > button',\n\t\t\t\t\t\t button = t.getElement(t.container).querySelector(btnSelector);\n\n\t\t\t\t\t\tbutton.focus();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tt.node.parentNode.insertBefore(t.getElement(t.container), t.node);\n\n\t\t\t\tif (!t.options.features.length && !t.options.useDefaultControls) {\n\t\t\t\t\tt.getElement(t.container).style.background = 'transparent';\n\t\t\t\t\tt.getElement(t.container).querySelector('.' + t.options.classPrefix + 'controls').style.display = 'none';\n\t\t\t\t}\n\n\t\t\t\tif (t.isVideo && t.options.stretching === 'fill' && !dom.hasClass(t.getElement(t.container).parentNode, t.options.classPrefix + 'fill-container')) {\n\t\t\t\t\tt.outerContainer = t.media.parentNode;\n\n\t\t\t\t\tvar wrapper = _document2.default.createElement('div');\n\t\t\t\t\twrapper.className = t.options.classPrefix + 'fill-container';\n\t\t\t\t\tt.getElement(t.container).parentNode.insertBefore(wrapper, t.getElement(t.container));\n\t\t\t\t\twrapper.appendChild(t.getElement(t.container));\n\t\t\t\t}\n\n\t\t\t\tif (_constants.IS_ANDROID) {\n\t\t\t\t\tdom.addClass(t.getElement(t.container), t.options.classPrefix + 'android');\n\t\t\t\t}\n\t\t\t\tif (_constants.IS_IOS) {\n\t\t\t\t\tdom.addClass(t.getElement(t.container), t.options.classPrefix + 'ios');\n\t\t\t\t}\n\t\t\t\tif (_constants.IS_IPAD) {\n\t\t\t\t\tdom.addClass(t.getElement(t.container), t.options.classPrefix + 'ipad');\n\t\t\t\t}\n\t\t\t\tif (_constants.IS_IPHONE) {\n\t\t\t\t\tdom.addClass(t.getElement(t.container), t.options.classPrefix + 'iphone');\n\t\t\t\t}\n\t\t\t\tdom.addClass(t.getElement(t.container), t.isVideo ? t.options.classPrefix + 'video' : t.options.classPrefix + 'audio');\n\n\t\t\t\tt.getElement(t.container).querySelector('.' + t.options.classPrefix + 'mediaelement').appendChild(t.node);\n\n\t\t\t\tt.media.player = t;\n\n\t\t\t\tt.controls = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'controls');\n\t\t\t\tt.layers = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'layers');\n\n\t\t\t\tvar tagType = t.isVideo ? 'video' : 'audio',\n\t\t\t\t capsTagName = tagType.substring(0, 1).toUpperCase() + tagType.substring(1);\n\n\t\t\t\tif (t.options[tagType + 'Width'] > 0 || t.options[tagType + 'Width'].toString().indexOf('%') > -1) {\n\t\t\t\t\tt.width = t.options[tagType + 'Width'];\n\t\t\t\t} else if (t.node.style.width !== '' && t.node.style.width !== null) {\n\t\t\t\t\tt.width = t.node.style.width;\n\t\t\t\t} else if (t.node.getAttribute('width')) {\n\t\t\t\t\tt.width = t.node.getAttribute('width');\n\t\t\t\t} else {\n\t\t\t\t\tt.width = t.options['default' + capsTagName + 'Width'];\n\t\t\t\t}\n\n\t\t\t\tif (t.options[tagType + 'Height'] > 0 || t.options[tagType + 'Height'].toString().indexOf('%') > -1) {\n\t\t\t\t\tt.height = t.options[tagType + 'Height'];\n\t\t\t\t} else if (t.node.style.height !== '' && t.node.style.height !== null) {\n\t\t\t\t\tt.height = t.node.style.height;\n\t\t\t\t} else if (t.node.getAttribute('height')) {\n\t\t\t\t\tt.height = t.node.getAttribute('height');\n\t\t\t\t} else {\n\t\t\t\t\tt.height = t.options['default' + capsTagName + 'Height'];\n\t\t\t\t}\n\n\t\t\t\tt.initialAspectRatio = t.height >= t.width ? t.width / t.height : t.height / t.width;\n\n\t\t\t\tt.setPlayerSize(t.width, t.height);\n\n\t\t\t\tplayerOptions.pluginWidth = t.width;\n\t\t\t\tplayerOptions.pluginHeight = t.height;\n\t\t\t} else if (!t.isVideo && !t.options.features.length && !t.options.useDefaultControls) {\n\t\t\t\t\tt.node.style.display = 'none';\n\t\t\t\t}\n\n\t\t\t_mejs2.default.MepDefaults = playerOptions;\n\n\t\t\tnew _mediaelement2.default(t.media, playerOptions, t.mediaFiles);\n\n\t\t\tif (t.getElement(t.container) !== undefined && t.options.features.length && t.controlsAreVisible && !t.options.hideVideoControlsOnLoad) {\n\t\t\t\tvar event = (0, _general.createEvent)('controlsshown', t.getElement(t.container));\n\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'showControls',\n\t\tvalue: function showControls(doAnimation) {\n\t\t\tvar t = this;\n\n\t\t\tdoAnimation = doAnimation === undefined || doAnimation;\n\n\t\t\tif (t.controlsAreVisible || !t.isVideo) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (doAnimation) {\n\t\t\t\t(function () {\n\t\t\t\t\tdom.fadeIn(t.getElement(t.controls), 200, function () {\n\t\t\t\t\t\tdom.removeClass(t.getElement(t.controls), t.options.classPrefix + 'offscreen');\n\t\t\t\t\t\tvar event = (0, _general.createEvent)('controlsshown', t.getElement(t.container));\n\t\t\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t\t\t});\n\n\t\t\t\t\tvar controls = t.getElement(t.container).querySelectorAll('.' + t.options.classPrefix + 'control');\n\n\t\t\t\t\tvar _loop = function _loop(i, total) {\n\t\t\t\t\t\tdom.fadeIn(controls[i], 200, function () {\n\t\t\t\t\t\t\tdom.removeClass(controls[i], t.options.classPrefix + 'offscreen');\n\t\t\t\t\t\t});\n\t\t\t\t\t};\n\n\t\t\t\t\tfor (var i = 0, total = controls.length; i < total; i++) {\n\t\t\t\t\t\t_loop(i, total);\n\t\t\t\t\t}\n\t\t\t\t})();\n\t\t\t} else {\n\t\t\t\tdom.removeClass(t.getElement(t.controls), t.options.classPrefix + 'offscreen');\n\t\t\t\tt.getElement(t.controls).style.display = '';\n\t\t\t\tt.getElement(t.controls).style.opacity = 1;\n\n\t\t\t\tvar controls = t.getElement(t.container).querySelectorAll('.' + t.options.classPrefix + 'control');\n\t\t\t\tfor (var i = 0, total = controls.length; i < total; i++) {\n\t\t\t\t\tdom.removeClass(controls[i], t.options.classPrefix + 'offscreen');\n\t\t\t\t\tcontrols[i].style.display = '';\n\t\t\t\t}\n\n\t\t\t\tvar event = (0, _general.createEvent)('controlsshown', t.getElement(t.container));\n\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t}\n\n\t\t\tt.controlsAreVisible = true;\n\t\t\tt.setControlsSize();\n\t\t}\n\t}, {\n\t\tkey: 'hideControls',\n\t\tvalue: function hideControls(doAnimation, forceHide) {\n\t\t\tvar t = this;\n\n\t\t\tdoAnimation = doAnimation === undefined || doAnimation;\n\n\t\t\tif (forceHide !== true && (!t.controlsAreVisible || t.options.alwaysShowControls || t.paused && t.readyState === 4 && (!t.options.hideVideoControlsOnLoad && t.currentTime <= 0 || !t.options.hideVideoControlsOnPause && t.currentTime > 0) || t.isVideo && !t.options.hideVideoControlsOnLoad && !t.readyState || t.ended)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (doAnimation) {\n\t\t\t\t(function () {\n\t\t\t\t\tdom.fadeOut(t.getElement(t.controls), 200, function () {\n\t\t\t\t\t\tdom.addClass(t.getElement(t.controls), t.options.classPrefix + 'offscreen');\n\t\t\t\t\t\tt.getElement(t.controls).style.display = '';\n\t\t\t\t\t\tvar event = (0, _general.createEvent)('controlshidden', t.getElement(t.container));\n\t\t\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t\t\t});\n\n\t\t\t\t\tvar controls = t.getElement(t.container).querySelectorAll('.' + t.options.classPrefix + 'control');\n\n\t\t\t\t\tvar _loop2 = function _loop2(i, total) {\n\t\t\t\t\t\tdom.fadeOut(controls[i], 200, function () {\n\t\t\t\t\t\t\tdom.addClass(controls[i], t.options.classPrefix + 'offscreen');\n\t\t\t\t\t\t\tcontrols[i].style.display = '';\n\t\t\t\t\t\t});\n\t\t\t\t\t};\n\n\t\t\t\t\tfor (var i = 0, total = controls.length; i < total; i++) {\n\t\t\t\t\t\t_loop2(i, total);\n\t\t\t\t\t}\n\t\t\t\t})();\n\t\t\t} else {\n\t\t\t\tdom.addClass(t.getElement(t.controls), t.options.classPrefix + 'offscreen');\n\t\t\t\tt.getElement(t.controls).style.display = '';\n\t\t\t\tt.getElement(t.controls).style.opacity = 0;\n\n\t\t\t\tvar controls = t.getElement(t.container).querySelectorAll('.' + t.options.classPrefix + 'control');\n\t\t\t\tfor (var i = 0, total = controls.length; i < total; i++) {\n\t\t\t\t\tdom.addClass(controls[i], t.options.classPrefix + 'offscreen');\n\t\t\t\t\tcontrols[i].style.display = '';\n\t\t\t\t}\n\n\t\t\t\tvar event = (0, _general.createEvent)('controlshidden', t.getElement(t.container));\n\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t}\n\n\t\t\tt.controlsAreVisible = false;\n\t\t}\n\t}, {\n\t\tkey: 'startControlsTimer',\n\t\tvalue: function startControlsTimer(timeout) {\n\t\t\tvar t = this;\n\n\t\t\ttimeout = typeof timeout !== 'undefined' ? timeout : t.options.controlsTimeoutDefault;\n\n\t\t\tt.killControlsTimer('start');\n\n\t\t\tt.controlsTimer = setTimeout(function () {\n\t\t\t\tt.hideControls();\n\t\t\t\tt.killControlsTimer('hide');\n\t\t\t}, timeout);\n\t\t}\n\t}, {\n\t\tkey: 'killControlsTimer',\n\t\tvalue: function killControlsTimer() {\n\t\t\tvar t = this;\n\n\t\t\tif (t.controlsTimer !== null) {\n\t\t\t\tclearTimeout(t.controlsTimer);\n\t\t\t\tdelete t.controlsTimer;\n\t\t\t\tt.controlsTimer = null;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'disableControls',\n\t\tvalue: function disableControls() {\n\t\t\tvar t = this;\n\n\t\t\tt.killControlsTimer();\n\t\t\tt.controlsEnabled = false;\n\t\t\tt.hideControls(false, true);\n\t\t}\n\t}, {\n\t\tkey: 'enableControls',\n\t\tvalue: function enableControls() {\n\t\t\tvar t = this;\n\n\t\t\tt.controlsEnabled = true;\n\t\t\tt.showControls(false);\n\t\t}\n\t}, {\n\t\tkey: '_setDefaultPlayer',\n\t\tvalue: function _setDefaultPlayer() {\n\t\t\tvar t = this;\n\t\t\tif (t.proxy) {\n\t\t\t\tt.proxy.pause();\n\t\t\t}\n\t\t\tt.proxy = new _default2.default(t);\n\t\t\tt.media.addEventListener('loadedmetadata', function () {\n\t\t\t\tif (t.getCurrentTime() > 0 && t.currentMediaTime > 0) {\n\t\t\t\t\tt.setCurrentTime(t.currentMediaTime);\n\t\t\t\t\tif (!_constants.IS_IOS && !_constants.IS_ANDROID) {\n\t\t\t\t\t\tt.play();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}, {\n\t\tkey: '_meReady',\n\t\tvalue: function _meReady(media, domNode) {\n\t\t\tvar t = this,\n\t\t\t autoplayAttr = domNode.getAttribute('autoplay'),\n\t\t\t autoplay = !(autoplayAttr === undefined || autoplayAttr === null || autoplayAttr === 'false'),\n\t\t\t isNative = media.rendererName !== null && /(native|html5)/i.test(media.rendererName);\n\n\t\t\tif (t.getElement(t.controls)) {\n\t\t\t\tt.enableControls();\n\t\t\t}\n\n\t\t\tif (t.getElement(t.container) && t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'overlay-play')) {\n\t\t\t\tt.getElement(t.container).querySelector('.' + t.options.classPrefix + 'overlay-play').style.display = '';\n\t\t\t}\n\n\t\t\tif (t.created) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tt.created = true;\n\t\t\tt.media = media;\n\t\t\tt.domNode = domNode;\n\n\t\t\tif (!(_constants.IS_ANDROID && t.options.AndroidUseNativeControls) && !(_constants.IS_IPAD && t.options.iPadUseNativeControls) && !(_constants.IS_IPHONE && t.options.iPhoneUseNativeControls)) {\n\t\t\t\tif (!t.isVideo && !t.options.features.length && !t.options.useDefaultControls) {\n\t\t\t\t\tif (autoplay && isNative) {\n\t\t\t\t\t\tt.play();\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.options.success) {\n\n\t\t\t\t\t\tif (typeof t.options.success === 'string') {\n\t\t\t\t\t\t\t_window2.default[t.options.success](t.media, t.domNode, t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tt.options.success(t.media, t.domNode, t);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tt.featurePosition = {};\n\n\t\t\t\tt._setDefaultPlayer();\n\n\t\t\t\tt.buildposter(t, t.getElement(t.controls), t.getElement(t.layers), t.media);\n\t\t\t\tt.buildkeyboard(t, t.getElement(t.controls), t.getElement(t.layers), t.media);\n\t\t\t\tt.buildoverlays(t, t.getElement(t.controls), t.getElement(t.layers), t.media);\n\n\t\t\t\tif (t.options.useDefaultControls) {\n\t\t\t\t\tvar defaultControls = ['playpause', 'current', 'progress', 'duration', 'tracks', 'volume', 'fullscreen'];\n\t\t\t\t\tt.options.features = defaultControls.concat(t.options.features.filter(function (item) {\n\t\t\t\t\t\treturn defaultControls.indexOf(item) === -1;\n\t\t\t\t\t}));\n\t\t\t\t}\n\n\t\t\t\tt.buildfeatures(t, t.getElement(t.controls), t.getElement(t.layers), t.media);\n\n\t\t\t\tvar event = (0, _general.createEvent)('controlsready', t.getElement(t.container));\n\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\n\t\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\t\tt.setControlsSize();\n\n\t\t\t\tif (t.isVideo) {\n\t\t\t\t\tt.clickToPlayPauseCallback = function () {\n\n\t\t\t\t\t\tif (t.options.clickToPlayPause) {\n\t\t\t\t\t\t\tvar button = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'overlay-button'),\n\t\t\t\t\t\t\t pressed = button.getAttribute('aria-pressed');\n\n\t\t\t\t\t\t\tif (t.paused && pressed) {\n\t\t\t\t\t\t\t\tt.pause();\n\t\t\t\t\t\t\t} else if (t.paused) {\n\t\t\t\t\t\t\t\tt.play();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tt.pause();\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tbutton.setAttribute('aria-pressed', !pressed);\n\t\t\t\t\t\t\tt.getElement(t.container).focus();\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\t\t\t\t\tt.createIframeLayer();\n\n\t\t\t\t\tt.media.addEventListener('click', t.clickToPlayPauseCallback);\n\n\t\t\t\t\tif ((_constants.IS_ANDROID || _constants.IS_IOS) && !t.options.alwaysShowControls) {\n\t\t\t\t\t\tt.node.addEventListener('touchstart', function () {\n\t\t\t\t\t\t\tif (t.controlsAreVisible) {\n\t\t\t\t\t\t\t\tt.hideControls(false);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tif (t.controlsEnabled) {\n\t\t\t\t\t\t\t\t\tt.showControls(false);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}, _constants.SUPPORT_PASSIVE_EVENT ? { passive: true } : false);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tt.getElement(t.container).addEventListener('mouseenter', function () {\n\t\t\t\t\t\t\tif (t.controlsEnabled) {\n\t\t\t\t\t\t\t\tif (!t.options.alwaysShowControls) {\n\t\t\t\t\t\t\t\t\tt.killControlsTimer('enter');\n\t\t\t\t\t\t\t\t\tt.showControls();\n\t\t\t\t\t\t\t\t\tt.startControlsTimer(t.options.controlsTimeoutMouseEnter);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tt.getElement(t.container).addEventListener('mousemove', function () {\n\t\t\t\t\t\t\tif (t.controlsEnabled) {\n\t\t\t\t\t\t\t\tif (!t.controlsAreVisible) {\n\t\t\t\t\t\t\t\t\tt.showControls();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (!t.options.alwaysShowControls) {\n\t\t\t\t\t\t\t\t\tt.startControlsTimer(t.options.controlsTimeoutMouseEnter);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tt.getElement(t.container).addEventListener('mouseleave', function () {\n\t\t\t\t\t\t\tif (t.controlsEnabled) {\n\t\t\t\t\t\t\t\tif (!t.paused && !t.options.alwaysShowControls) {\n\t\t\t\t\t\t\t\t\tt.startControlsTimer(t.options.controlsTimeoutMouseLeave);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.options.hideVideoControlsOnLoad) {\n\t\t\t\t\t\tt.hideControls(false);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.options.enableAutosize) {\n\t\t\t\t\t\tt.media.addEventListener('loadedmetadata', function (e) {\n\t\t\t\t\t\t\tvar target = e !== undefined ? e.detail.target || e.target : t.media;\n\t\t\t\t\t\t\tif (t.options.videoHeight <= 0 && !t.domNode.getAttribute('height') && !t.domNode.style.height && target !== null && !isNaN(target.videoHeight)) {\n\t\t\t\t\t\t\t\tt.setPlayerSize(target.videoWidth, target.videoHeight);\n\t\t\t\t\t\t\t\tt.setControlsSize();\n\t\t\t\t\t\t\t\tt.media.setSize(target.videoWidth, target.videoHeight);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tt.media.addEventListener('play', function () {\n\t\t\t\t\tt.hasFocus = true;\n\n\t\t\t\t\tfor (var playerIndex in _mejs2.default.players) {\n\t\t\t\t\t\tif (_mejs2.default.players.hasOwnProperty(playerIndex)) {\n\t\t\t\t\t\t\tvar p = _mejs2.default.players[playerIndex];\n\n\t\t\t\t\t\t\tif (p.id !== t.id && t.options.pauseOtherPlayers && !p.paused && !p.ended && p.options.ignorePauseOtherPlayersOption !== true) {\n\t\t\t\t\t\t\t\tp.pause();\n\t\t\t\t\t\t\t\tp.hasFocus = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!(_constants.IS_ANDROID || _constants.IS_IOS) && !t.options.alwaysShowControls && t.isVideo) {\n\t\t\t\t\t\tt.hideControls();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tt.media.addEventListener('ended', function () {\n\t\t\t\t\tif (t.options.autoRewind) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tt.setCurrentTime(0);\n\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tvar loadingElement = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'overlay-loading');\n\t\t\t\t\t\t\t\tif (loadingElement && loadingElement.parentNode) {\n\t\t\t\t\t\t\t\t\tloadingElement.parentNode.style.display = 'none';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}, 20);\n\t\t\t\t\t\t} catch (exp) {\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (typeof t.media.renderer.stop === 'function') {\n\t\t\t\t\t\tt.media.renderer.stop();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tt.pause();\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.setProgressRail) {\n\t\t\t\t\t\tt.setProgressRail();\n\t\t\t\t\t}\n\t\t\t\t\tif (t.setCurrentRail) {\n\t\t\t\t\t\tt.setCurrentRail();\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.options.loop) {\n\t\t\t\t\t\tt.play();\n\t\t\t\t\t} else if (!t.options.alwaysShowControls && t.controlsEnabled) {\n\t\t\t\t\t\tt.showControls();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tt.media.addEventListener('loadedmetadata', function () {\n\n\t\t\t\t\t(0, _time.calculateTimeFormat)(t.getDuration(), t.options, t.options.framesPerSecond || 25);\n\n\t\t\t\t\tif (t.updateDuration) {\n\t\t\t\t\t\tt.updateDuration();\n\t\t\t\t\t}\n\t\t\t\t\tif (t.updateCurrent) {\n\t\t\t\t\t\tt.updateCurrent();\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!t.isFullScreen) {\n\t\t\t\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\t\t\t\tt.setControlsSize();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tvar duration = null;\n\t\t\t\tt.media.addEventListener('timeupdate', function () {\n\t\t\t\t\tif (!isNaN(t.getDuration()) && duration !== t.getDuration()) {\n\t\t\t\t\t\tduration = t.getDuration();\n\t\t\t\t\t\t(0, _time.calculateTimeFormat)(duration, t.options, t.options.framesPerSecond || 25);\n\n\t\t\t\t\t\tif (t.updateDuration) {\n\t\t\t\t\t\t\tt.updateDuration();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (t.updateCurrent) {\n\t\t\t\t\t\t\tt.updateCurrent();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tt.setControlsSize();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tt.getElement(t.container).addEventListener('click', function (e) {\n\t\t\t\t\tdom.addClass(e.currentTarget, t.options.classPrefix + 'container-keyboard-inactive');\n\t\t\t\t});\n\n\t\t\t\tt.getElement(t.container).addEventListener('focusin', function (e) {\n\t\t\t\t\tdom.removeClass(e.currentTarget, t.options.classPrefix + 'container-keyboard-inactive');\n\t\t\t\t\tif (t.isVideo && !_constants.IS_ANDROID && !_constants.IS_IOS && t.controlsEnabled && !t.options.alwaysShowControls) {\n\t\t\t\t\t\tt.killControlsTimer('enter');\n\t\t\t\t\t\tt.showControls();\n\t\t\t\t\t\tt.startControlsTimer(t.options.controlsTimeoutMouseEnter);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tt.getElement(t.container).addEventListener('focusout', function (e) {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tif (e.relatedTarget) {\n\t\t\t\t\t\t\tif (t.keyboardAction && !e.relatedTarget.closest('.' + t.options.classPrefix + 'container')) {\n\t\t\t\t\t\t\t\tt.keyboardAction = false;\n\t\t\t\t\t\t\t\tif (t.isVideo && !t.options.alwaysShowControls && !t.paused) {\n\t\t\t\t\t\t\t\t\tt.startControlsTimer(t.options.controlsTimeoutMouseLeave);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}, 0);\n\t\t\t\t});\n\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\t\t\tt.setControlsSize();\n\t\t\t\t}, 0);\n\n\t\t\t\tt.globalResizeCallback = function () {\n\t\t\t\t\tif (!(t.isFullScreen || _constants.HAS_TRUE_NATIVE_FULLSCREEN && _document2.default.webkitIsFullScreen)) {\n\t\t\t\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\t\t\t}\n\n\t\t\t\t\tt.setControlsSize();\n\t\t\t\t};\n\n\t\t\t\tt.globalBind('resize', t.globalResizeCallback);\n\t\t\t}\n\n\t\t\tif (autoplay && isNative) {\n\t\t\t\tt.play();\n\t\t\t}\n\n\t\t\tif (t.options.success) {\n\t\t\t\tif (typeof t.options.success === 'string') {\n\t\t\t\t\t_window2.default[t.options.success](t.media, t.domNode, t);\n\t\t\t\t} else {\n\t\t\t\t\tt.options.success(t.media, t.domNode, t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: '_handleError',\n\t\tvalue: function _handleError(e, media, node) {\n\t\t\tvar t = this,\n\t\t\t play = t.getElement(t.layers).querySelector('.' + t.options.classPrefix + 'overlay-play');\n\n\t\t\tif (play) {\n\t\t\t\tplay.style.display = 'none';\n\t\t\t}\n\n\t\t\tif (t.options.error) {\n\t\t\t\tt.options.error(e, media, node);\n\t\t\t}\n\n\t\t\tif (t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'cannotplay')) {\n\t\t\t\tt.getElement(t.container).querySelector('.' + t.options.classPrefix + 'cannotplay').remove();\n\t\t\t}\n\n\t\t\tvar errorContainer = _document2.default.createElement('div');\n\t\t\terrorContainer.className = t.options.classPrefix + 'cannotplay';\n\t\t\terrorContainer.style.width = '100%';\n\t\t\terrorContainer.style.height = '100%';\n\n\t\t\tvar errorContent = typeof t.options.customError === 'function' ? t.options.customError(t.media, t.media.originalNode) : t.options.customError,\n\t\t\t imgError = '';\n\n\t\t\tif (!errorContent) {\n\t\t\t\tvar poster = t.media.originalNode.getAttribute('poster');\n\t\t\t\tif (poster) {\n\t\t\t\t\timgError = '\"'';\n\t\t\t\t}\n\n\t\t\t\tif (e.message) {\n\t\t\t\t\terrorContent = '

      ' + e.message + '

      ';\n\t\t\t\t}\n\n\t\t\t\tif (e.urls) {\n\t\t\t\t\tfor (var i = 0, total = e.urls.length; i < total; i++) {\n\t\t\t\t\t\tvar url = e.urls[i];\n\t\t\t\t\t\terrorContent += '' + _mejs2.default.i18n.t('mejs.download-file') + ': ' + url.src + '';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (errorContent && t.getElement(t.layers).querySelector('.' + t.options.classPrefix + 'overlay-error')) {\n\t\t\t\terrorContainer.innerHTML = errorContent;\n\t\t\t\tt.getElement(t.layers).querySelector('.' + t.options.classPrefix + 'overlay-error').innerHTML = '' + imgError + errorContainer.outerHTML;\n\t\t\t\tt.getElement(t.layers).querySelector('.' + t.options.classPrefix + 'overlay-error').parentNode.style.display = 'block';\n\t\t\t}\n\n\t\t\tif (t.controlsEnabled) {\n\t\t\t\tt.disableControls();\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'setPlayerSize',\n\t\tvalue: function setPlayerSize(width, height) {\n\t\t\tvar t = this;\n\n\t\t\tif (!t.options.setDimensions) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tif (typeof width !== 'undefined') {\n\t\t\t\tt.width = width;\n\t\t\t}\n\n\t\t\tif (typeof height !== 'undefined') {\n\t\t\t\tt.height = height;\n\t\t\t}\n\n\t\t\tswitch (t.options.stretching) {\n\t\t\t\tcase 'fill':\n\t\t\t\t\tif (t.isVideo) {\n\t\t\t\t\t\tt.setFillMode();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tt.setDimensions(t.width, t.height);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'responsive':\n\t\t\t\t\tt.setResponsiveMode();\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'none':\n\t\t\t\t\tt.setDimensions(t.width, t.height);\n\t\t\t\t\tbreak;\n\n\t\t\t\tdefault:\n\t\t\t\t\tif (t.hasFluidMode() === true) {\n\t\t\t\t\t\tt.setResponsiveMode();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tt.setDimensions(t.width, t.height);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'hasFluidMode',\n\t\tvalue: function hasFluidMode() {\n\t\t\tvar t = this;\n\n\t\t\treturn t.height.toString().indexOf('%') !== -1 || t.node && t.node.style.maxWidth && t.node.style.maxWidth !== 'none' && t.node.style.maxWidth !== t.width || t.node && t.node.currentStyle && t.node.currentStyle.maxWidth === '100%';\n\t\t}\n\t}, {\n\t\tkey: 'setResponsiveMode',\n\t\tvalue: function setResponsiveMode() {\n\t\t\tvar t = this,\n\t\t\t parent = function () {\n\n\t\t\t\tvar parentEl = void 0,\n\t\t\t\t el = t.getElement(t.container);\n\n\t\t\t\twhile (el) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (_constants.IS_FIREFOX && el.tagName.toLowerCase() === 'html' && _window2.default.self !== _window2.default.top && _window2.default.frameElement !== null) {\n\t\t\t\t\t\t\treturn _window2.default.frameElement;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tparentEl = el.parentElement;\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tparentEl = el.parentElement;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (parentEl && dom.visible(parentEl)) {\n\t\t\t\t\t\treturn parentEl;\n\t\t\t\t\t}\n\t\t\t\t\tel = parentEl;\n\t\t\t\t}\n\n\t\t\t\treturn null;\n\t\t\t}(),\n\t\t\t parentStyles = parent ? getComputedStyle(parent, null) : getComputedStyle(_document2.default.body, null),\n\t\t\t nativeWidth = function () {\n\t\t\t\tif (t.isVideo) {\n\t\t\t\t\tif (t.node && t.node.videoWidth && t.node.videoWidth > 0) {\n\t\t\t\t\t\treturn t.node.videoWidth;\n\t\t\t\t\t} else if (t.node && t.node.getAttribute('width')) {\n\t\t\t\t\t\treturn t.node.getAttribute('width');\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn t.options.defaultVideoWidth;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn t.options.defaultAudioWidth;\n\t\t\t\t}\n\t\t\t}(),\n\t\t\t nativeHeight = function () {\n\t\t\t\tif (t.isVideo) {\n\t\t\t\t\tif (t.node && t.node.videoHeight && t.node.videoHeight > 0) {\n\t\t\t\t\t\treturn t.node.videoHeight;\n\t\t\t\t\t} else if (t.node && t.node.getAttribute('height')) {\n\t\t\t\t\t\treturn t.node.getAttribute('height');\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn t.options.defaultVideoHeight;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn t.options.defaultAudioHeight;\n\t\t\t\t}\n\t\t\t}(),\n\t\t\t aspectRatio = function () {\n\t\t\t\tif (!t.options.enableAutosize) {\n\t\t\t\t\treturn t.initialAspectRatio;\n\t\t\t\t}\n\t\t\t\tvar ratio = 1;\n\t\t\t\tif (!t.isVideo) {\n\t\t\t\t\treturn ratio;\n\t\t\t\t}\n\n\t\t\t\tif (t.node && t.node.videoWidth && t.node.videoWidth > 0 && t.node.videoHeight && t.node.videoHeight > 0) {\n\t\t\t\t\tratio = t.height >= t.width ? t.node.videoWidth / t.node.videoHeight : t.node.videoHeight / t.node.videoWidth;\n\t\t\t\t} else {\n\t\t\t\t\tratio = t.initialAspectRatio;\n\t\t\t\t}\n\n\t\t\t\tif (isNaN(ratio) || ratio < 0.01 || ratio > 100) {\n\t\t\t\t\tratio = 1;\n\t\t\t\t}\n\n\t\t\t\treturn ratio;\n\t\t\t}(),\n\t\t\t parentHeight = parseFloat(parentStyles.height);\n\n\t\t\tvar newHeight = void 0,\n\t\t\t parentWidth = parseFloat(parentStyles.width);\n\n\t\t\tif (t.isVideo) {\n\t\t\t\tif (t.height === '100%') {\n\t\t\t\t\tnewHeight = parseFloat(parentWidth * nativeHeight / nativeWidth, 10);\n\t\t\t\t} else {\n\t\t\t\t\tnewHeight = t.height >= t.width ? parseFloat(parentWidth / aspectRatio, 10) : parseFloat(parentWidth * aspectRatio, 10);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tnewHeight = nativeHeight;\n\t\t\t}\n\n\t\t\tif (isNaN(newHeight)) {\n\t\t\t\tnewHeight = parentHeight;\n\t\t\t}\n\n\t\t\tif (t.getElement(t.container).parentNode && t.getElement(t.container).parentNode.length > 0 && t.getElement(t.container).parentNode.tagName.toLowerCase() === 'body') {\n\t\t\t\tparentWidth = _window2.default.innerWidth || _document2.default.documentElement.clientWidth || _document2.default.body.clientWidth;\n\t\t\t\tnewHeight = _window2.default.innerHeight || _document2.default.documentElement.clientHeight || _document2.default.body.clientHeight;\n\t\t\t}\n\n\t\t\tif (newHeight && parentWidth) {\n\t\t\t\tt.getElement(t.container).style.width = parentWidth + 'px';\n\t\t\t\tt.getElement(t.container).style.height = newHeight + 'px';\n\n\t\t\t\tif (t.node) {\n\t\t\t\t\tt.node.style.width = '100%';\n\t\t\t\t\tt.node.style.height = '100%';\n\t\t\t\t}\n\n\t\t\t\tif (t.isVideo && t.media.setSize) {\n\t\t\t\t\tt.media.setSize(parentWidth, newHeight);\n\t\t\t\t}\n\n\t\t\t\tvar layerChildren = t.getElement(t.layers).children;\n\t\t\t\tfor (var i = 0, total = layerChildren.length; i < total; i++) {\n\t\t\t\t\tlayerChildren[i].style.width = '100%';\n\t\t\t\t\tlayerChildren[i].style.height = '100%';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'setFillMode',\n\t\tvalue: function setFillMode() {\n\t\t\tvar t = this;\n\t\t\tvar isIframe = _window2.default.self !== _window2.default.top && _window2.default.frameElement !== null;\n\t\t\tvar parent = function () {\n\t\t\t\tvar parentEl = void 0,\n\t\t\t\t el = t.getElement(t.container);\n\n\t\t\t\twhile (el) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (_constants.IS_FIREFOX && el.tagName.toLowerCase() === 'html' && _window2.default.self !== _window2.default.top && _window2.default.frameElement !== null) {\n\t\t\t\t\t\t\treturn _window2.default.frameElement;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tparentEl = el.parentElement;\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tparentEl = el.parentElement;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (parentEl && dom.visible(parentEl)) {\n\t\t\t\t\t\treturn parentEl;\n\t\t\t\t\t}\n\t\t\t\t\tel = parentEl;\n\t\t\t\t}\n\n\t\t\t\treturn null;\n\t\t\t}();\n\t\t\tvar parentStyles = parent ? getComputedStyle(parent, null) : getComputedStyle(_document2.default.body, null);\n\n\t\t\tif (t.node.style.height !== 'none' && t.node.style.height !== t.height) {\n\t\t\t\tt.node.style.height = 'auto';\n\t\t\t}\n\t\t\tif (t.node.style.maxWidth !== 'none' && t.node.style.maxWidth !== t.width) {\n\t\t\t\tt.node.style.maxWidth = 'none';\n\t\t\t}\n\n\t\t\tif (t.node.style.maxHeight !== 'none' && t.node.style.maxHeight !== t.height) {\n\t\t\t\tt.node.style.maxHeight = 'none';\n\t\t\t}\n\n\t\t\tif (t.node.currentStyle) {\n\t\t\t\tif (t.node.currentStyle.height === '100%') {\n\t\t\t\t\tt.node.currentStyle.height = 'auto';\n\t\t\t\t}\n\t\t\t\tif (t.node.currentStyle.maxWidth === '100%') {\n\t\t\t\t\tt.node.currentStyle.maxWidth = 'none';\n\t\t\t\t}\n\t\t\t\tif (t.node.currentStyle.maxHeight === '100%') {\n\t\t\t\t\tt.node.currentStyle.maxHeight = 'none';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!isIframe && !parseFloat(parentStyles.width)) {\n\t\t\t\tparent.style.width = t.media.offsetWidth + 'px';\n\t\t\t}\n\n\t\t\tif (!isIframe && !parseFloat(parentStyles.height)) {\n\t\t\t\tparent.style.height = t.media.offsetHeight + 'px';\n\t\t\t}\n\n\t\t\tparentStyles = getComputedStyle(parent);\n\n\t\t\tvar parentWidth = parseFloat(parentStyles.width),\n\t\t\t parentHeight = parseFloat(parentStyles.height);\n\n\t\t\tt.setDimensions('100%', '100%');\n\n\t\t\tvar poster = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'poster>img');\n\t\t\tif (poster) {\n\t\t\t\tposter.style.display = '';\n\t\t\t}\n\n\t\t\tvar targetElement = t.getElement(t.container).querySelectorAll('object, embed, iframe, video'),\n\t\t\t initHeight = t.height,\n\t\t\t initWidth = t.width,\n\t\t\t scaleX1 = parentWidth,\n\t\t\t scaleY1 = initHeight * parentWidth / initWidth,\n\t\t\t scaleX2 = initWidth * parentHeight / initHeight,\n\t\t\t scaleY2 = parentHeight,\n\t\t\t bScaleOnWidth = scaleX2 > parentWidth === false,\n\t\t\t finalWidth = bScaleOnWidth ? Math.floor(scaleX1) : Math.floor(scaleX2),\n\t\t\t finalHeight = bScaleOnWidth ? Math.floor(scaleY1) : Math.floor(scaleY2),\n\t\t\t width = bScaleOnWidth ? parentWidth + 'px' : finalWidth + 'px',\n\t\t\t height = bScaleOnWidth ? finalHeight + 'px' : parentHeight + 'px';\n\n\t\t\tfor (var i = 0, total = targetElement.length; i < total; i++) {\n\t\t\t\ttargetElement[i].style.height = height;\n\t\t\t\ttargetElement[i].style.width = width;\n\t\t\t\tif (t.media.setSize) {\n\t\t\t\t\tt.media.setSize(width, height);\n\t\t\t\t}\n\n\t\t\t\ttargetElement[i].style.marginLeft = Math.floor((parentWidth - finalWidth) / 2) + 'px';\n\t\t\t\ttargetElement[i].style.marginTop = 0;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'setDimensions',\n\t\tvalue: function setDimensions(width, height) {\n\t\t\tvar t = this;\n\n\t\t\twidth = (0, _general.isString)(width) && width.indexOf('%') > -1 ? width : parseFloat(width) + 'px';\n\t\t\theight = (0, _general.isString)(height) && height.indexOf('%') > -1 ? height : parseFloat(height) + 'px';\n\n\t\t\tt.getElement(t.container).style.width = width;\n\t\t\tt.getElement(t.container).style.height = height;\n\n\t\t\tvar layers = t.getElement(t.layers).children;\n\t\t\tfor (var i = 0, total = layers.length; i < total; i++) {\n\t\t\t\tlayers[i].style.width = width;\n\t\t\t\tlayers[i].style.height = height;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'setControlsSize',\n\t\tvalue: function setControlsSize() {\n\t\t\tvar t = this;\n\n\t\t\tif (!dom.visible(t.getElement(t.container))) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (t.rail && dom.visible(t.rail)) {\n\t\t\t\tvar totalStyles = t.total ? getComputedStyle(t.total, null) : null,\n\t\t\t\t totalMargin = totalStyles ? parseFloat(totalStyles.marginLeft) + parseFloat(totalStyles.marginRight) : 0,\n\t\t\t\t railStyles = getComputedStyle(t.rail),\n\t\t\t\t railMargin = parseFloat(railStyles.marginLeft) + parseFloat(railStyles.marginRight);\n\n\t\t\t\tvar siblingsWidth = 0;\n\n\t\t\t\tvar siblings = dom.siblings(t.rail, function (el) {\n\t\t\t\t\treturn el !== t.rail;\n\t\t\t\t}),\n\t\t\t\t total = siblings.length;\n\t\t\t\tfor (var i = 0; i < total; i++) {\n\t\t\t\t\tsiblingsWidth += siblings[i].offsetWidth;\n\t\t\t\t}\n\n\t\t\t\tsiblingsWidth += totalMargin + (totalMargin === 0 ? railMargin * 2 : railMargin) + 1;\n\n\t\t\t\tt.getElement(t.container).style.minWidth = siblingsWidth + 'px';\n\n\t\t\t\tvar event = (0, _general.createEvent)('controlsresize', t.getElement(t.container));\n\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t} else {\n\t\t\t\tvar children = t.getElement(t.controls).children;\n\t\t\t\tvar minWidth = 0;\n\n\t\t\t\tfor (var _i = 0, _total = children.length; _i < _total; _i++) {\n\t\t\t\t\tminWidth += children[_i].offsetWidth;\n\t\t\t\t}\n\n\t\t\t\tt.getElement(t.container).style.minWidth = minWidth + 'px';\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'addControlElement',\n\t\tvalue: function addControlElement(element, key) {\n\n\t\t\tvar t = this;\n\n\t\t\tif (t.featurePosition[key] !== undefined) {\n\t\t\t\tvar child = t.getElement(t.controls).children[t.featurePosition[key] - 1];\n\t\t\t\tchild.parentNode.insertBefore(element, child.nextSibling);\n\t\t\t} else {\n\t\t\t\tt.getElement(t.controls).appendChild(element);\n\t\t\t\tvar children = t.getElement(t.controls).children;\n\t\t\t\tfor (var i = 0, total = children.length; i < total; i++) {\n\t\t\t\t\tif (element === children[i]) {\n\t\t\t\t\t\tt.featurePosition[key] = i;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'createIframeLayer',\n\t\tvalue: function createIframeLayer() {\n\t\t\tvar t = this;\n\n\t\t\tif (t.isVideo && t.media.rendererName !== null && t.media.rendererName.indexOf('iframe') > -1 && !_document2.default.getElementById(t.media.id + '-iframe-overlay')) {\n\n\t\t\t\tvar layer = _document2.default.createElement('div'),\n\t\t\t\t target = _document2.default.getElementById(t.media.id + '_' + t.media.rendererName);\n\n\t\t\t\tlayer.id = t.media.id + '-iframe-overlay';\n\t\t\t\tlayer.className = t.options.classPrefix + 'iframe-overlay';\n\t\t\t\tlayer.addEventListener('click', function (e) {\n\t\t\t\t\tif (t.options.clickToPlayPause) {\n\t\t\t\t\t\tif (t.paused) {\n\t\t\t\t\t\t\tt.play();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tt.pause();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\ttarget.parentNode.insertBefore(layer, target);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'resetSize',\n\t\tvalue: function resetSize() {\n\t\t\tvar t = this;\n\n\t\t\tsetTimeout(function () {\n\t\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\t\tt.setControlsSize();\n\t\t\t}, 50);\n\t\t}\n\t}, {\n\t\tkey: 'setPoster',\n\t\tvalue: function setPoster(url) {\n\t\t\tvar t = this;\n\n\t\t\tif (t.getElement(t.container)) {\n\t\t\t\tvar posterDiv = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'poster');\n\n\t\t\t\tif (!posterDiv) {\n\t\t\t\t\tposterDiv = _document2.default.createElement('div');\n\t\t\t\t\tposterDiv.className = t.options.classPrefix + 'poster ' + t.options.classPrefix + 'layer';\n\t\t\t\t\tt.getElement(t.layers).appendChild(posterDiv);\n\t\t\t\t}\n\n\t\t\t\tvar posterImg = posterDiv.querySelector('img');\n\n\t\t\t\tif (!posterImg && url) {\n\t\t\t\t\tposterImg = _document2.default.createElement('img');\n\t\t\t\t\tposterImg.className = t.options.classPrefix + 'poster-img';\n\t\t\t\t\tposterImg.width = '100%';\n\t\t\t\t\tposterImg.height = '100%';\n\t\t\t\t\tposterDiv.style.display = '';\n\t\t\t\t\tposterDiv.appendChild(posterImg);\n\t\t\t\t}\n\n\t\t\t\tif (url) {\n\t\t\t\t\tposterImg.setAttribute('src', url);\n\t\t\t\t\tposterDiv.style.backgroundImage = 'url(\"' + url + '\")';\n\t\t\t\t\tposterDiv.style.display = '';\n\t\t\t\t} else if (posterImg) {\n\t\t\t\t\tposterDiv.style.backgroundImage = 'none';\n\t\t\t\t\tposterDiv.style.display = 'none';\n\t\t\t\t\tposterImg.remove();\n\t\t\t\t} else {\n\t\t\t\t\tposterDiv.style.display = 'none';\n\t\t\t\t}\n\t\t\t} else if (_constants.IS_IPAD && t.options.iPadUseNativeControls || _constants.IS_IPHONE && t.options.iPhoneUseNativeControls || _constants.IS_ANDROID && t.options.AndroidUseNativeControls) {\n\t\t\t\tt.media.originalNode.poster = url;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'changeSkin',\n\t\tvalue: function changeSkin(className) {\n\t\t\tvar t = this;\n\n\t\t\tt.getElement(t.container).className = t.options.classPrefix + 'container ' + className;\n\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\tt.setControlsSize();\n\t\t}\n\t}, {\n\t\tkey: 'globalBind',\n\t\tvalue: function globalBind(events, callback) {\n\t\t\tvar t = this,\n\t\t\t doc = t.node ? t.node.ownerDocument : _document2.default;\n\n\t\t\tevents = (0, _general.splitEvents)(events, t.id);\n\t\t\tif (events.d) {\n\t\t\t\tvar eventList = events.d.split(' ');\n\t\t\t\tfor (var i = 0, total = eventList.length; i < total; i++) {\n\t\t\t\t\teventList[i].split('.').reduce(function (part, e) {\n\t\t\t\t\t\tdoc.addEventListener(e, callback, false);\n\t\t\t\t\t\treturn e;\n\t\t\t\t\t}, '');\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (events.w) {\n\t\t\t\tvar _eventList = events.w.split(' ');\n\t\t\t\tfor (var _i2 = 0, _total2 = _eventList.length; _i2 < _total2; _i2++) {\n\t\t\t\t\t_eventList[_i2].split('.').reduce(function (part, e) {\n\t\t\t\t\t\t_window2.default.addEventListener(e, callback, false);\n\t\t\t\t\t\treturn e;\n\t\t\t\t\t}, '');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'globalUnbind',\n\t\tvalue: function globalUnbind(events, callback) {\n\t\t\tvar t = this,\n\t\t\t doc = t.node ? t.node.ownerDocument : _document2.default;\n\n\t\t\tevents = (0, _general.splitEvents)(events, t.id);\n\t\t\tif (events.d) {\n\t\t\t\tvar eventList = events.d.split(' ');\n\t\t\t\tfor (var i = 0, total = eventList.length; i < total; i++) {\n\t\t\t\t\teventList[i].split('.').reduce(function (part, e) {\n\t\t\t\t\t\tdoc.removeEventListener(e, callback, false);\n\t\t\t\t\t\treturn e;\n\t\t\t\t\t}, '');\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (events.w) {\n\t\t\t\tvar _eventList2 = events.w.split(' ');\n\t\t\t\tfor (var _i3 = 0, _total3 = _eventList2.length; _i3 < _total3; _i3++) {\n\t\t\t\t\t_eventList2[_i3].split('.').reduce(function (part, e) {\n\t\t\t\t\t\t_window2.default.removeEventListener(e, callback, false);\n\t\t\t\t\t\treturn e;\n\t\t\t\t\t}, '');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'buildfeatures',\n\t\tvalue: function buildfeatures(player, controls, layers, media) {\n\t\t\tvar t = this;\n\n\t\t\tfor (var i = 0, total = t.options.features.length; i < total; i++) {\n\t\t\t\tvar feature = t.options.features[i];\n\t\t\t\tif (t['build' + feature]) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tt['build' + feature](player, controls, layers, media);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.error('error building ' + feature, e);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'buildposter',\n\t\tvalue: function buildposter(player, controls, layers, media) {\n\t\t\tvar t = this,\n\t\t\t poster = _document2.default.createElement('div');\n\n\t\t\tposter.className = t.options.classPrefix + 'poster ' + t.options.classPrefix + 'layer';\n\t\t\tlayers.appendChild(poster);\n\n\t\t\tvar posterUrl = media.originalNode.getAttribute('poster');\n\n\t\t\tif (player.options.poster !== '') {\n\t\t\t\tif (posterUrl && _constants.IS_IOS) {\n\t\t\t\t\tmedia.originalNode.removeAttribute('poster');\n\t\t\t\t}\n\t\t\t\tposterUrl = player.options.poster;\n\t\t\t}\n\n\t\t\tif (posterUrl) {\n\t\t\t\tt.setPoster(posterUrl);\n\t\t\t} else if (t.media.renderer !== null && typeof t.media.renderer.getPosterUrl === 'function') {\n\t\t\t\tt.setPoster(t.media.renderer.getPosterUrl());\n\t\t\t} else {\n\t\t\t\tposter.style.display = 'none';\n\t\t\t}\n\n\t\t\tmedia.addEventListener('play', function () {\n\t\t\t\tposter.style.display = 'none';\n\t\t\t});\n\n\t\t\tmedia.addEventListener('playing', function () {\n\t\t\t\tposter.style.display = 'none';\n\t\t\t});\n\n\t\t\tif (player.options.showPosterWhenEnded && player.options.autoRewind) {\n\t\t\t\tmedia.addEventListener('ended', function () {\n\t\t\t\t\tposter.style.display = '';\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tmedia.addEventListener('error', function () {\n\t\t\t\tposter.style.display = 'none';\n\t\t\t});\n\n\t\t\tif (player.options.showPosterWhenPaused) {\n\t\t\t\tmedia.addEventListener('pause', function () {\n\t\t\t\t\tif (!player.ended) {\n\t\t\t\t\t\tposter.style.display = '';\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'buildoverlays',\n\t\tvalue: function buildoverlays(player, controls, layers, media) {\n\n\t\t\tif (!player.isVideo) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar t = this,\n\t\t\t loading = _document2.default.createElement('div'),\n\t\t\t error = _document2.default.createElement('div'),\n\t\t\t bigPlay = _document2.default.createElement('div');\n\n\t\t\tloading.style.display = 'none';\n\t\t\tloading.className = t.options.classPrefix + 'overlay ' + t.options.classPrefix + 'layer';\n\t\t\tloading.innerHTML = '
      ' + '
      ' + '
      ';\n\t\t\tlayers.appendChild(loading);\n\n\t\t\terror.style.display = 'none';\n\t\t\terror.className = t.options.classPrefix + 'overlay ' + t.options.classPrefix + 'layer';\n\t\t\terror.innerHTML = '
      ';\n\t\t\tlayers.appendChild(error);\n\n\t\t\tbigPlay.className = t.options.classPrefix + 'overlay ' + t.options.classPrefix + 'layer ' + t.options.classPrefix + 'overlay-play';\n\t\t\tbigPlay.innerHTML = '
      ');\n\t\t\tbigPlay.addEventListener('click', function () {\n\t\t\t\tif (t.options.clickToPlayPause) {\n\n\t\t\t\t\tvar button = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'overlay-button'),\n\t\t\t\t\t pressed = button.getAttribute('aria-pressed');\n\n\t\t\t\t\tif (t.paused) {\n\t\t\t\t\t\tt.play();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tt.pause();\n\t\t\t\t\t}\n\n\t\t\t\t\tbutton.setAttribute('aria-pressed', !!pressed);\n\t\t\t\t\tt.getElement(t.container).focus();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tbigPlay.addEventListener('keydown', function (e) {\n\t\t\t\tvar keyPressed = e.keyCode || e.which || 0;\n\n\t\t\t\tif (keyPressed === 13 || _constants.IS_FIREFOX && keyPressed === 32) {\n\t\t\t\t\tvar event = (0, _general.createEvent)('click', bigPlay);\n\t\t\t\t\tbigPlay.dispatchEvent(event);\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tlayers.appendChild(bigPlay);\n\n\t\t\tif (t.media.rendererName !== null && (/(youtube|facebook)/i.test(t.media.rendererName) && !(t.media.originalNode.getAttribute('poster') || player.options.poster || typeof t.media.renderer.getPosterUrl === 'function' && t.media.renderer.getPosterUrl()) || _constants.IS_STOCK_ANDROID || t.media.originalNode.getAttribute('autoplay'))) {\n\t\t\t\tbigPlay.style.display = 'none';\n\t\t\t}\n\n\t\t\tvar hasError = false;\n\n\t\t\tmedia.addEventListener('play', function () {\n\t\t\t\tbigPlay.style.display = 'none';\n\t\t\t\tloading.style.display = 'none';\n\t\t\t\terror.style.display = 'none';\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('playing', function () {\n\t\t\t\tbigPlay.style.display = 'none';\n\t\t\t\tloading.style.display = 'none';\n\t\t\t\terror.style.display = 'none';\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('seeking', function () {\n\t\t\t\tbigPlay.style.display = 'none';\n\t\t\t\tloading.style.display = '';\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('seeked', function () {\n\t\t\t\tbigPlay.style.display = t.paused && !_constants.IS_STOCK_ANDROID ? '' : 'none';\n\t\t\t\tloading.style.display = 'none';\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('pause', function () {\n\t\t\t\tloading.style.display = 'none';\n\t\t\t\tif (!_constants.IS_STOCK_ANDROID && !hasError) {\n\t\t\t\t\tbigPlay.style.display = '';\n\t\t\t\t}\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('waiting', function () {\n\t\t\t\tloading.style.display = '';\n\t\t\t\thasError = false;\n\t\t\t});\n\n\t\t\tmedia.addEventListener('loadeddata', function () {\n\t\t\t\tloading.style.display = '';\n\n\t\t\t\tif (_constants.IS_ANDROID) {\n\t\t\t\t\tmedia.canplayTimeout = setTimeout(function () {\n\t\t\t\t\t\tif (_document2.default.createEvent) {\n\t\t\t\t\t\t\tvar evt = _document2.default.createEvent('HTMLEvents');\n\t\t\t\t\t\t\tevt.initEvent('canplay', true, true);\n\t\t\t\t\t\t\treturn media.dispatchEvent(evt);\n\t\t\t\t\t\t}\n\t\t\t\t\t}, 300);\n\t\t\t\t}\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('canplay', function () {\n\t\t\t\tloading.style.display = 'none';\n\n\t\t\t\tclearTimeout(media.canplayTimeout);\n\t\t\t\thasError = false;\n\t\t\t});\n\n\t\t\tmedia.addEventListener('error', function (e) {\n\t\t\t\tt._handleError(e, t.media, t.node);\n\t\t\t\tloading.style.display = 'none';\n\t\t\t\tbigPlay.style.display = 'none';\n\t\t\t\thasError = true;\n\t\t\t});\n\n\t\t\tmedia.addEventListener('loadedmetadata', function () {\n\t\t\t\tif (!t.controlsEnabled) {\n\t\t\t\t\tt.enableControls();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tmedia.addEventListener('keydown', function (e) {\n\t\t\t\tt.onkeydown(player, media, e);\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t}\n\t}, {\n\t\tkey: 'buildkeyboard',\n\t\tvalue: function buildkeyboard(player, controls, layers, media) {\n\n\t\t\tvar t = this;\n\n\t\t\tt.getElement(t.container).addEventListener('keydown', function () {\n\t\t\t\tt.keyboardAction = true;\n\t\t\t});\n\n\t\t\tt.globalKeydownCallback = function (event) {\n\t\t\t\tif (!_document2.default.activeElement) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tvar container = _document2.default.activeElement.closest('.' + t.options.classPrefix + 'container'),\n\t\t\t\t target = t.media.closest('.' + t.options.classPrefix + 'container');\n\t\t\t\tt.hasFocus = !!(container && target && container.id === target.id);\n\t\t\t\treturn t.onkeydown(player, media, event);\n\t\t\t};\n\n\t\t\tt.globalClickCallback = function (event) {\n\t\t\t\tt.hasFocus = !!event.target.closest('.' + t.options.classPrefix + 'container');\n\t\t\t};\n\n\t\t\tt.globalBind('keydown', t.globalKeydownCallback);\n\n\t\t\tt.globalBind('click', t.globalClickCallback);\n\t\t}\n\t}, {\n\t\tkey: 'onkeydown',\n\t\tvalue: function onkeydown(player, media, e) {\n\n\t\t\tif (player.hasFocus && player.options.enableKeyboard) {\n\t\t\t\tfor (var i = 0, total = player.options.keyActions.length; i < total; i++) {\n\t\t\t\t\tvar keyAction = player.options.keyActions[i];\n\n\t\t\t\t\tfor (var j = 0, jl = keyAction.keys.length; j < jl; j++) {\n\t\t\t\t\t\tif (e.keyCode === keyAction.keys[j]) {\n\t\t\t\t\t\t\tkeyAction.action(player, media, e.keyCode, e);\n\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn true;\n\t\t}\n\t}, {\n\t\tkey: 'play',\n\t\tvalue: function play() {\n\t\t\treturn this.proxy.play();\n\t\t}\n\t}, {\n\t\tkey: 'pause',\n\t\tvalue: function pause() {\n\t\t\treturn this.proxy.pause();\n\t\t}\n\t}, {\n\t\tkey: 'load',\n\t\tvalue: function load() {\n\t\t\treturn this.proxy.load();\n\t\t}\n\t}, {\n\t\tkey: 'setCurrentTime',\n\t\tvalue: function setCurrentTime(time) {\n\t\t\tthis.proxy.setCurrentTime(time);\n\t\t}\n\t}, {\n\t\tkey: 'getCurrentTime',\n\t\tvalue: function getCurrentTime() {\n\t\t\treturn this.proxy.currentTime;\n\t\t}\n\t}, {\n\t\tkey: 'getDuration',\n\t\tvalue: function getDuration() {\n\t\t\treturn this.proxy.duration;\n\t\t}\n\t}, {\n\t\tkey: 'setVolume',\n\t\tvalue: function setVolume(volume) {\n\t\t\tthis.proxy.volume = volume;\n\t\t}\n\t}, {\n\t\tkey: 'getVolume',\n\t\tvalue: function getVolume() {\n\t\t\treturn this.proxy.getVolume();\n\t\t}\n\t}, {\n\t\tkey: 'setMuted',\n\t\tvalue: function setMuted(value) {\n\t\t\tthis.proxy.setMuted(value);\n\t\t}\n\t}, {\n\t\tkey: 'setSrc',\n\t\tvalue: function setSrc(src) {\n\t\t\tif (!this.controlsEnabled) {\n\t\t\t\tthis.enableControls();\n\t\t\t}\n\t\t\tthis.proxy.setSrc(src);\n\t\t}\n\t}, {\n\t\tkey: 'getSrc',\n\t\tvalue: function getSrc() {\n\t\t\treturn this.proxy.getSrc();\n\t\t}\n\t}, {\n\t\tkey: 'canPlayType',\n\t\tvalue: function canPlayType(type) {\n\t\t\treturn this.proxy.canPlayType(type);\n\t\t}\n\t}, {\n\t\tkey: 'remove',\n\t\tvalue: function remove() {\n\t\t\tvar t = this,\n\t\t\t rendererName = t.media.rendererName,\n\t\t\t src = t.media.originalNode.src;\n\n\t\t\tfor (var featureIndex in t.options.features) {\n\t\t\t\tvar feature = t.options.features[featureIndex];\n\t\t\t\tif (t['clean' + feature]) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tt['clean' + feature](t, t.getElement(t.layers), t.getElement(t.controls), t.media);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.error('error cleaning ' + feature, e);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tvar nativeWidth = t.node.getAttribute('width'),\n\t\t\t nativeHeight = t.node.getAttribute('height');\n\n\t\t\tif (nativeWidth) {\n\t\t\t\tif (nativeWidth.indexOf('%') === -1) {\n\t\t\t\t\tnativeWidth = nativeWidth + 'px';\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tnativeWidth = 'auto';\n\t\t\t}\n\n\t\t\tif (nativeHeight) {\n\t\t\t\tif (nativeHeight.indexOf('%') === -1) {\n\t\t\t\t\tnativeHeight = nativeHeight + 'px';\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tnativeHeight = 'auto';\n\t\t\t}\n\n\t\t\tt.node.style.width = nativeWidth;\n\t\t\tt.node.style.height = nativeHeight;\n\n\t\t\tt.setPlayerSize(0, 0);\n\n\t\t\tif (!t.isDynamic) {\n\t\t\t\t(function () {\n\t\t\t\t\tt.node.setAttribute('controls', true);\n\t\t\t\t\tt.node.setAttribute('id', t.node.getAttribute('id').replace('_' + rendererName, '').replace('_from_mejs', ''));\n\t\t\t\t\tvar poster = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'poster>img');\n\t\t\t\t\tif (poster) {\n\t\t\t\t\t\tt.node.setAttribute('poster', poster.src);\n\t\t\t\t\t}\n\n\t\t\t\t\tdelete t.node.autoplay;\n\n\t\t\t\t\tt.node.setAttribute('src', '');\n\t\t\t\t\tif (t.media.canPlayType((0, _media.getTypeFromFile)(src)) !== '') {\n\t\t\t\t\t\tt.node.setAttribute('src', src);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (rendererName && rendererName.indexOf('iframe') > -1) {\n\t\t\t\t\t\tvar layer = _document2.default.getElementById(t.media.id + '-iframe-overlay');\n\t\t\t\t\t\tlayer.remove();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar node = t.node.cloneNode();\n\t\t\t\t\tnode.style.display = '';\n\t\t\t\t\tt.getElement(t.container).parentNode.insertBefore(node, t.getElement(t.container));\n\t\t\t\t\tt.node.remove();\n\n\t\t\t\t\tif (t.mediaFiles) {\n\t\t\t\t\t\tfor (var i = 0, total = t.mediaFiles.length; i < total; i++) {\n\t\t\t\t\t\t\tvar source = _document2.default.createElement('source');\n\t\t\t\t\t\t\tsource.setAttribute('src', t.mediaFiles[i].src);\n\t\t\t\t\t\t\tsource.setAttribute('type', t.mediaFiles[i].type);\n\t\t\t\t\t\t\tnode.appendChild(source);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (t.trackFiles) {\n\t\t\t\t\t\tvar _loop3 = function _loop3(_i4, _total4) {\n\t\t\t\t\t\t\tvar track = t.trackFiles[_i4];\n\t\t\t\t\t\t\tvar newTrack = _document2.default.createElement('track');\n\t\t\t\t\t\t\tnewTrack.kind = track.kind;\n\t\t\t\t\t\t\tnewTrack.label = track.label;\n\t\t\t\t\t\t\tnewTrack.srclang = track.srclang;\n\t\t\t\t\t\t\tnewTrack.src = track.src;\n\n\t\t\t\t\t\t\tnode.appendChild(newTrack);\n\t\t\t\t\t\t\tnewTrack.addEventListener('load', function () {\n\t\t\t\t\t\t\t\tthis.mode = 'showing';\n\t\t\t\t\t\t\t\tnode.textTracks[_i4].mode = 'showing';\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tfor (var _i4 = 0, _total4 = t.trackFiles.length; _i4 < _total4; _i4++) {\n\t\t\t\t\t\t\t_loop3(_i4, _total4);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tdelete t.node;\n\t\t\t\t\tdelete t.mediaFiles;\n\t\t\t\t\tdelete t.trackFiles;\n\t\t\t\t})();\n\t\t\t} else {\n\t\t\t\tt.getElement(t.container).parentNode.insertBefore(t.node, t.getElement(t.container));\n\t\t\t}\n\n\t\t\tif (t.media.renderer && typeof t.media.renderer.destroy === 'function') {\n\t\t\t\tt.media.renderer.destroy();\n\t\t\t}\n\n\t\t\tdelete _mejs2.default.players[t.id];\n\n\t\t\tif (_typeof(t.getElement(t.container)) === 'object') {\n\t\t\t\tvar offscreen = t.getElement(t.container).parentNode.querySelector('.' + t.options.classPrefix + 'offscreen');\n\t\t\t\tif (offscreen) {\n\t\t\t\t\toffscreen.remove();\n\t\t\t\t}\n\t\t\t\tt.getElement(t.container).remove();\n\t\t\t}\n\t\t\tt.globalUnbind('resize', t.globalResizeCallback);\n\t\t\tt.globalUnbind('keydown', t.globalKeydownCallback);\n\t\t\tt.globalUnbind('click', t.globalClickCallback);\n\n\t\t\tdelete t.media.player;\n\t\t}\n\t}, {\n\t\tkey: 'paused',\n\t\tget: function get() {\n\t\t\treturn this.proxy.paused;\n\t\t}\n\t}, {\n\t\tkey: 'muted',\n\t\tget: function get() {\n\t\t\treturn this.proxy.muted;\n\t\t},\n\t\tset: function set(muted) {\n\t\t\tthis.setMuted(muted);\n\t\t}\n\t}, {\n\t\tkey: 'ended',\n\t\tget: function get() {\n\t\t\treturn this.proxy.ended;\n\t\t}\n\t}, {\n\t\tkey: 'readyState',\n\t\tget: function get() {\n\t\t\treturn this.proxy.readyState;\n\t\t}\n\t}, {\n\t\tkey: 'currentTime',\n\t\tset: function set(time) {\n\t\t\tthis.setCurrentTime(time);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getCurrentTime();\n\t\t}\n\t}, {\n\t\tkey: 'duration',\n\t\tget: function get() {\n\t\t\treturn this.getDuration();\n\t\t}\n\t}, {\n\t\tkey: 'volume',\n\t\tset: function set(volume) {\n\t\t\tthis.setVolume(volume);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getVolume();\n\t\t}\n\t}, {\n\t\tkey: 'src',\n\t\tset: function set(src) {\n\t\t\tthis.setSrc(src);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getSrc();\n\t\t}\n\t}]);\n\n\treturn MediaElementPlayer;\n}();\n\n_window2.default.MediaElementPlayer = MediaElementPlayer;\n_mejs2.default.MediaElementPlayer = MediaElementPlayer;\n\nexports.default = MediaElementPlayer;\n\n},{\"17\":17,\"2\":2,\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"30\":30,\"5\":5,\"6\":6,\"7\":7}],17:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar DefaultPlayer = function () {\n\tfunction DefaultPlayer(player) {\n\t\t_classCallCheck(this, DefaultPlayer);\n\n\t\tthis.media = player.media;\n\t\tthis.isVideo = player.isVideo;\n\t\tthis.classPrefix = player.options.classPrefix;\n\t\tif (player.options.duration) {\n\t\t\tthis._duration = player.options.duration;\n\t\t}\n\t\tthis.createIframeLayer = function () {\n\t\t\treturn player.createIframeLayer();\n\t\t};\n\t\tthis.setPoster = function (url) {\n\t\t\treturn player.setPoster(url);\n\t\t};\n\t\treturn this;\n\t}\n\n\t_createClass(DefaultPlayer, [{\n\t\tkey: 'play',\n\t\tvalue: function play() {\n\t\t\treturn this.media.play();\n\t\t}\n\t}, {\n\t\tkey: 'pause',\n\t\tvalue: function pause() {\n\t\t\treturn this.media.pause();\n\t\t}\n\t}, {\n\t\tkey: 'load',\n\t\tvalue: function load() {\n\t\t\tvar t = this;\n\n\t\t\tif (!t.isLoaded) {\n\t\t\t\tt.media.load();\n\t\t\t}\n\n\t\t\tt.isLoaded = true;\n\t\t}\n\t}, {\n\t\tkey: 'setCurrentTime',\n\t\tvalue: function setCurrentTime(time) {\n\t\t\tvar duration = this.getOriginalDuration();\n\t\t\tif (time > duration) return false;\n\t\t\tthis.media.setCurrentTime(time);\n\t\t\treturn true;\n\t\t}\n\t}, {\n\t\tkey: 'getCurrentTime',\n\t\tvalue: function getCurrentTime() {\n\t\t\treturn this.media.currentTime;\n\t\t}\n\t}, {\n\t\tkey: 'getOriginalDuration',\n\t\tvalue: function getOriginalDuration() {\n\t\t\tvar duration = this.media.getDuration();\n\t\t\tif (duration === Infinity && this.media.seekable && this.media.seekable.length) {\n\t\t\t\tduration = this.media.seekable.end(0);\n\t\t\t}\n\t\t\treturn duration;\n\t\t}\n\t}, {\n\t\tkey: 'getDuration',\n\t\tvalue: function getDuration() {\n\t\t\tvar duration = this.getOriginalDuration();\n\t\t\tif (this._duration) {\n\t\t\t\tvar d = this._duration();\n\t\t\t\tif (d) duration = d;\n\t\t\t}\n\t\t\treturn duration;\n\t\t}\n\t}, {\n\t\tkey: 'setVolume',\n\t\tvalue: function setVolume(volume) {\n\t\t\tthis.media.setVolume(volume);\n\t\t}\n\t}, {\n\t\tkey: 'getVolume',\n\t\tvalue: function getVolume() {\n\t\t\treturn this.media.getVolume();\n\t\t}\n\t}, {\n\t\tkey: 'setMuted',\n\t\tvalue: function setMuted(value) {\n\t\t\tthis.media.setMuted(value);\n\t\t}\n\t}, {\n\t\tkey: 'setSrc',\n\t\tvalue: function setSrc(src) {\n\t\t\tvar t = this,\n\t\t\t layer = document.getElementById(t.media.id + '-iframe-overlay');\n\n\t\t\tif (layer) {\n\t\t\t\tlayer.remove();\n\t\t\t}\n\n\t\t\tt.media.setSrc(src);\n\t\t\tt.createIframeLayer();\n\t\t\tif (t.media.renderer !== null && typeof t.media.renderer.getPosterUrl === 'function') {\n\t\t\t\tt.setPoster(t.media.renderer.getPosterUrl());\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'getSrc',\n\t\tvalue: function getSrc() {\n\t\t\treturn this.media.getSrc();\n\t\t}\n\t}, {\n\t\tkey: 'canPlayType',\n\t\tvalue: function canPlayType(type) {\n\t\t\treturn this.media.canPlayType(type);\n\t\t}\n\t}, {\n\t\tkey: 'paused',\n\t\tget: function get() {\n\t\t\treturn this.media.paused;\n\t\t}\n\t}, {\n\t\tkey: 'muted',\n\t\tset: function set(muted) {\n\t\t\tthis.setMuted(muted);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.media.muted;\n\t\t}\n\t}, {\n\t\tkey: 'ended',\n\t\tget: function get() {\n\t\t\treturn this.media.ended;\n\t\t}\n\t}, {\n\t\tkey: 'readyState',\n\t\tget: function get() {\n\t\t\treturn this.media.readyState;\n\t\t}\n\t}, {\n\t\tkey: 'currentTime',\n\t\tset: function set(time) {\n\t\t\tthis.setCurrentTime(time);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getCurrentTime();\n\t\t}\n\t}, {\n\t\tkey: 'duration',\n\t\tget: function get() {\n\t\t\treturn this.getDuration();\n\t\t}\n\t}, {\n\t\tkey: 'remainingTime',\n\t\tget: function get() {\n\t\t\treturn this.getDuration() - this.currentTime();\n\t\t}\n\t}, {\n\t\tkey: 'volume',\n\t\tset: function set(volume) {\n\t\t\tthis.setVolume(volume);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getVolume();\n\t\t}\n\t}, {\n\t\tkey: 'src',\n\t\tset: function set(src) {\n\t\t\tthis.setSrc(src);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getSrc();\n\t\t}\n\t}]);\n\n\treturn DefaultPlayer;\n}();\n\nexports.default = DefaultPlayer;\n\n\n_window2.default.DefaultPlayer = DefaultPlayer;\n\n},{\"3\":3}],18:[function(_dereq_,module,exports){\n'use strict';\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nif (typeof jQuery !== 'undefined') {\n\t_mejs2.default.$ = jQuery;\n} else if (typeof Zepto !== 'undefined') {\n\t_mejs2.default.$ = Zepto;\n} else if (typeof ender !== 'undefined') {\n\t_mejs2.default.$ = ender;\n}\n\n(function ($) {\n\tif (typeof $ !== 'undefined') {\n\t\t$.fn.mediaelementplayer = function (options) {\n\t\t\tif (options === false) {\n\t\t\t\tthis.each(function () {\n\t\t\t\t\tvar player = $(this).data('mediaelementplayer');\n\t\t\t\t\tif (player) {\n\t\t\t\t\t\tplayer.remove();\n\t\t\t\t\t}\n\t\t\t\t\t$(this).removeData('mediaelementplayer');\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.each(function () {\n\t\t\t\t\t$(this).data('mediaelementplayer', new _player2.default(this, options));\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn this;\n\t\t};\n\n\t\t$(document).ready(function () {\n\t\t\t$('.' + _mejs2.default.MepDefaults.classPrefix + 'player').mediaelementplayer();\n\t\t});\n\t}\n})(_mejs2.default.$);\n\n},{\"16\":16,\"3\":3,\"7\":7}],19:[function(_dereq_,module,exports){\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _media = _dereq_(28);\n\nvar _constants = _dereq_(25);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar NativeDash = {\n\n\tpromise: null,\n\n\tload: function load(settings) {\n\t\tif (typeof dashjs !== 'undefined') {\n\t\t\tNativeDash.promise = new Promise(function (resolve) {\n\t\t\t\tresolve();\n\t\t\t}).then(function () {\n\t\t\t\tNativeDash._createPlayer(settings);\n\t\t\t});\n\t\t} else {\n\t\t\tsettings.options.path = typeof settings.options.path === 'string' ? settings.options.path : 'https://cdn.dashjs.org/latest/dash.all.min.js';\n\n\t\t\tNativeDash.promise = NativeDash.promise || (0, _dom.loadScript)(settings.options.path);\n\t\t\tNativeDash.promise.then(function () {\n\t\t\t\tNativeDash._createPlayer(settings);\n\t\t\t});\n\t\t}\n\n\t\treturn NativeDash.promise;\n\t},\n\n\t_createPlayer: function _createPlayer(settings) {\n\t\tvar player = dashjs.MediaPlayer().create();\n\t\t_window2.default['__ready__' + settings.id](player);\n\t\treturn player;\n\t}\n};\n\nvar DashNativeRenderer = {\n\tname: 'native_dash',\n\toptions: {\n\t\tprefix: 'native_dash',\n\t\tdash: {\n\t\t\tpath: 'https://cdn.dashjs.org/latest/dash.all.min.js',\n\t\t\tdebug: false,\n\t\t\tdrm: {},\n\n\t\t\trobustnessLevel: ''\n\t\t}\n\t},\n\n\tcanPlayType: function canPlayType(type) {\n\t\treturn _constants.HAS_MSE && ['application/dash+xml'].indexOf(type.toLowerCase()) > -1;\n\t},\n\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar originalNode = mediaElement.originalNode,\n\t\t id = mediaElement.id + '_' + options.prefix,\n\t\t autoplay = originalNode.autoplay,\n\t\t children = originalNode.children;\n\n\t\tvar node = null,\n\t\t dashPlayer = null;\n\n\t\toriginalNode.removeAttribute('type');\n\t\tfor (var i = 0, total = children.length; i < total; i++) {\n\t\t\tchildren[i].removeAttribute('type');\n\t\t}\n\n\t\tnode = originalNode.cloneNode(true);\n\t\toptions = Object.assign(options, mediaElement.options);\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t events = _mejs2.default.html5media.events.concat(['click', 'mouseover', 'mouseout']).filter(function (e) {\n\t\t\treturn e !== 'error';\n\t\t}),\n\t\t attachNativeEvents = function attachNativeEvents(e) {\n\t\t\tvar event = (0, _general.createEvent)(e.type, mediaElement);\n\t\t\tmediaElement.dispatchEvent(event);\n\t\t},\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tnode['get' + capName] = function () {\n\t\t\t\treturn dashPlayer !== null ? node[propName] : null;\n\t\t\t};\n\n\t\t\tnode['set' + capName] = function (value) {\n\t\t\t\tif (_mejs2.default.html5media.readOnlyProperties.indexOf(propName) === -1) {\n\t\t\t\t\tif (propName === 'src') {\n\t\t\t\t\t\tvar source = (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.src ? value.src : value;\n\t\t\t\t\t\tnode[propName] = source;\n\t\t\t\t\t\tif (dashPlayer !== null) {\n\t\t\t\t\t\t\tdashPlayer.reset();\n\t\t\t\t\t\t\tfor (var _i = 0, _total = events.length; _i < _total; _i++) {\n\t\t\t\t\t\t\t\tnode.removeEventListener(events[_i], attachNativeEvents);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdashPlayer = NativeDash._createPlayer({\n\t\t\t\t\t\t\t\toptions: options.dash,\n\t\t\t\t\t\t\t\tid: id\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\tif (value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && _typeof(value.drm) === 'object') {\n\t\t\t\t\t\t\t\tdashPlayer.setProtectionData(value.drm);\n\t\t\t\t\t\t\t\tif ((0, _general.isString)(options.dash.robustnessLevel) && options.dash.robustnessLevel) {\n\t\t\t\t\t\t\t\t\tdashPlayer.getProtectionController().setRobustnessLevel(options.dash.robustnessLevel);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdashPlayer.attachSource(source);\n\t\t\t\t\t\t\tif (autoplay) {\n\t\t\t\t\t\t\t\tdashPlayer.play();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnode[propName] = value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var _i2 = 0, _total2 = props.length; _i2 < _total2; _i2++) {\n\t\t\tassignGettersSetters(props[_i2]);\n\t\t}\n\n\t\t_window2.default['__ready__' + id] = function (_dashPlayer) {\n\t\t\tmediaElement.dashPlayer = dashPlayer = _dashPlayer;\n\n\t\t\tvar dashEvents = dashjs.MediaPlayer.events,\n\t\t\t assignEvents = function assignEvents(eventName) {\n\t\t\t\tif (eventName === 'loadedmetadata') {\n\t\t\t\t\tdashPlayer.initialize();\n\t\t\t\t\tdashPlayer.attachView(node);\n\t\t\t\t\tdashPlayer.setAutoPlay(false);\n\n\t\t\t\t\tif (_typeof(options.dash.drm) === 'object' && !_mejs2.default.Utils.isObjectEmpty(options.dash.drm)) {\n\t\t\t\t\t\tdashPlayer.setProtectionData(options.dash.drm);\n\t\t\t\t\t\tif ((0, _general.isString)(options.dash.robustnessLevel) && options.dash.robustnessLevel) {\n\t\t\t\t\t\t\tdashPlayer.getProtectionController().setRobustnessLevel(options.dash.robustnessLevel);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tdashPlayer.attachSource(node.getSrc());\n\t\t\t\t}\n\n\t\t\t\tnode.addEventListener(eventName, attachNativeEvents);\n\t\t\t};\n\n\t\t\tfor (var _i3 = 0, _total3 = events.length; _i3 < _total3; _i3++) {\n\t\t\t\tassignEvents(events[_i3]);\n\t\t\t}\n\n\t\t\tvar assignMdashEvents = function assignMdashEvents(e) {\n\t\t\t\tif (e.type.toLowerCase() === 'error') {\n\t\t\t\t\tmediaElement.generateError(e.message, node.src);\n\t\t\t\t\tconsole.error(e);\n\t\t\t\t} else {\n\t\t\t\t\tvar _event = (0, _general.createEvent)(e.type, mediaElement);\n\t\t\t\t\t_event.data = e;\n\t\t\t\t\tmediaElement.dispatchEvent(_event);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tfor (var eventType in dashEvents) {\n\t\t\t\tif (dashEvents.hasOwnProperty(eventType)) {\n\t\t\t\t\tdashPlayer.on(dashEvents[eventType], function (e) {\n\t\t\t\t\t\treturn assignMdashEvents(e);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tif (mediaFiles && mediaFiles.length > 0) {\n\t\t\tfor (var _i4 = 0, _total4 = mediaFiles.length; _i4 < _total4; _i4++) {\n\t\t\t\tif (_renderer.renderer.renderers[options.prefix].canPlayType(mediaFiles[_i4].type)) {\n\t\t\t\t\tnode.setAttribute('src', mediaFiles[_i4].src);\n\t\t\t\t\tif (typeof mediaFiles[_i4].drm !== 'undefined') {\n\t\t\t\t\t\toptions.dash.drm = mediaFiles[_i4].drm;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tnode.setAttribute('id', id);\n\n\t\toriginalNode.parentNode.insertBefore(node, originalNode);\n\t\toriginalNode.autoplay = false;\n\t\toriginalNode.style.display = 'none';\n\n\t\tnode.setSize = function (width, height) {\n\t\t\tnode.style.width = width + 'px';\n\t\t\tnode.style.height = height + 'px';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.hide = function () {\n\t\t\tnode.pause();\n\t\t\tnode.style.display = 'none';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.show = function () {\n\t\t\tnode.style.display = '';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.destroy = function () {\n\t\t\tif (dashPlayer !== null) {\n\t\t\t\tdashPlayer.reset();\n\t\t\t}\n\t\t};\n\n\t\tvar event = (0, _general.createEvent)('rendererready', node);\n\t\tmediaElement.dispatchEvent(event);\n\n\t\tmediaElement.promises.push(NativeDash.load({\n\t\t\toptions: options.dash,\n\t\t\tid: id\n\t\t}));\n\n\t\treturn node;\n\t}\n};\n\n_media.typeChecks.push(function (url) {\n\treturn ~url.toLowerCase().indexOf('.mpd') ? 'application/dash+xml' : null;\n});\n\n_renderer.renderer.add(DashNativeRenderer);\n\n},{\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"7\":7,\"8\":8}],20:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.PluginDetector = undefined;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _constants = _dereq_(25);\n\nvar _media = _dereq_(28);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar PluginDetector = exports.PluginDetector = {\n\tplugins: [],\n\n\thasPluginVersion: function hasPluginVersion(plugin, v) {\n\t\tvar pv = PluginDetector.plugins[plugin];\n\t\tv[1] = v[1] || 0;\n\t\tv[2] = v[2] || 0;\n\t\treturn pv[0] > v[0] || pv[0] === v[0] && pv[1] > v[1] || pv[0] === v[0] && pv[1] === v[1] && pv[2] >= v[2];\n\t},\n\n\taddPlugin: function addPlugin(p, pluginName, mimeType, activeX, axDetect) {\n\t\tPluginDetector.plugins[p] = PluginDetector.detectPlugin(pluginName, mimeType, activeX, axDetect);\n\t},\n\n\tdetectPlugin: function detectPlugin(pluginName, mimeType, activeX, axDetect) {\n\n\t\tvar version = [0, 0, 0],\n\t\t description = void 0,\n\t\t ax = void 0;\n\n\t\tif (_constants.NAV.plugins !== null && _constants.NAV.plugins !== undefined && _typeof(_constants.NAV.plugins[pluginName]) === 'object') {\n\t\t\tdescription = _constants.NAV.plugins[pluginName].description;\n\t\t\tif (description && !(typeof _constants.NAV.mimeTypes !== 'undefined' && _constants.NAV.mimeTypes[mimeType] && !_constants.NAV.mimeTypes[mimeType].enabledPlugin)) {\n\t\t\t\tversion = description.replace(pluginName, '').replace(/^\\s+/, '').replace(/\\sr/gi, '.').split('.');\n\t\t\t\tfor (var i = 0, total = version.length; i < total; i++) {\n\t\t\t\t\tversion[i] = parseInt(version[i].match(/\\d+/), 10);\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (_window2.default.ActiveXObject !== undefined) {\n\t\t\ttry {\n\t\t\t\tax = new ActiveXObject(activeX);\n\t\t\t\tif (ax) {\n\t\t\t\t\tversion = axDetect(ax);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t\n\t\t\t}\n\t\t}\n\t\treturn version;\n\t}\n};\n\nPluginDetector.addPlugin('flash', 'Shockwave Flash', 'application/x-shockwave-flash', 'ShockwaveFlash.ShockwaveFlash', function (ax) {\n\tvar version = [],\n\t d = ax.GetVariable(\"$version\");\n\n\tif (d) {\n\t\td = d.split(\" \")[1].split(\",\");\n\t\tversion = [parseInt(d[0], 10), parseInt(d[1], 10), parseInt(d[2], 10)];\n\t}\n\treturn version;\n});\n\nvar FlashMediaElementRenderer = {\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar flash = {};\n\t\tvar isActive = false;\n\n\t\tflash.options = options;\n\t\tflash.id = mediaElement.id + '_' + flash.options.prefix;\n\t\tflash.mediaElement = mediaElement;\n\t\tflash.flashState = {};\n\t\tflash.flashApi = null;\n\t\tflash.flashApiStack = [];\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\t\tflash.flashState[propName] = null;\n\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tflash['get' + capName] = function () {\n\t\t\t\tif (flash.flashApi !== null) {\n\t\t\t\t\tif (typeof flash.flashApi['get_' + propName] === 'function') {\n\t\t\t\t\t\tvar value = flash.flashApi['get_' + propName]();\n\n\t\t\t\t\t\tif (propName === 'buffered') {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstart: function start() {\n\t\t\t\t\t\t\t\t\treturn 0;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tend: function end() {\n\t\t\t\t\t\t\t\t\treturn value;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tlength: 1\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn value;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tflash['set' + capName] = function (value) {\n\t\t\t\tif (propName === 'src') {\n\t\t\t\t\tvalue = (0, _media.absolutizeUrl)(value);\n\t\t\t\t}\n\n\t\t\t\tif (flash.flashApi !== null && flash.flashApi['set_' + propName] !== undefined) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tflash.flashApi['set_' + propName](value);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tflash.flashApiStack.push({\n\t\t\t\t\t\ttype: 'set',\n\t\t\t\t\t\tpropName: propName,\n\t\t\t\t\t\tvalue: value\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var i = 0, total = props.length; i < total; i++) {\n\t\t\tassignGettersSetters(props[i]);\n\t\t}\n\n\t\tvar methods = _mejs2.default.html5media.methods,\n\t\t assignMethods = function assignMethods(methodName) {\n\t\t\tflash[methodName] = function () {\n\t\t\t\tif (isActive) {\n\t\t\t\t\tif (flash.flashApi !== null) {\n\t\t\t\t\t\tif (flash.flashApi['fire_' + methodName]) {\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tflash.flashApi['fire_' + methodName]();\n\t\t\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tflash.flashApiStack.push({\n\t\t\t\t\t\t\ttype: 'call',\n\t\t\t\t\t\t\tmethodName: methodName\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\t\tmethods.push('stop');\n\t\tfor (var _i = 0, _total = methods.length; _i < _total; _i++) {\n\t\t\tassignMethods(methods[_i]);\n\t\t}\n\n\t\tvar initEvents = ['rendererready'];\n\n\t\tfor (var _i2 = 0, _total2 = initEvents.length; _i2 < _total2; _i2++) {\n\t\t\tvar event = (0, _general.createEvent)(initEvents[_i2], flash);\n\t\t\tmediaElement.dispatchEvent(event);\n\t\t}\n\n\t\t_window2.default['__ready__' + flash.id] = function () {\n\n\t\t\tflash.flashReady = true;\n\t\t\tflash.flashApi = _document2.default.getElementById('__' + flash.id);\n\n\t\t\tif (flash.flashApiStack.length) {\n\t\t\t\tfor (var _i3 = 0, _total3 = flash.flashApiStack.length; _i3 < _total3; _i3++) {\n\t\t\t\t\tvar stackItem = flash.flashApiStack[_i3];\n\n\t\t\t\t\tif (stackItem.type === 'set') {\n\t\t\t\t\t\tvar propName = stackItem.propName,\n\t\t\t\t\t\t capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\t\t\t\tflash['set' + capName](stackItem.value);\n\t\t\t\t\t} else if (stackItem.type === 'call') {\n\t\t\t\t\t\tflash[stackItem.methodName]();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t_window2.default['__event__' + flash.id] = function (eventName, message) {\n\t\t\tvar event = (0, _general.createEvent)(eventName, flash);\n\t\t\tif (message) {\n\t\t\t\ttry {\n\t\t\t\t\tevent.data = JSON.parse(message);\n\t\t\t\t\tevent.details.data = JSON.parse(message);\n\t\t\t\t} catch (e) {\n\t\t\t\t\tevent.message = message;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tflash.mediaElement.dispatchEvent(event);\n\t\t};\n\n\t\tflash.flashWrapper = _document2.default.createElement('div');\n\n\t\tif (['always', 'sameDomain'].indexOf(flash.options.shimScriptAccess) === -1) {\n\t\t\tflash.options.shimScriptAccess = 'sameDomain';\n\t\t}\n\n\t\tvar autoplay = mediaElement.originalNode.autoplay,\n\t\t flashVars = ['uid=' + flash.id, 'autoplay=' + autoplay, 'allowScriptAccess=' + flash.options.shimScriptAccess, 'preload=' + (mediaElement.originalNode.getAttribute('preload') || '')],\n\t\t isVideo = mediaElement.originalNode !== null && mediaElement.originalNode.tagName.toLowerCase() === 'video',\n\t\t flashHeight = isVideo ? mediaElement.originalNode.height : 1,\n\t\t flashWidth = isVideo ? mediaElement.originalNode.width : 1;\n\n\t\tif (mediaElement.originalNode.getAttribute('src')) {\n\t\t\tflashVars.push('src=' + mediaElement.originalNode.getAttribute('src'));\n\t\t}\n\n\t\tif (flash.options.enablePseudoStreaming === true) {\n\t\t\tflashVars.push('pseudostreamstart=' + flash.options.pseudoStreamingStartQueryParam);\n\t\t\tflashVars.push('pseudostreamtype=' + flash.options.pseudoStreamingType);\n\t\t}\n\n\t\tif (flash.options.streamDelimiter) {\n\t\t\tflashVars.push('streamdelimiter=' + encodeURIComponent(flash.options.streamDelimiter));\n\t\t}\n\n\t\tif (flash.options.proxyType) {\n\t\t\tflashVars.push('proxytype=' + flash.options.proxyType);\n\t\t}\n\n\t\tmediaElement.appendChild(flash.flashWrapper);\n\t\tmediaElement.originalNode.style.display = 'none';\n\n\t\tvar settings = [];\n\n\t\tif (_constants.IS_IE || _constants.IS_EDGE) {\n\t\t\tvar specialIEContainer = _document2.default.createElement('div');\n\t\t\tflash.flashWrapper.appendChild(specialIEContainer);\n\n\t\t\tif (_constants.IS_EDGE) {\n\t\t\t\tsettings = ['type=\"application/x-shockwave-flash\"', 'data=\"' + flash.options.pluginPath + flash.options.filename + '\"', 'id=\"__' + flash.id + '\"', 'width=\"' + flashWidth + '\"', 'height=\"' + flashHeight + '\\'\"'];\n\t\t\t} else {\n\t\t\t\tsettings = ['classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"', 'codebase=\"//download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab\"', 'id=\"__' + flash.id + '\"', 'width=\"' + flashWidth + '\"', 'height=\"' + flashHeight + '\"'];\n\t\t\t}\n\n\t\t\tif (!isVideo) {\n\t\t\t\tsettings.push('style=\"clip: rect(0 0 0 0); position: absolute;\"');\n\t\t\t}\n\n\t\t\tspecialIEContainer.outerHTML = '' + ('') + ('') + '' + '' + '' + ('') + '' + ('
      ' + _i18n2.default.t('mejs.install-flash') + '
      ') + '
      ';\n\t\t} else {\n\n\t\t\tsettings = ['id=\"__' + flash.id + '\"', 'name=\"__' + flash.id + '\"', 'play=\"true\"', 'loop=\"false\"', 'quality=\"high\"', 'bgcolor=\"#000000\"', 'wmode=\"transparent\"', 'allowScriptAccess=\"' + flash.options.shimScriptAccess + '\"', 'allowFullScreen=\"true\"', 'type=\"application/x-shockwave-flash\"', 'pluginspage=\"//www.macromedia.com/go/getflashplayer\"', 'src=\"' + flash.options.pluginPath + flash.options.filename + '\"', 'flashvars=\"' + flashVars.join('&') + '\"'];\n\n\t\t\tif (isVideo) {\n\t\t\t\tsettings.push('width=\"' + flashWidth + '\"');\n\t\t\t\tsettings.push('height=\"' + flashHeight + '\"');\n\t\t\t} else {\n\t\t\t\tsettings.push('style=\"position: fixed; left: -9999em; top: -9999em;\"');\n\t\t\t}\n\n\t\t\tflash.flashWrapper.innerHTML = '';\n\t\t}\n\n\t\tflash.flashNode = flash.flashWrapper.lastChild;\n\n\t\tflash.hide = function () {\n\t\t\tisActive = false;\n\t\t\tif (isVideo) {\n\t\t\t\tflash.flashNode.style.display = 'none';\n\t\t\t}\n\t\t};\n\t\tflash.show = function () {\n\t\t\tisActive = true;\n\t\t\tif (isVideo) {\n\t\t\t\tflash.flashNode.style.display = '';\n\t\t\t}\n\t\t};\n\t\tflash.setSize = function (width, height) {\n\t\t\tflash.flashNode.style.width = width + 'px';\n\t\t\tflash.flashNode.style.height = height + 'px';\n\n\t\t\tif (flash.flashApi !== null && typeof flash.flashApi.fire_setSize === 'function') {\n\t\t\t\tflash.flashApi.fire_setSize(width, height);\n\t\t\t}\n\t\t};\n\n\t\tflash.destroy = function () {\n\t\t\tflash.flashNode.remove();\n\t\t};\n\n\t\tif (mediaFiles && mediaFiles.length > 0) {\n\t\t\tfor (var _i4 = 0, _total4 = mediaFiles.length; _i4 < _total4; _i4++) {\n\t\t\t\tif (_renderer.renderer.renderers[options.prefix].canPlayType(mediaFiles[_i4].type)) {\n\t\t\t\t\tflash.setSrc(mediaFiles[_i4].src);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn flash;\n\t}\n};\n\nvar hasFlash = PluginDetector.hasPluginVersion('flash', [10, 0, 0]);\n\nif (hasFlash) {\n\t_media.typeChecks.push(function (url) {\n\t\turl = url.toLowerCase();\n\n\t\tif (url.startsWith('rtmp')) {\n\t\t\tif (~url.indexOf('.mp3')) {\n\t\t\t\treturn 'audio/rtmp';\n\t\t\t} else {\n\t\t\t\treturn 'video/rtmp';\n\t\t\t}\n\t\t} else if (/\\.og(a|g)/i.test(url)) {\n\t\t\treturn 'audio/ogg';\n\t\t} else if (~url.indexOf('.m3u8')) {\n\t\t\treturn 'application/x-mpegURL';\n\t\t} else if (~url.indexOf('.mpd')) {\n\t\t\treturn 'application/dash+xml';\n\t\t} else if (~url.indexOf('.flv')) {\n\t\t\treturn 'video/flv';\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t});\n\n\tvar FlashMediaElementVideoRenderer = {\n\t\tname: 'flash_video',\n\t\toptions: {\n\t\t\tprefix: 'flash_video',\n\t\t\tfilename: 'mediaelement-flash-video.swf',\n\t\t\tenablePseudoStreaming: false,\n\n\t\t\tpseudoStreamingStartQueryParam: 'start',\n\n\t\t\tpseudoStreamingType: 'byte',\n\n\t\t\tproxyType: '',\n\n\t\t\tstreamDelimiter: ''\n\t\t},\n\n\t\tcanPlayType: function canPlayType(type) {\n\t\t\treturn ~['video/mp4', 'video/rtmp', 'audio/rtmp', 'rtmp/mp4', 'audio/mp4', 'video/flv', 'video/x-flv'].indexOf(type.toLowerCase());\n\t\t},\n\n\t\tcreate: FlashMediaElementRenderer.create\n\n\t};\n\t_renderer.renderer.add(FlashMediaElementVideoRenderer);\n\n\tvar FlashMediaElementHlsVideoRenderer = {\n\t\tname: 'flash_hls',\n\t\toptions: {\n\t\t\tprefix: 'flash_hls',\n\t\t\tfilename: 'mediaelement-flash-video-hls.swf'\n\t\t},\n\n\t\tcanPlayType: function canPlayType(type) {\n\t\t\treturn ~['application/x-mpegurl', 'application/vnd.apple.mpegurl', 'audio/mpegurl', 'audio/hls', 'video/hls'].indexOf(type.toLowerCase());\n\t\t},\n\n\t\tcreate: FlashMediaElementRenderer.create\n\t};\n\t_renderer.renderer.add(FlashMediaElementHlsVideoRenderer);\n\n\tvar FlashMediaElementMdashVideoRenderer = {\n\t\tname: 'flash_dash',\n\t\toptions: {\n\t\t\tprefix: 'flash_dash',\n\t\t\tfilename: 'mediaelement-flash-video-mdash.swf'\n\t\t},\n\n\t\tcanPlayType: function canPlayType(type) {\n\t\t\treturn ~['application/dash+xml'].indexOf(type.toLowerCase());\n\t\t},\n\n\t\tcreate: FlashMediaElementRenderer.create\n\t};\n\t_renderer.renderer.add(FlashMediaElementMdashVideoRenderer);\n\n\tvar FlashMediaElementAudioRenderer = {\n\t\tname: 'flash_audio',\n\t\toptions: {\n\t\t\tprefix: 'flash_audio',\n\t\t\tfilename: 'mediaelement-flash-audio.swf'\n\t\t},\n\n\t\tcanPlayType: function canPlayType(type) {\n\t\t\treturn ~['audio/mp3'].indexOf(type.toLowerCase());\n\t\t},\n\n\t\tcreate: FlashMediaElementRenderer.create\n\t};\n\t_renderer.renderer.add(FlashMediaElementAudioRenderer);\n\n\tvar FlashMediaElementAudioOggRenderer = {\n\t\tname: 'flash_audio_ogg',\n\t\toptions: {\n\t\t\tprefix: 'flash_audio_ogg',\n\t\t\tfilename: 'mediaelement-flash-audio-ogg.swf'\n\t\t},\n\n\t\tcanPlayType: function canPlayType(type) {\n\t\t\treturn ~['audio/ogg', 'audio/oga', 'audio/ogv'].indexOf(type.toLowerCase());\n\t\t},\n\n\t\tcreate: FlashMediaElementRenderer.create\n\t};\n\t_renderer.renderer.add(FlashMediaElementAudioOggRenderer);\n}\n\n},{\"2\":2,\"25\":25,\"27\":27,\"28\":28,\"3\":3,\"5\":5,\"7\":7,\"8\":8}],21:[function(_dereq_,module,exports){\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _constants = _dereq_(25);\n\nvar _media = _dereq_(28);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar NativeFlv = {\n\n\tpromise: null,\n\n\tload: function load(settings) {\n\t\tif (typeof flvjs !== 'undefined') {\n\t\t\tNativeFlv.promise = new Promise(function (resolve) {\n\t\t\t\tresolve();\n\t\t\t}).then(function () {\n\t\t\t\tNativeFlv._createPlayer(settings);\n\t\t\t});\n\t\t} else {\n\t\t\tsettings.options.path = typeof settings.options.path === 'string' ? settings.options.path : 'https://cdn.jsdelivr.net/npm/flv.js@latest';\n\n\t\t\tNativeFlv.promise = NativeFlv.promise || (0, _dom.loadScript)(settings.options.path);\n\t\t\tNativeFlv.promise.then(function () {\n\t\t\t\tNativeFlv._createPlayer(settings);\n\t\t\t});\n\t\t}\n\n\t\treturn NativeFlv.promise;\n\t},\n\n\t_createPlayer: function _createPlayer(settings) {\n\t\tflvjs.LoggingControl.enableDebug = settings.options.debug;\n\t\tflvjs.LoggingControl.enableVerbose = settings.options.debug;\n\t\tvar player = flvjs.createPlayer(settings.options, settings.configs);\n\t\t_window2.default['__ready__' + settings.id](player);\n\t\treturn player;\n\t}\n};\n\nvar FlvNativeRenderer = {\n\tname: 'native_flv',\n\toptions: {\n\t\tprefix: 'native_flv',\n\t\tflv: {\n\t\t\tpath: 'https://cdn.jsdelivr.net/npm/flv.js@latest',\n\n\t\t\tcors: true,\n\t\t\tdebug: false\n\t\t}\n\t},\n\n\tcanPlayType: function canPlayType(type) {\n\t\treturn _constants.HAS_MSE && ['video/x-flv', 'video/flv'].indexOf(type.toLowerCase()) > -1;\n\t},\n\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar originalNode = mediaElement.originalNode,\n\t\t id = mediaElement.id + '_' + options.prefix;\n\n\t\tvar node = null,\n\t\t flvPlayer = null;\n\n\t\tnode = originalNode.cloneNode(true);\n\t\toptions = Object.assign(options, mediaElement.options);\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t events = _mejs2.default.html5media.events.concat(['click', 'mouseover', 'mouseout']).filter(function (e) {\n\t\t\treturn e !== 'error';\n\t\t}),\n\t\t attachNativeEvents = function attachNativeEvents(e) {\n\t\t\tvar event = (0, _general.createEvent)(e.type, mediaElement);\n\t\t\tmediaElement.dispatchEvent(event);\n\t\t},\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tnode['get' + capName] = function () {\n\t\t\t\treturn flvPlayer !== null ? node[propName] : null;\n\t\t\t};\n\n\t\t\tnode['set' + capName] = function (value) {\n\t\t\t\tif (_mejs2.default.html5media.readOnlyProperties.indexOf(propName) === -1) {\n\t\t\t\t\tif (propName === 'src') {\n\t\t\t\t\t\tnode[propName] = (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.src ? value.src : value;\n\t\t\t\t\t\tif (flvPlayer !== null) {\n\t\t\t\t\t\t\tvar _flvOptions = {};\n\t\t\t\t\t\t\t_flvOptions.type = 'flv';\n\t\t\t\t\t\t\t_flvOptions.url = value;\n\t\t\t\t\t\t\t_flvOptions.cors = options.flv.cors;\n\t\t\t\t\t\t\t_flvOptions.debug = options.flv.debug;\n\t\t\t\t\t\t\t_flvOptions.path = options.flv.path;\n\t\t\t\t\t\t\tvar _flvConfigs = options.flv.configs;\n\n\t\t\t\t\t\t\tflvPlayer.destroy();\n\t\t\t\t\t\t\tfor (var i = 0, total = events.length; i < total; i++) {\n\t\t\t\t\t\t\t\tnode.removeEventListener(events[i], attachNativeEvents);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tflvPlayer = NativeFlv._createPlayer({\n\t\t\t\t\t\t\t\toptions: _flvOptions,\n\t\t\t\t\t\t\t\tconfigs: _flvConfigs,\n\t\t\t\t\t\t\t\tid: id\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tflvPlayer.attachMediaElement(node);\n\t\t\t\t\t\t\tflvPlayer.load();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnode[propName] = value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var i = 0, total = props.length; i < total; i++) {\n\t\t\tassignGettersSetters(props[i]);\n\t\t}\n\n\t\t_window2.default['__ready__' + id] = function (_flvPlayer) {\n\t\t\tmediaElement.flvPlayer = flvPlayer = _flvPlayer;\n\n\t\t\tvar flvEvents = flvjs.Events,\n\t\t\t assignEvents = function assignEvents(eventName) {\n\t\t\t\tif (eventName === 'loadedmetadata') {\n\t\t\t\t\tflvPlayer.unload();\n\t\t\t\t\tflvPlayer.detachMediaElement();\n\t\t\t\t\tflvPlayer.attachMediaElement(node);\n\t\t\t\t\tflvPlayer.load();\n\t\t\t\t}\n\n\t\t\t\tnode.addEventListener(eventName, attachNativeEvents);\n\t\t\t};\n\n\t\t\tfor (var _i = 0, _total = events.length; _i < _total; _i++) {\n\t\t\t\tassignEvents(events[_i]);\n\t\t\t}\n\n\t\t\tvar assignFlvEvents = function assignFlvEvents(name, data) {\n\t\t\t\tif (name === 'error') {\n\t\t\t\t\tvar message = data[0] + ': ' + data[1] + ' ' + data[2].msg;\n\t\t\t\t\tmediaElement.generateError(message, node.src);\n\t\t\t\t} else {\n\t\t\t\t\tvar _event = (0, _general.createEvent)(name, mediaElement);\n\t\t\t\t\t_event.data = data;\n\t\t\t\t\tmediaElement.dispatchEvent(_event);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tvar _loop = function _loop(eventType) {\n\t\t\t\tif (flvEvents.hasOwnProperty(eventType)) {\n\t\t\t\t\tflvPlayer.on(flvEvents[eventType], function () {\n\t\t\t\t\t\tfor (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t\t\t\t\t\t\targs[_key] = arguments[_key];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn assignFlvEvents(flvEvents[eventType], args);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tfor (var eventType in flvEvents) {\n\t\t\t\t_loop(eventType);\n\t\t\t}\n\t\t};\n\n\t\tif (mediaFiles && mediaFiles.length > 0) {\n\t\t\tfor (var _i2 = 0, _total2 = mediaFiles.length; _i2 < _total2; _i2++) {\n\t\t\t\tif (_renderer.renderer.renderers[options.prefix].canPlayType(mediaFiles[_i2].type)) {\n\t\t\t\t\tnode.setAttribute('src', mediaFiles[_i2].src);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tnode.setAttribute('id', id);\n\n\t\toriginalNode.parentNode.insertBefore(node, originalNode);\n\t\toriginalNode.autoplay = false;\n\t\toriginalNode.style.display = 'none';\n\n\t\tvar flvOptions = {};\n\t\tflvOptions.type = 'flv';\n\t\tflvOptions.url = node.src;\n\t\tflvOptions.cors = options.flv.cors;\n\t\tflvOptions.debug = options.flv.debug;\n\t\tflvOptions.path = options.flv.path;\n\t\tvar flvConfigs = options.flv.configs;\n\n\t\tnode.setSize = function (width, height) {\n\t\t\tnode.style.width = width + 'px';\n\t\t\tnode.style.height = height + 'px';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.hide = function () {\n\t\t\tif (flvPlayer !== null) {\n\t\t\t\tflvPlayer.pause();\n\t\t\t}\n\t\t\tnode.style.display = 'none';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.show = function () {\n\t\t\tnode.style.display = '';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.destroy = function () {\n\t\t\tif (flvPlayer !== null) {\n\t\t\t\tflvPlayer.destroy();\n\t\t\t}\n\t\t};\n\n\t\tvar event = (0, _general.createEvent)('rendererready', node);\n\t\tmediaElement.dispatchEvent(event);\n\n\t\tmediaElement.promises.push(NativeFlv.load({\n\t\t\toptions: flvOptions,\n\t\t\tconfigs: flvConfigs,\n\t\t\tid: id\n\t\t}));\n\n\t\treturn node;\n\t}\n};\n\n_media.typeChecks.push(function (url) {\n\treturn ~url.toLowerCase().indexOf('.flv') ? 'video/flv' : null;\n});\n\n_renderer.renderer.add(FlvNativeRenderer);\n\n},{\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"7\":7,\"8\":8}],22:[function(_dereq_,module,exports){\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _constants = _dereq_(25);\n\nvar _media = _dereq_(28);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar NativeHls = {\n\n\tpromise: null,\n\n\tload: function load(settings) {\n\t\tif (typeof Hls !== 'undefined') {\n\t\t\tNativeHls.promise = new Promise(function (resolve) {\n\t\t\t\tresolve();\n\t\t\t}).then(function () {\n\t\t\t\tNativeHls._createPlayer(settings);\n\t\t\t});\n\t\t} else {\n\t\t\tsettings.options.path = typeof settings.options.path === 'string' ? settings.options.path : 'https://cdn.jsdelivr.net/npm/hls.js@latest';\n\n\t\t\tNativeHls.promise = NativeHls.promise || (0, _dom.loadScript)(settings.options.path);\n\t\t\tNativeHls.promise.then(function () {\n\t\t\t\tNativeHls._createPlayer(settings);\n\t\t\t});\n\t\t}\n\n\t\treturn NativeHls.promise;\n\t},\n\n\t_createPlayer: function _createPlayer(settings) {\n\t\tvar player = new Hls(settings.options);\n\t\t_window2.default['__ready__' + settings.id](player);\n\t\treturn player;\n\t}\n};\n\nvar HlsNativeRenderer = {\n\tname: 'native_hls',\n\toptions: {\n\t\tprefix: 'native_hls',\n\t\thls: {\n\t\t\tpath: 'https://cdn.jsdelivr.net/npm/hls.js@latest',\n\n\t\t\tautoStartLoad: false,\n\t\t\tdebug: false\n\t\t}\n\t},\n\n\tcanPlayType: function canPlayType(type) {\n\t\treturn _constants.HAS_MSE && ['application/x-mpegurl', 'application/vnd.apple.mpegurl', 'audio/mpegurl', 'audio/hls', 'video/hls'].indexOf(type.toLowerCase()) > -1;\n\t},\n\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar originalNode = mediaElement.originalNode,\n\t\t id = mediaElement.id + '_' + options.prefix,\n\t\t preload = originalNode.getAttribute('preload'),\n\t\t autoplay = originalNode.autoplay;\n\n\t\tvar hlsPlayer = null,\n\t\t node = null,\n\t\t index = 0,\n\t\t total = mediaFiles.length;\n\n\t\tnode = originalNode.cloneNode(true);\n\t\toptions = Object.assign(options, mediaElement.options);\n\t\toptions.hls.autoStartLoad = preload && preload !== 'none' || autoplay;\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t events = _mejs2.default.html5media.events.concat(['click', 'mouseover', 'mouseout']).filter(function (e) {\n\t\t\treturn e !== 'error';\n\t\t}),\n\t\t attachNativeEvents = function attachNativeEvents(e) {\n\t\t\tvar event = (0, _general.createEvent)(e.type, mediaElement);\n\t\t\tmediaElement.dispatchEvent(event);\n\t\t},\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tnode['get' + capName] = function () {\n\t\t\t\treturn hlsPlayer !== null ? node[propName] : null;\n\t\t\t};\n\n\t\t\tnode['set' + capName] = function (value) {\n\t\t\t\tif (_mejs2.default.html5media.readOnlyProperties.indexOf(propName) === -1) {\n\t\t\t\t\tif (propName === 'src') {\n\t\t\t\t\t\tnode[propName] = (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.src ? value.src : value;\n\t\t\t\t\t\tif (hlsPlayer !== null) {\n\t\t\t\t\t\t\thlsPlayer.destroy();\n\t\t\t\t\t\t\tfor (var i = 0, _total = events.length; i < _total; i++) {\n\t\t\t\t\t\t\t\tnode.removeEventListener(events[i], attachNativeEvents);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thlsPlayer = NativeHls._createPlayer({\n\t\t\t\t\t\t\t\toptions: options.hls,\n\t\t\t\t\t\t\t\tid: id\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\thlsPlayer.loadSource(value);\n\t\t\t\t\t\t\thlsPlayer.attachMedia(node);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnode[propName] = value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var i = 0, _total2 = props.length; i < _total2; i++) {\n\t\t\tassignGettersSetters(props[i]);\n\t\t}\n\n\t\t_window2.default['__ready__' + id] = function (_hlsPlayer) {\n\t\t\tmediaElement.hlsPlayer = hlsPlayer = _hlsPlayer;\n\t\t\tvar hlsEvents = Hls.Events,\n\t\t\t assignEvents = function assignEvents(eventName) {\n\t\t\t\tif (eventName === 'loadedmetadata') {\n\t\t\t\t\tvar url = mediaElement.originalNode.src;\n\t\t\t\t\thlsPlayer.detachMedia();\n\t\t\t\t\thlsPlayer.loadSource(url);\n\t\t\t\t\thlsPlayer.attachMedia(node);\n\t\t\t\t}\n\n\t\t\t\tnode.addEventListener(eventName, attachNativeEvents);\n\t\t\t};\n\n\t\t\tfor (var _i = 0, _total3 = events.length; _i < _total3; _i++) {\n\t\t\t\tassignEvents(events[_i]);\n\t\t\t}\n\n\t\t\tvar recoverDecodingErrorDate = void 0,\n\t\t\t recoverSwapAudioCodecDate = void 0;\n\t\t\tvar assignHlsEvents = function assignHlsEvents(name, data) {\n\t\t\t\tif (name === 'hlsError') {\n\t\t\t\t\tconsole.warn(data);\n\t\t\t\t\tdata = data[1];\n\n\t\t\t\t\tif (data.fatal) {\n\t\t\t\t\t\tswitch (data.type) {\n\t\t\t\t\t\t\tcase 'mediaError':\n\t\t\t\t\t\t\t\tvar now = new Date().getTime();\n\t\t\t\t\t\t\t\tif (!recoverDecodingErrorDate || now - recoverDecodingErrorDate > 3000) {\n\t\t\t\t\t\t\t\t\trecoverDecodingErrorDate = new Date().getTime();\n\t\t\t\t\t\t\t\t\thlsPlayer.recoverMediaError();\n\t\t\t\t\t\t\t\t} else if (!recoverSwapAudioCodecDate || now - recoverSwapAudioCodecDate > 3000) {\n\t\t\t\t\t\t\t\t\trecoverSwapAudioCodecDate = new Date().getTime();\n\t\t\t\t\t\t\t\t\tconsole.warn('Attempting to swap Audio Codec and recover from media error');\n\t\t\t\t\t\t\t\t\thlsPlayer.swapAudioCodec();\n\t\t\t\t\t\t\t\t\thlsPlayer.recoverMediaError();\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tvar message = 'Cannot recover, last media error recovery failed';\n\t\t\t\t\t\t\t\t\tmediaElement.generateError(message, node.src);\n\t\t\t\t\t\t\t\t\tconsole.error(message);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'networkError':\n\t\t\t\t\t\t\t\tif (data.details === 'manifestLoadError') {\n\t\t\t\t\t\t\t\t\tif (index < total && mediaFiles[index + 1] !== undefined) {\n\t\t\t\t\t\t\t\t\t\tnode.setSrc(mediaFiles[index++].src);\n\t\t\t\t\t\t\t\t\t\tnode.load();\n\t\t\t\t\t\t\t\t\t\tnode.play();\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tvar _message = 'Network error';\n\t\t\t\t\t\t\t\t\t\tmediaElement.generateError(_message, mediaFiles);\n\t\t\t\t\t\t\t\t\t\tconsole.error(_message);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tvar _message2 = 'Network error';\n\t\t\t\t\t\t\t\t\tmediaElement.generateError(_message2, mediaFiles);\n\t\t\t\t\t\t\t\t\tconsole.error(_message2);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\thlsPlayer.destroy();\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tvar event = (0, _general.createEvent)(name, mediaElement);\n\t\t\t\tevent.data = data;\n\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t};\n\n\t\t\tvar _loop = function _loop(eventType) {\n\t\t\t\tif (hlsEvents.hasOwnProperty(eventType)) {\n\t\t\t\t\thlsPlayer.on(hlsEvents[eventType], function () {\n\t\t\t\t\t\tfor (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t\t\t\t\t\t\targs[_key] = arguments[_key];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn assignHlsEvents(hlsEvents[eventType], args);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tfor (var eventType in hlsEvents) {\n\t\t\t\t_loop(eventType);\n\t\t\t}\n\t\t};\n\n\t\tif (total > 0) {\n\t\t\tfor (; index < total; index++) {\n\t\t\t\tif (_renderer.renderer.renderers[options.prefix].canPlayType(mediaFiles[index].type)) {\n\t\t\t\t\tnode.setAttribute('src', mediaFiles[index].src);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (preload !== 'auto' && !autoplay) {\n\t\t\tnode.addEventListener('play', function () {\n\t\t\t\tif (hlsPlayer !== null) {\n\t\t\t\t\thlsPlayer.startLoad();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tnode.addEventListener('pause', function () {\n\t\t\t\tif (hlsPlayer !== null) {\n\t\t\t\t\thlsPlayer.stopLoad();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tnode.setAttribute('id', id);\n\n\t\toriginalNode.parentNode.insertBefore(node, originalNode);\n\t\toriginalNode.autoplay = false;\n\t\toriginalNode.style.display = 'none';\n\n\t\tnode.setSize = function (width, height) {\n\t\t\tnode.style.width = width + 'px';\n\t\t\tnode.style.height = height + 'px';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.hide = function () {\n\t\t\tnode.pause();\n\t\t\tnode.style.display = 'none';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.show = function () {\n\t\t\tnode.style.display = '';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.destroy = function () {\n\t\t\tif (hlsPlayer !== null) {\n\t\t\t\thlsPlayer.stopLoad();\n\t\t\t\thlsPlayer.destroy();\n\t\t\t}\n\t\t};\n\n\t\tvar event = (0, _general.createEvent)('rendererready', node);\n\t\tmediaElement.dispatchEvent(event);\n\n\t\tmediaElement.promises.push(NativeHls.load({\n\t\t\toptions: options.hls,\n\t\t\tid: id\n\t\t}));\n\n\t\treturn node;\n\t}\n};\n\n_media.typeChecks.push(function (url) {\n\treturn ~url.toLowerCase().indexOf('.m3u8') ? 'application/x-mpegURL' : null;\n});\n\n_renderer.renderer.add(HlsNativeRenderer);\n\n},{\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"7\":7,\"8\":8}],23:[function(_dereq_,module,exports){\n'use strict';\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _constants = _dereq_(25);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar HtmlMediaElement = {\n\tname: 'html5',\n\toptions: {\n\t\tprefix: 'html5'\n\t},\n\n\tcanPlayType: function canPlayType(type) {\n\n\t\tvar mediaElement = _document2.default.createElement('video');\n\n\t\tif (_constants.IS_ANDROID && /\\/mp(3|4)$/i.test(type) || ~['application/x-mpegurl', 'vnd.apple.mpegurl', 'audio/mpegurl', 'audio/hls', 'video/hls'].indexOf(type.toLowerCase()) && _constants.SUPPORTS_NATIVE_HLS) {\n\t\t\treturn 'yes';\n\t\t} else if (mediaElement.canPlayType) {\n\t\t\treturn mediaElement.canPlayType(type.toLowerCase()).replace(/no/, '');\n\t\t} else {\n\t\t\treturn '';\n\t\t}\n\t},\n\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar id = mediaElement.id + '_' + options.prefix;\n\t\tvar isActive = false;\n\n\t\tvar node = null;\n\n\t\tif (mediaElement.originalNode === undefined || mediaElement.originalNode === null) {\n\t\t\tnode = _document2.default.createElement('audio');\n\t\t\tmediaElement.appendChild(node);\n\t\t} else {\n\t\t\tnode = mediaElement.originalNode;\n\t\t}\n\n\t\tnode.setAttribute('id', id);\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tnode['get' + capName] = function () {\n\t\t\t\treturn node[propName];\n\t\t\t};\n\n\t\t\tnode['set' + capName] = function (value) {\n\t\t\t\tif (_mejs2.default.html5media.readOnlyProperties.indexOf(propName) === -1) {\n\t\t\t\t\tnode[propName] = value;\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var i = 0, _total = props.length; i < _total; i++) {\n\t\t\tassignGettersSetters(props[i]);\n\t\t}\n\n\t\tvar events = _mejs2.default.html5media.events.concat(['click', 'mouseover', 'mouseout']).filter(function (e) {\n\t\t\treturn e !== 'error';\n\t\t}),\n\t\t assignEvents = function assignEvents(eventName) {\n\t\t\tnode.addEventListener(eventName, function (e) {\n\t\t\t\tif (isActive) {\n\t\t\t\t\tvar _event = (0, _general.createEvent)(e.type, e.target);\n\t\t\t\t\tmediaElement.dispatchEvent(_event);\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\n\t\tfor (var _i = 0, _total2 = events.length; _i < _total2; _i++) {\n\t\t\tassignEvents(events[_i]);\n\t\t}\n\n\t\tnode.setSize = function (width, height) {\n\t\t\tnode.style.width = width + 'px';\n\t\t\tnode.style.height = height + 'px';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.hide = function () {\n\t\t\tisActive = false;\n\t\t\tnode.style.display = 'none';\n\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.show = function () {\n\t\t\tisActive = true;\n\t\t\tnode.style.display = '';\n\n\t\t\treturn node;\n\t\t};\n\n\t\tvar index = 0,\n\t\t total = mediaFiles.length;\n\t\tif (total > 0) {\n\t\t\tfor (; index < total; index++) {\n\t\t\t\tif (_renderer.renderer.renderers[options.prefix].canPlayType(mediaFiles[index].type)) {\n\t\t\t\t\tnode.setAttribute('src', mediaFiles[index].src);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tnode.addEventListener('error', function (e) {\n\t\t\tif (e && e.target && e.target.error && e.target.error.code === 4 && isActive) {\n\t\t\t\tif (index < total && mediaFiles[index + 1] !== undefined) {\n\t\t\t\t\tnode.src = mediaFiles[index++].src;\n\t\t\t\t\tnode.load();\n\t\t\t\t\tnode.play();\n\t\t\t\t} else {\n\t\t\t\t\tmediaElement.generateError('Media error: Format(s) not supported or source(s) not found', mediaFiles);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tvar event = (0, _general.createEvent)('rendererready', node);\n\t\tmediaElement.dispatchEvent(event);\n\n\t\treturn node;\n\t}\n};\n\n_window2.default.HtmlMediaElement = _mejs2.default.HtmlMediaElement = HtmlMediaElement;\n\n_renderer.renderer.add(HtmlMediaElement);\n\n},{\"2\":2,\"25\":25,\"27\":27,\"3\":3,\"7\":7,\"8\":8}],24:[function(_dereq_,module,exports){\n'use strict';\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _media = _dereq_(28);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar YouTubeApi = {\n\tisIframeStarted: false,\n\n\tisIframeLoaded: false,\n\n\tiframeQueue: [],\n\n\tenqueueIframe: function enqueueIframe(settings) {\n\t\tYouTubeApi.isLoaded = typeof YT !== 'undefined' && YT.loaded;\n\n\t\tif (YouTubeApi.isLoaded) {\n\t\t\tYouTubeApi.createIframe(settings);\n\t\t} else {\n\t\t\tYouTubeApi.loadIframeApi();\n\t\t\tYouTubeApi.iframeQueue.push(settings);\n\t\t}\n\t},\n\n\tloadIframeApi: function loadIframeApi() {\n\t\tif (!YouTubeApi.isIframeStarted) {\n\t\t\t(0, _dom.loadScript)('https://www.youtube.com/player_api');\n\t\t\tYouTubeApi.isIframeStarted = true;\n\t\t}\n\t},\n\n\tiFrameReady: function iFrameReady() {\n\n\t\tYouTubeApi.isLoaded = true;\n\t\tYouTubeApi.isIframeLoaded = true;\n\n\t\twhile (YouTubeApi.iframeQueue.length > 0) {\n\t\t\tvar settings = YouTubeApi.iframeQueue.pop();\n\t\t\tYouTubeApi.createIframe(settings);\n\t\t}\n\t},\n\n\tcreateIframe: function createIframe(settings) {\n\t\treturn new YT.Player(settings.containerId, settings);\n\t},\n\n\tgetYouTubeId: function getYouTubeId(url) {\n\n\t\tvar youTubeId = '';\n\n\t\tif (url.indexOf('?') > 0) {\n\t\t\tyouTubeId = YouTubeApi.getYouTubeIdFromParam(url);\n\n\t\t\tif (youTubeId === '') {\n\t\t\t\tyouTubeId = YouTubeApi.getYouTubeIdFromUrl(url);\n\t\t\t}\n\t\t} else {\n\t\t\tyouTubeId = YouTubeApi.getYouTubeIdFromUrl(url);\n\t\t}\n\n\t\tvar id = youTubeId.substring(youTubeId.lastIndexOf('/') + 1);\n\t\tyouTubeId = id.split('?');\n\t\treturn youTubeId[0];\n\t},\n\n\tgetYouTubeIdFromParam: function getYouTubeIdFromParam(url) {\n\n\t\tif (url === undefined || url === null || !url.trim().length) {\n\t\t\treturn null;\n\t\t}\n\n\t\tvar parts = url.split('?'),\n\t\t parameters = parts[1].split('&');\n\n\t\tvar youTubeId = '';\n\n\t\tfor (var i = 0, total = parameters.length; i < total; i++) {\n\t\t\tvar paramParts = parameters[i].split('=');\n\t\t\tif (paramParts[0] === 'v') {\n\t\t\t\tyouTubeId = paramParts[1];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\treturn youTubeId;\n\t},\n\n\tgetYouTubeIdFromUrl: function getYouTubeIdFromUrl(url) {\n\n\t\tif (url === undefined || url === null || !url.trim().length) {\n\t\t\treturn null;\n\t\t}\n\n\t\tvar parts = url.split('?');\n\t\turl = parts[0];\n\t\treturn url.substring(url.lastIndexOf('/') + 1);\n\t},\n\n\tgetYouTubeNoCookieUrl: function getYouTubeNoCookieUrl(url) {\n\t\tif (url === undefined || url === null || !url.trim().length || url.indexOf('//www.youtube') === -1) {\n\t\t\treturn url;\n\t\t}\n\n\t\tvar parts = url.split('/');\n\t\tparts[2] = parts[2].replace('.com', '-nocookie.com');\n\t\treturn parts.join('/');\n\t}\n};\n\nvar YouTubeIframeRenderer = {\n\tname: 'youtube_iframe',\n\n\toptions: {\n\t\tprefix: 'youtube_iframe',\n\n\t\tyoutube: {\n\t\t\tautoplay: 0,\n\t\t\tcontrols: 0,\n\t\t\tdisablekb: 1,\n\t\t\tend: 0,\n\t\t\tloop: 0,\n\t\t\tmodestbranding: 0,\n\t\t\tplaysinline: 0,\n\t\t\trel: 0,\n\t\t\tshowinfo: 0,\n\t\t\tstart: 0,\n\t\t\tiv_load_policy: 3,\n\n\t\t\tnocookie: false,\n\n\t\t\timageQuality: null\n\t\t}\n\t},\n\n\tcanPlayType: function canPlayType(type) {\n\t\treturn ~['video/youtube', 'video/x-youtube'].indexOf(type.toLowerCase());\n\t},\n\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar youtube = {},\n\t\t apiStack = [],\n\t\t readyState = 4;\n\n\t\tvar youTubeApi = null,\n\t\t paused = true,\n\t\t ended = false,\n\t\t youTubeIframe = null,\n\t\t volume = 1;\n\n\t\tyoutube.options = options;\n\t\tyoutube.id = mediaElement.id + '_' + options.prefix;\n\t\tyoutube.mediaElement = mediaElement;\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tyoutube['get' + capName] = function () {\n\t\t\t\tif (youTubeApi !== null) {\n\t\t\t\t\tvar value = null;\n\n\t\t\t\t\tswitch (propName) {\n\t\t\t\t\t\tcase 'currentTime':\n\t\t\t\t\t\t\treturn youTubeApi.getCurrentTime();\n\t\t\t\t\t\tcase 'duration':\n\t\t\t\t\t\t\treturn youTubeApi.getDuration();\n\t\t\t\t\t\tcase 'volume':\n\t\t\t\t\t\t\tvolume = youTubeApi.getVolume() / 100;\n\t\t\t\t\t\t\treturn volume;\n\t\t\t\t\t\tcase 'playbackRate':\n\t\t\t\t\t\t\treturn youTubeApi.getPlaybackRate();\n\t\t\t\t\t\tcase 'paused':\n\t\t\t\t\t\t\treturn paused;\n\t\t\t\t\t\tcase 'ended':\n\t\t\t\t\t\t\treturn ended;\n\t\t\t\t\t\tcase 'muted':\n\t\t\t\t\t\t\treturn youTubeApi.isMuted();\n\t\t\t\t\t\tcase 'buffered':\n\t\t\t\t\t\t\tvar percentLoaded = youTubeApi.getVideoLoadedFraction(),\n\t\t\t\t\t\t\t duration = youTubeApi.getDuration();\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstart: function start() {\n\t\t\t\t\t\t\t\t\treturn 0;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tend: function end() {\n\t\t\t\t\t\t\t\t\treturn percentLoaded * duration;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tlength: 1\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\tcase 'src':\n\t\t\t\t\t\t\treturn youTubeApi.getVideoUrl();\n\t\t\t\t\t\tcase 'readyState':\n\t\t\t\t\t\t\treturn readyState;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn value;\n\t\t\t\t} else {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tyoutube['set' + capName] = function (value) {\n\t\t\t\tif (youTubeApi !== null) {\n\t\t\t\t\tswitch (propName) {\n\t\t\t\t\t\tcase 'src':\n\t\t\t\t\t\t\tvar url = typeof value === 'string' ? value : value[0].src,\n\t\t\t\t\t\t\t _videoId = YouTubeApi.getYouTubeId(url);\n\n\t\t\t\t\t\t\tif (mediaElement.originalNode.autoplay) {\n\t\t\t\t\t\t\t\tyouTubeApi.loadVideoById(_videoId);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tyouTubeApi.cueVideoById(_videoId);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'currentTime':\n\t\t\t\t\t\t\tyouTubeApi.seekTo(value);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'muted':\n\t\t\t\t\t\t\tif (value) {\n\t\t\t\t\t\t\t\tyouTubeApi.mute();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tyouTubeApi.unMute();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tvar event = (0, _general.createEvent)('volumechange', youtube);\n\t\t\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t\t\t}, 50);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'volume':\n\t\t\t\t\t\t\tvolume = value;\n\t\t\t\t\t\t\tyouTubeApi.setVolume(value * 100);\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tvar event = (0, _general.createEvent)('volumechange', youtube);\n\t\t\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t\t\t}, 50);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'playbackRate':\n\t\t\t\t\t\t\tyouTubeApi.setPlaybackRate(value);\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tvar event = (0, _general.createEvent)('ratechange', youtube);\n\t\t\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t\t\t}, 50);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'readyState':\n\t\t\t\t\t\t\tvar event = (0, _general.createEvent)('canplay', youtube);\n\t\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tapiStack.push({ type: 'set', propName: propName, value: value });\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var i = 0, total = props.length; i < total; i++) {\n\t\t\tassignGettersSetters(props[i]);\n\t\t}\n\n\t\tvar methods = _mejs2.default.html5media.methods,\n\t\t assignMethods = function assignMethods(methodName) {\n\t\t\tyoutube[methodName] = function () {\n\t\t\t\tif (youTubeApi !== null) {\n\t\t\t\t\tswitch (methodName) {\n\t\t\t\t\t\tcase 'play':\n\t\t\t\t\t\t\tpaused = false;\n\t\t\t\t\t\t\treturn youTubeApi.playVideo();\n\t\t\t\t\t\tcase 'pause':\n\t\t\t\t\t\t\tpaused = true;\n\t\t\t\t\t\t\treturn youTubeApi.pauseVideo();\n\t\t\t\t\t\tcase 'load':\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tapiStack.push({ type: 'call', methodName: methodName });\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var _i = 0, _total = methods.length; _i < _total; _i++) {\n\t\t\tassignMethods(methods[_i]);\n\t\t}\n\n\t\tvar errorHandler = function errorHandler(error) {\n\t\t\tvar message = '';\n\t\t\tswitch (error.data) {\n\t\t\t\tcase 2:\n\t\t\t\t\tmessage = 'The request contains an invalid parameter value. Verify that video ID has 11 characters and that contains no invalid characters, such as exclamation points or asterisks.';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 5:\n\t\t\t\t\tmessage = 'The requested content cannot be played in an HTML5 player or another error related to the HTML5 player has occurred.';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 100:\n\t\t\t\t\tmessage = 'The video requested was not found. Either video has been removed or has been marked as private.';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 101:\n\t\t\t\tcase 105:\n\t\t\t\t\tmessage = 'The owner of the requested video does not allow it to be played in embedded players.';\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tmessage = 'Unknown error.';\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tmediaElement.generateError('Code ' + error.data + ': ' + message, mediaFiles);\n\t\t};\n\n\t\tvar youtubeContainer = _document2.default.createElement('div');\n\t\tyoutubeContainer.id = youtube.id;\n\n\t\tif (youtube.options.youtube.nocookie) {\n\t\t\tmediaElement.originalNode.src = YouTubeApi.getYouTubeNoCookieUrl(mediaFiles[0].src);\n\t\t}\n\n\t\tmediaElement.originalNode.parentNode.insertBefore(youtubeContainer, mediaElement.originalNode);\n\t\tmediaElement.originalNode.style.display = 'none';\n\n\t\tvar isAudio = mediaElement.originalNode.tagName.toLowerCase() === 'audio',\n\t\t height = isAudio ? '1' : mediaElement.originalNode.height,\n\t\t width = isAudio ? '1' : mediaElement.originalNode.width,\n\t\t videoId = YouTubeApi.getYouTubeId(mediaFiles[0].src),\n\t\t youtubeSettings = {\n\t\t\tid: youtube.id,\n\t\t\tcontainerId: youtubeContainer.id,\n\t\t\tvideoId: videoId,\n\t\t\theight: height,\n\t\t\twidth: width,\n\t\t\thost: youtube.options.youtube && youtube.options.youtube.nocookie ? 'https://www.youtube-nocookie.com' : undefined,\n\t\t\tplayerVars: Object.assign({\n\t\t\t\tcontrols: 0,\n\t\t\t\trel: 0,\n\t\t\t\tdisablekb: 1,\n\t\t\t\tshowinfo: 0,\n\t\t\t\tmodestbranding: 0,\n\t\t\t\thtml5: 1,\n\t\t\t\tiv_load_policy: 3\n\t\t\t}, youtube.options.youtube),\n\t\t\torigin: _window2.default.location.host,\n\t\t\tevents: {\n\t\t\t\tonReady: function onReady(e) {\n\t\t\t\t\tmediaElement.youTubeApi = youTubeApi = e.target;\n\t\t\t\t\tmediaElement.youTubeState = {\n\t\t\t\t\t\tpaused: true,\n\t\t\t\t\t\tended: false\n\t\t\t\t\t};\n\n\t\t\t\t\tif (apiStack.length) {\n\t\t\t\t\t\tfor (var _i2 = 0, _total2 = apiStack.length; _i2 < _total2; _i2++) {\n\n\t\t\t\t\t\t\tvar stackItem = apiStack[_i2];\n\n\t\t\t\t\t\t\tif (stackItem.type === 'set') {\n\t\t\t\t\t\t\t\tvar propName = stackItem.propName,\n\t\t\t\t\t\t\t\t capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\t\t\t\t\t\tyoutube['set' + capName](stackItem.value);\n\t\t\t\t\t\t\t} else if (stackItem.type === 'call') {\n\t\t\t\t\t\t\t\tyoutube[stackItem.methodName]();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tyouTubeIframe = youTubeApi.getIframe();\n\n\t\t\t\t\tif (mediaElement.originalNode.muted) {\n\t\t\t\t\t\tyouTubeApi.mute();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar events = ['mouseover', 'mouseout'],\n\t\t\t\t\t assignEvents = function assignEvents(e) {\n\t\t\t\t\t\tvar newEvent = (0, _general.createEvent)(e.type, youtube);\n\t\t\t\t\t\tmediaElement.dispatchEvent(newEvent);\n\t\t\t\t\t};\n\n\t\t\t\t\tfor (var _i3 = 0, _total3 = events.length; _i3 < _total3; _i3++) {\n\t\t\t\t\t\tyouTubeIframe.addEventListener(events[_i3], assignEvents, false);\n\t\t\t\t\t}\n\n\t\t\t\t\tvar initEvents = ['rendererready', 'loadedmetadata', 'loadeddata', 'canplay'];\n\n\t\t\t\t\tfor (var _i4 = 0, _total4 = initEvents.length; _i4 < _total4; _i4++) {\n\t\t\t\t\t\tvar event = (0, _general.createEvent)(initEvents[_i4], youtube);\n\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tonStateChange: function onStateChange(e) {\n\t\t\t\t\tvar events = [];\n\n\t\t\t\t\tswitch (e.data) {\n\t\t\t\t\t\tcase -1:\n\t\t\t\t\t\t\tevents = ['loadedmetadata'];\n\t\t\t\t\t\t\tpaused = true;\n\t\t\t\t\t\t\tended = false;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\tevents = ['ended'];\n\t\t\t\t\t\t\tpaused = false;\n\t\t\t\t\t\t\tended = !youtube.options.youtube.loop;\n\t\t\t\t\t\t\tif (!youtube.options.youtube.loop) {\n\t\t\t\t\t\t\t\tyoutube.stopInterval();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\tevents = ['play', 'playing'];\n\t\t\t\t\t\t\tpaused = false;\n\t\t\t\t\t\t\tended = false;\n\t\t\t\t\t\t\tyoutube.startInterval();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 2:\n\t\t\t\t\t\t\tevents = ['pause'];\n\t\t\t\t\t\t\tpaused = true;\n\t\t\t\t\t\t\tended = false;\n\t\t\t\t\t\t\tyoutube.stopInterval();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 3:\n\t\t\t\t\t\t\tevents = ['progress'];\n\t\t\t\t\t\t\tended = false;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 5:\n\t\t\t\t\t\t\tevents = ['loadeddata', 'loadedmetadata', 'canplay'];\n\t\t\t\t\t\t\tpaused = true;\n\t\t\t\t\t\t\tended = false;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tfor (var _i5 = 0, _total5 = events.length; _i5 < _total5; _i5++) {\n\t\t\t\t\t\tvar event = (0, _general.createEvent)(events[_i5], youtube);\n\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tonError: function onError(e) {\n\t\t\t\t\treturn errorHandler(e);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tif (isAudio || mediaElement.originalNode.hasAttribute('playsinline')) {\n\t\t\tyoutubeSettings.playerVars.playsinline = 1;\n\t\t}\n\n\t\tif (mediaElement.originalNode.controls) {\n\t\t\tyoutubeSettings.playerVars.controls = 1;\n\t\t}\n\t\tif (mediaElement.originalNode.autoplay) {\n\t\t\tyoutubeSettings.playerVars.autoplay = 1;\n\t\t}\n\t\tif (mediaElement.originalNode.loop) {\n\t\t\tyoutubeSettings.playerVars.loop = 1;\n\t\t}\n\n\t\tif ((youtubeSettings.playerVars.loop && parseInt(youtubeSettings.playerVars.loop, 10) === 1 || mediaElement.originalNode.src.indexOf('loop=') > -1) && !youtubeSettings.playerVars.playlist && mediaElement.originalNode.src.indexOf('playlist=') === -1) {\n\t\t\tyoutubeSettings.playerVars.playlist = YouTubeApi.getYouTubeId(mediaElement.originalNode.src);\n\t\t}\n\n\t\tYouTubeApi.enqueueIframe(youtubeSettings);\n\n\t\tyoutube.onEvent = function (eventName, player, _youTubeState) {\n\t\t\tif (_youTubeState !== null && _youTubeState !== undefined) {\n\t\t\t\tmediaElement.youTubeState = _youTubeState;\n\t\t\t}\n\t\t};\n\n\t\tyoutube.setSize = function (width, height) {\n\t\t\tif (youTubeApi !== null) {\n\t\t\t\tyouTubeApi.setSize(width, height);\n\t\t\t}\n\t\t};\n\t\tyoutube.hide = function () {\n\t\t\tyoutube.stopInterval();\n\t\t\tyoutube.pause();\n\t\t\tif (youTubeIframe) {\n\t\t\t\tyouTubeIframe.style.display = 'none';\n\t\t\t}\n\t\t};\n\t\tyoutube.show = function () {\n\t\t\tif (youTubeIframe) {\n\t\t\t\tyouTubeIframe.style.display = '';\n\t\t\t}\n\t\t};\n\t\tyoutube.destroy = function () {\n\t\t\tyouTubeApi.destroy();\n\t\t};\n\t\tyoutube.interval = null;\n\n\t\tyoutube.startInterval = function () {\n\t\t\tyoutube.interval = setInterval(function () {\n\t\t\t\tvar event = (0, _general.createEvent)('timeupdate', youtube);\n\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t}, 250);\n\t\t};\n\t\tyoutube.stopInterval = function () {\n\t\t\tif (youtube.interval) {\n\t\t\t\tclearInterval(youtube.interval);\n\t\t\t}\n\t\t};\n\t\tyoutube.getPosterUrl = function () {\n\t\t\tvar quality = options.youtube.imageQuality,\n\t\t\t resolutions = ['default', 'hqdefault', 'mqdefault', 'sddefault', 'maxresdefault'],\n\t\t\t id = YouTubeApi.getYouTubeId(mediaElement.originalNode.src);\n\t\t\treturn quality && resolutions.indexOf(quality) > -1 && id ? 'https://img.youtube.com/vi/' + id + '/' + quality + '.jpg' : '';\n\t\t};\n\n\t\treturn youtube;\n\t}\n};\n\n_window2.default.onYouTubePlayerAPIReady = function () {\n\tYouTubeApi.iFrameReady();\n};\n\n_media.typeChecks.push(function (url) {\n\treturn (/\\/\\/(www\\.youtube|youtu\\.?be)/i.test(url) ? 'video/x-youtube' : null\n\t);\n});\n\n_renderer.renderer.add(YouTubeIframeRenderer);\n\n},{\"2\":2,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"7\":7,\"8\":8}],25:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.cancelFullScreen = exports.requestFullScreen = exports.isFullScreen = exports.FULLSCREEN_EVENT_NAME = exports.HAS_NATIVE_FULLSCREEN_ENABLED = exports.HAS_TRUE_NATIVE_FULLSCREEN = exports.HAS_IOS_FULLSCREEN = exports.HAS_MS_NATIVE_FULLSCREEN = exports.HAS_MOZ_NATIVE_FULLSCREEN = exports.HAS_WEBKIT_NATIVE_FULLSCREEN = exports.HAS_NATIVE_FULLSCREEN = exports.SUPPORTS_NATIVE_HLS = exports.SUPPORT_PASSIVE_EVENT = exports.SUPPORT_POINTER_EVENTS = exports.HAS_MSE = exports.IS_STOCK_ANDROID = exports.IS_SAFARI = exports.IS_FIREFOX = exports.IS_CHROME = exports.IS_EDGE = exports.IS_IE = exports.IS_ANDROID = exports.IS_IOS = exports.IS_IPOD = exports.IS_IPHONE = exports.IS_IPAD = exports.UA = exports.NAV = undefined;\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar NAV = exports.NAV = _window2.default.navigator;\nvar UA = exports.UA = NAV.userAgent.toLowerCase();\nvar IS_IPAD = exports.IS_IPAD = /ipad/i.test(UA) && !_window2.default.MSStream;\nvar IS_IPHONE = exports.IS_IPHONE = /iphone/i.test(UA) && !_window2.default.MSStream;\nvar IS_IPOD = exports.IS_IPOD = /ipod/i.test(UA) && !_window2.default.MSStream;\nvar IS_IOS = exports.IS_IOS = /ipad|iphone|ipod/i.test(UA) && !_window2.default.MSStream;\nvar IS_ANDROID = exports.IS_ANDROID = /android/i.test(UA);\nvar IS_IE = exports.IS_IE = /(trident|microsoft)/i.test(NAV.appName);\nvar IS_EDGE = exports.IS_EDGE = 'msLaunchUri' in NAV && !('documentMode' in _document2.default);\nvar IS_CHROME = exports.IS_CHROME = /chrome/i.test(UA);\nvar IS_FIREFOX = exports.IS_FIREFOX = /firefox/i.test(UA);\nvar IS_SAFARI = exports.IS_SAFARI = /safari/i.test(UA) && !IS_CHROME;\nvar IS_STOCK_ANDROID = exports.IS_STOCK_ANDROID = /^mozilla\\/\\d+\\.\\d+\\s\\(linux;\\su;/i.test(UA);\nvar HAS_MSE = exports.HAS_MSE = 'MediaSource' in _window2.default;\nvar SUPPORT_POINTER_EVENTS = exports.SUPPORT_POINTER_EVENTS = function () {\n\tvar element = _document2.default.createElement('x'),\n\t documentElement = _document2.default.documentElement,\n\t getComputedStyle = _window2.default.getComputedStyle;\n\n\tif (!('pointerEvents' in element.style)) {\n\t\treturn false;\n\t}\n\n\telement.style.pointerEvents = 'auto';\n\telement.style.pointerEvents = 'x';\n\tdocumentElement.appendChild(element);\n\tvar supports = getComputedStyle && (getComputedStyle(element, '') || {}).pointerEvents === 'auto';\n\telement.remove();\n\treturn !!supports;\n}();\n\nvar SUPPORT_PASSIVE_EVENT = exports.SUPPORT_PASSIVE_EVENT = function () {\n\tvar supportsPassive = false;\n\ttry {\n\t\tvar opts = Object.defineProperty({}, 'passive', {\n\t\t\tget: function get() {\n\t\t\t\tsupportsPassive = true;\n\t\t\t}\n\t\t});\n\t\t_window2.default.addEventListener('test', null, opts);\n\t} catch (e) {}\n\n\treturn supportsPassive;\n}();\n\nvar html5Elements = ['source', 'track', 'audio', 'video'];\nvar video = void 0;\n\nfor (var i = 0, total = html5Elements.length; i < total; i++) {\n\tvideo = _document2.default.createElement(html5Elements[i]);\n}\n\nvar SUPPORTS_NATIVE_HLS = exports.SUPPORTS_NATIVE_HLS = IS_SAFARI || IS_IE && /edge/i.test(UA);\n\nvar hasiOSFullScreen = video.webkitEnterFullscreen !== undefined;\n\nvar hasNativeFullscreen = video.requestFullscreen !== undefined;\n\nif (hasiOSFullScreen && /mac os x 10_5/i.test(UA)) {\n\thasNativeFullscreen = false;\n\thasiOSFullScreen = false;\n}\n\nvar hasWebkitNativeFullScreen = video.webkitRequestFullScreen !== undefined;\nvar hasMozNativeFullScreen = video.mozRequestFullScreen !== undefined;\nvar hasMsNativeFullScreen = video.msRequestFullscreen !== undefined;\nvar hasTrueNativeFullScreen = hasWebkitNativeFullScreen || hasMozNativeFullScreen || hasMsNativeFullScreen;\nvar nativeFullScreenEnabled = hasTrueNativeFullScreen;\nvar fullScreenEventName = '';\nvar isFullScreen = void 0,\n requestFullScreen = void 0,\n cancelFullScreen = void 0;\n\nif (hasMozNativeFullScreen) {\n\tnativeFullScreenEnabled = _document2.default.mozFullScreenEnabled;\n} else if (hasMsNativeFullScreen) {\n\tnativeFullScreenEnabled = _document2.default.msFullscreenEnabled;\n}\n\nif (IS_CHROME) {\n\thasiOSFullScreen = false;\n}\n\nif (hasTrueNativeFullScreen) {\n\tif (hasWebkitNativeFullScreen) {\n\t\tfullScreenEventName = 'webkitfullscreenchange';\n\t} else if (hasMozNativeFullScreen) {\n\t\tfullScreenEventName = 'fullscreenchange';\n\t} else if (hasMsNativeFullScreen) {\n\t\tfullScreenEventName = 'MSFullscreenChange';\n\t}\n\n\texports.isFullScreen = isFullScreen = function isFullScreen() {\n\t\tif (hasMozNativeFullScreen) {\n\t\t\treturn _document2.default.mozFullScreen;\n\t\t} else if (hasWebkitNativeFullScreen) {\n\t\t\treturn _document2.default.webkitIsFullScreen;\n\t\t} else if (hasMsNativeFullScreen) {\n\t\t\treturn _document2.default.msFullscreenElement !== null;\n\t\t}\n\t};\n\n\texports.requestFullScreen = requestFullScreen = function requestFullScreen(el) {\n\t\tif (hasWebkitNativeFullScreen) {\n\t\t\tel.webkitRequestFullScreen();\n\t\t} else if (hasMozNativeFullScreen) {\n\t\t\tel.mozRequestFullScreen();\n\t\t} else if (hasMsNativeFullScreen) {\n\t\t\tel.msRequestFullscreen();\n\t\t}\n\t};\n\n\texports.cancelFullScreen = cancelFullScreen = function cancelFullScreen() {\n\t\tif (hasWebkitNativeFullScreen) {\n\t\t\t_document2.default.webkitCancelFullScreen();\n\t\t} else if (hasMozNativeFullScreen) {\n\t\t\t_document2.default.mozCancelFullScreen();\n\t\t} else if (hasMsNativeFullScreen) {\n\t\t\t_document2.default.msExitFullscreen();\n\t\t}\n\t};\n}\n\nvar HAS_NATIVE_FULLSCREEN = exports.HAS_NATIVE_FULLSCREEN = hasNativeFullscreen;\nvar HAS_WEBKIT_NATIVE_FULLSCREEN = exports.HAS_WEBKIT_NATIVE_FULLSCREEN = hasWebkitNativeFullScreen;\nvar HAS_MOZ_NATIVE_FULLSCREEN = exports.HAS_MOZ_NATIVE_FULLSCREEN = hasMozNativeFullScreen;\nvar HAS_MS_NATIVE_FULLSCREEN = exports.HAS_MS_NATIVE_FULLSCREEN = hasMsNativeFullScreen;\nvar HAS_IOS_FULLSCREEN = exports.HAS_IOS_FULLSCREEN = hasiOSFullScreen;\nvar HAS_TRUE_NATIVE_FULLSCREEN = exports.HAS_TRUE_NATIVE_FULLSCREEN = hasTrueNativeFullScreen;\nvar HAS_NATIVE_FULLSCREEN_ENABLED = exports.HAS_NATIVE_FULLSCREEN_ENABLED = nativeFullScreenEnabled;\nvar FULLSCREEN_EVENT_NAME = exports.FULLSCREEN_EVENT_NAME = fullScreenEventName;\nexports.isFullScreen = isFullScreen;\nexports.requestFullScreen = requestFullScreen;\nexports.cancelFullScreen = cancelFullScreen;\n\n\n_mejs2.default.Features = _mejs2.default.Features || {};\n_mejs2.default.Features.isiPad = IS_IPAD;\n_mejs2.default.Features.isiPod = IS_IPOD;\n_mejs2.default.Features.isiPhone = IS_IPHONE;\n_mejs2.default.Features.isiOS = _mejs2.default.Features.isiPhone || _mejs2.default.Features.isiPad;\n_mejs2.default.Features.isAndroid = IS_ANDROID;\n_mejs2.default.Features.isIE = IS_IE;\n_mejs2.default.Features.isEdge = IS_EDGE;\n_mejs2.default.Features.isChrome = IS_CHROME;\n_mejs2.default.Features.isFirefox = IS_FIREFOX;\n_mejs2.default.Features.isSafari = IS_SAFARI;\n_mejs2.default.Features.isStockAndroid = IS_STOCK_ANDROID;\n_mejs2.default.Features.hasMSE = HAS_MSE;\n_mejs2.default.Features.supportsNativeHLS = SUPPORTS_NATIVE_HLS;\n_mejs2.default.Features.supportsPointerEvents = SUPPORT_POINTER_EVENTS;\n_mejs2.default.Features.supportsPassiveEvent = SUPPORT_PASSIVE_EVENT;\n_mejs2.default.Features.hasiOSFullScreen = HAS_IOS_FULLSCREEN;\n_mejs2.default.Features.hasNativeFullscreen = HAS_NATIVE_FULLSCREEN;\n_mejs2.default.Features.hasWebkitNativeFullScreen = HAS_WEBKIT_NATIVE_FULLSCREEN;\n_mejs2.default.Features.hasMozNativeFullScreen = HAS_MOZ_NATIVE_FULLSCREEN;\n_mejs2.default.Features.hasMsNativeFullScreen = HAS_MS_NATIVE_FULLSCREEN;\n_mejs2.default.Features.hasTrueNativeFullScreen = HAS_TRUE_NATIVE_FULLSCREEN;\n_mejs2.default.Features.nativeFullScreenEnabled = HAS_NATIVE_FULLSCREEN_ENABLED;\n_mejs2.default.Features.fullScreenEventName = FULLSCREEN_EVENT_NAME;\n_mejs2.default.Features.isFullScreen = isFullScreen;\n_mejs2.default.Features.requestFullScreen = requestFullScreen;\n_mejs2.default.Features.cancelFullScreen = cancelFullScreen;\n\n},{\"2\":2,\"3\":3,\"7\":7}],26:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.removeClass = exports.addClass = exports.hasClass = undefined;\nexports.loadScript = loadScript;\nexports.offset = offset;\nexports.toggleClass = toggleClass;\nexports.fadeOut = fadeOut;\nexports.fadeIn = fadeIn;\nexports.siblings = siblings;\nexports.visible = visible;\nexports.ajax = ajax;\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction loadScript(url) {\n\treturn new Promise(function (resolve, reject) {\n\t\tvar script = _document2.default.createElement('script');\n\t\tscript.src = url;\n\t\tscript.async = true;\n\t\tscript.onload = function () {\n\t\t\tscript.remove();\n\t\t\tresolve();\n\t\t};\n\t\tscript.onerror = function () {\n\t\t\tscript.remove();\n\t\t\treject();\n\t\t};\n\t\t_document2.default.head.appendChild(script);\n\t});\n}\n\nfunction offset(el) {\n\tvar rect = el.getBoundingClientRect(),\n\t scrollLeft = _window2.default.pageXOffset || _document2.default.documentElement.scrollLeft,\n\t scrollTop = _window2.default.pageYOffset || _document2.default.documentElement.scrollTop;\n\treturn { top: rect.top + scrollTop, left: rect.left + scrollLeft };\n}\n\nvar hasClassMethod = void 0,\n addClassMethod = void 0,\n removeClassMethod = void 0;\n\nif ('classList' in _document2.default.documentElement) {\n\thasClassMethod = function hasClassMethod(el, className) {\n\t\treturn el.classList !== undefined && el.classList.contains(className);\n\t};\n\taddClassMethod = function addClassMethod(el, className) {\n\t\treturn el.classList.add(className);\n\t};\n\tremoveClassMethod = function removeClassMethod(el, className) {\n\t\treturn el.classList.remove(className);\n\t};\n} else {\n\thasClassMethod = function hasClassMethod(el, className) {\n\t\treturn new RegExp('\\\\b' + className + '\\\\b').test(el.className);\n\t};\n\taddClassMethod = function addClassMethod(el, className) {\n\t\tif (!hasClass(el, className)) {\n\t\t\tel.className += ' ' + className;\n\t\t}\n\t};\n\tremoveClassMethod = function removeClassMethod(el, className) {\n\t\tel.className = el.className.replace(new RegExp('\\\\b' + className + '\\\\b', 'g'), '');\n\t};\n}\n\nvar hasClass = exports.hasClass = hasClassMethod;\nvar addClass = exports.addClass = addClassMethod;\nvar removeClass = exports.removeClass = removeClassMethod;\n\nfunction toggleClass(el, className) {\n\thasClass(el, className) ? removeClass(el, className) : addClass(el, className);\n}\n\nfunction fadeOut(el) {\n\tvar duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 400;\n\tvar callback = arguments[2];\n\n\tif (!el.style.opacity) {\n\t\tel.style.opacity = 1;\n\t}\n\n\tvar start = null;\n\t_window2.default.requestAnimationFrame(function animate(timestamp) {\n\t\tstart = start || timestamp;\n\t\tvar progress = timestamp - start;\n\t\tvar opacity = parseFloat(1 - progress / duration, 2);\n\t\tel.style.opacity = opacity < 0 ? 0 : opacity;\n\t\tif (progress > duration) {\n\t\t\tif (callback && typeof callback === 'function') {\n\t\t\t\tcallback();\n\t\t\t}\n\t\t} else {\n\t\t\t_window2.default.requestAnimationFrame(animate);\n\t\t}\n\t});\n}\n\nfunction fadeIn(el) {\n\tvar duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 400;\n\tvar callback = arguments[2];\n\n\tif (!el.style.opacity) {\n\t\tel.style.opacity = 0;\n\t}\n\n\tvar start = null;\n\t_window2.default.requestAnimationFrame(function animate(timestamp) {\n\t\tstart = start || timestamp;\n\t\tvar progress = timestamp - start;\n\t\tvar opacity = parseFloat(progress / duration, 2);\n\t\tel.style.opacity = opacity > 1 ? 1 : opacity;\n\t\tif (progress > duration) {\n\t\t\tif (callback && typeof callback === 'function') {\n\t\t\t\tcallback();\n\t\t\t}\n\t\t} else {\n\t\t\t_window2.default.requestAnimationFrame(animate);\n\t\t}\n\t});\n}\n\nfunction siblings(el, filter) {\n\tvar siblings = [];\n\tel = el.parentNode.firstChild;\n\tdo {\n\t\tif (!filter || filter(el)) {\n\t\t\tsiblings.push(el);\n\t\t}\n\t} while (el = el.nextSibling);\n\treturn siblings;\n}\n\nfunction visible(elem) {\n\tif (elem.getClientRects !== undefined && elem.getClientRects === 'function') {\n\t\treturn !!(elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length);\n\t}\n\treturn !!(elem.offsetWidth || elem.offsetHeight);\n}\n\nfunction ajax(url, dataType, success, error) {\n\tvar xhr = _window2.default.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');\n\txhr.withCredentials = true;\n\n\tvar type = 'application/x-www-form-urlencoded; charset=UTF-8',\n\t completed = false,\n\t accept = '*/'.concat('*');\n\n\tswitch (dataType) {\n\t\tcase 'text':\n\t\t\ttype = 'text/plain';\n\t\t\tbreak;\n\t\tcase 'json':\n\t\t\ttype = 'application/json, text/javascript';\n\t\t\tbreak;\n\t\tcase 'html':\n\t\t\ttype = 'text/html';\n\t\t\tbreak;\n\t\tcase 'xml':\n\t\t\ttype = 'application/xml, text/xml';\n\t\t\tbreak;\n\t}\n\n\tif (type !== 'application/x-www-form-urlencoded') {\n\t\taccept = type + ', */*; q=0.01';\n\t}\n\n\tif (xhr) {\n\t\txhr.open('GET', url, true);\n\t\txhr.setRequestHeader('Accept', accept);\n\t\txhr.onreadystatechange = function () {\n\t\t\tif (completed) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (xhr.readyState === 4) {\n\t\t\t\tif (xhr.status === 200) {\n\t\t\t\t\tcompleted = true;\n\t\t\t\t\tvar data = void 0;\n\t\t\t\t\tswitch (dataType) {\n\t\t\t\t\t\tcase 'json':\n\t\t\t\t\t\t\tdata = JSON.parse(xhr.responseText);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'xml':\n\t\t\t\t\t\t\tdata = xhr.responseXML;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tdata = xhr.responseText;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tsuccess(data);\n\t\t\t\t} else if (typeof error === 'function') {\n\t\t\t\t\terror(xhr.status);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\txhr.send();\n\t}\n}\n\n_mejs2.default.Utils = _mejs2.default.Utils || {};\n_mejs2.default.Utils.offset = offset;\n_mejs2.default.Utils.hasClass = hasClass;\n_mejs2.default.Utils.addClass = addClass;\n_mejs2.default.Utils.removeClass = removeClass;\n_mejs2.default.Utils.toggleClass = toggleClass;\n_mejs2.default.Utils.fadeIn = fadeIn;\n_mejs2.default.Utils.fadeOut = fadeOut;\n_mejs2.default.Utils.siblings = siblings;\n_mejs2.default.Utils.visible = visible;\n_mejs2.default.Utils.ajax = ajax;\n_mejs2.default.Utils.loadScript = loadScript;\n\n},{\"2\":2,\"3\":3,\"7\":7}],27:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.escapeHTML = escapeHTML;\nexports.debounce = debounce;\nexports.isObjectEmpty = isObjectEmpty;\nexports.splitEvents = splitEvents;\nexports.createEvent = createEvent;\nexports.isNodeAfter = isNodeAfter;\nexports.isString = isString;\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction escapeHTML(input) {\n\n\tif (typeof input !== 'string') {\n\t\tthrow new Error('Argument passed must be a string');\n\t}\n\n\tvar map = {\n\t\t'&': '&',\n\t\t'<': '<',\n\t\t'>': '>',\n\t\t'\"': '"'\n\t};\n\n\treturn input.replace(/[&<>\"]/g, function (c) {\n\t\treturn map[c];\n\t});\n}\n\nfunction debounce(func, wait) {\n\tvar _this = this,\n\t _arguments = arguments;\n\n\tvar immediate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n\n\tif (typeof func !== 'function') {\n\t\tthrow new Error('First argument must be a function');\n\t}\n\n\tif (typeof wait !== 'number') {\n\t\tthrow new Error('Second argument must be a numeric value');\n\t}\n\n\tvar timeout = void 0;\n\treturn function () {\n\t\tvar context = _this,\n\t\t args = _arguments;\n\t\tvar later = function later() {\n\t\t\ttimeout = null;\n\t\t\tif (!immediate) {\n\t\t\t\tfunc.apply(context, args);\n\t\t\t}\n\t\t};\n\t\tvar callNow = immediate && !timeout;\n\t\tclearTimeout(timeout);\n\t\ttimeout = setTimeout(later, wait);\n\n\t\tif (callNow) {\n\t\t\tfunc.apply(context, args);\n\t\t}\n\t};\n}\n\nfunction isObjectEmpty(instance) {\n\treturn Object.getOwnPropertyNames(instance).length <= 0;\n}\n\nfunction splitEvents(events, id) {\n\tvar rwindow = /^((after|before)print|(before)?unload|hashchange|message|o(ff|n)line|page(hide|show)|popstate|resize|storage)\\b/;\n\n\tvar ret = { d: [], w: [] };\n\t(events || '').split(' ').forEach(function (v) {\n\t\tvar eventName = '' + v + (id ? '.' + id : '');\n\n\t\tif (eventName.startsWith('.')) {\n\t\t\tret.d.push(eventName);\n\t\t\tret.w.push(eventName);\n\t\t} else {\n\t\t\tret[rwindow.test(v) ? 'w' : 'd'].push(eventName);\n\t\t}\n\t});\n\n\tret.d = ret.d.join(' ');\n\tret.w = ret.w.join(' ');\n\treturn ret;\n}\n\nfunction createEvent(eventName, target) {\n\n\tif (typeof eventName !== 'string') {\n\t\tthrow new Error('Event name must be a string');\n\t}\n\n\tvar eventFrags = eventName.match(/([a-z]+\\.([a-z]+))/i),\n\t detail = {\n\t\ttarget: target\n\t};\n\n\tif (eventFrags !== null) {\n\t\teventName = eventFrags[1];\n\t\tdetail.namespace = eventFrags[2];\n\t}\n\n\treturn new window.CustomEvent(eventName, {\n\t\tdetail: detail\n\t});\n}\n\nfunction isNodeAfter(sourceNode, targetNode) {\n\n\treturn !!(sourceNode && targetNode && sourceNode.compareDocumentPosition(targetNode) & 2);\n}\n\nfunction isString(value) {\n\treturn typeof value === 'string';\n}\n\n_mejs2.default.Utils = _mejs2.default.Utils || {};\n_mejs2.default.Utils.escapeHTML = escapeHTML;\n_mejs2.default.Utils.debounce = debounce;\n_mejs2.default.Utils.isObjectEmpty = isObjectEmpty;\n_mejs2.default.Utils.splitEvents = splitEvents;\n_mejs2.default.Utils.createEvent = createEvent;\n_mejs2.default.Utils.isNodeAfter = isNodeAfter;\n_mejs2.default.Utils.isString = isString;\n\n},{\"7\":7}],28:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.typeChecks = undefined;\nexports.absolutizeUrl = absolutizeUrl;\nexports.formatType = formatType;\nexports.getMimeFromType = getMimeFromType;\nexports.getTypeFromFile = getTypeFromFile;\nexports.getExtension = getExtension;\nexports.normalizeExtension = normalizeExtension;\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _general = _dereq_(27);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar typeChecks = exports.typeChecks = [];\n\nfunction absolutizeUrl(url) {\n\n\tif (typeof url !== 'string') {\n\t\tthrow new Error('`url` argument must be a string');\n\t}\n\n\tvar el = document.createElement('div');\n\tel.innerHTML = 'x';\n\treturn el.firstChild.href;\n}\n\nfunction formatType(url) {\n\tvar type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n\n\treturn url && !type ? getTypeFromFile(url) : type;\n}\n\nfunction getMimeFromType(type) {\n\n\tif (typeof type !== 'string') {\n\t\tthrow new Error('`type` argument must be a string');\n\t}\n\n\treturn type && type.indexOf(';') > -1 ? type.substr(0, type.indexOf(';')) : type;\n}\n\nfunction getTypeFromFile(url) {\n\n\tif (typeof url !== 'string') {\n\t\tthrow new Error('`url` argument must be a string');\n\t}\n\n\tfor (var i = 0, total = typeChecks.length; i < total; i++) {\n\t\tvar type = typeChecks[i](url);\n\n\t\tif (type) {\n\t\t\treturn type;\n\t\t}\n\t}\n\n\tvar ext = getExtension(url),\n\t normalizedExt = normalizeExtension(ext);\n\n\tvar mime = 'video/mp4';\n\n\tif (normalizedExt) {\n\t\tif (~['mp4', 'm4v', 'ogg', 'ogv', 'webm', 'flv', 'mpeg'].indexOf(normalizedExt)) {\n\t\t\tmime = 'video/' + normalizedExt;\n\t\t} else if ('mov' === normalizedExt) {\n\t\t\tmime = 'video/quicktime';\n\t\t} else if (~['mp3', 'oga', 'wav', 'mid', 'midi'].indexOf(normalizedExt)) {\n\t\t\tmime = 'audio/' + normalizedExt;\n\t\t}\n\t}\n\n\treturn mime;\n}\n\nfunction getExtension(url) {\n\n\tif (typeof url !== 'string') {\n\t\tthrow new Error('`url` argument must be a string');\n\t}\n\n\tvar baseUrl = url.split('?')[0],\n\t baseName = baseUrl.split('\\\\').pop().split('/').pop();\n\treturn ~baseName.indexOf('.') ? baseName.substring(baseName.lastIndexOf('.') + 1) : '';\n}\n\nfunction normalizeExtension(extension) {\n\n\tif (typeof extension !== 'string') {\n\t\tthrow new Error('`extension` argument must be a string');\n\t}\n\n\tswitch (extension) {\n\t\tcase 'mp4':\n\t\tcase 'm4v':\n\t\t\treturn 'mp4';\n\t\tcase 'webm':\n\t\tcase 'webma':\n\t\tcase 'webmv':\n\t\t\treturn 'webm';\n\t\tcase 'ogg':\n\t\tcase 'oga':\n\t\tcase 'ogv':\n\t\t\treturn 'ogg';\n\t\tdefault:\n\t\t\treturn extension;\n\t}\n}\n\n_mejs2.default.Utils = _mejs2.default.Utils || {};\n_mejs2.default.Utils.typeChecks = typeChecks;\n_mejs2.default.Utils.absolutizeUrl = absolutizeUrl;\n_mejs2.default.Utils.formatType = formatType;\n_mejs2.default.Utils.getMimeFromType = getMimeFromType;\n_mejs2.default.Utils.getTypeFromFile = getTypeFromFile;\n_mejs2.default.Utils.getExtension = getExtension;\n_mejs2.default.Utils.normalizeExtension = normalizeExtension;\n\n},{\"27\":27,\"7\":7}],29:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _promisePolyfill = _dereq_(4);\n\nvar _promisePolyfill2 = _interopRequireDefault(_promisePolyfill);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n(function (arr) {\n\tarr.forEach(function (item) {\n\t\tif (item.hasOwnProperty('remove')) {\n\t\t\treturn;\n\t\t}\n\t\tObject.defineProperty(item, 'remove', {\n\t\t\tconfigurable: true,\n\t\t\tenumerable: true,\n\t\t\twritable: true,\n\t\t\tvalue: function remove() {\n\t\t\t\tthis.parentNode.removeChild(this);\n\t\t\t}\n\t\t});\n\t});\n})([Element.prototype, CharacterData.prototype, DocumentType.prototype]);\n\n(function () {\n\n\tif (typeof window.CustomEvent === 'function') {\n\t\treturn false;\n\t}\n\n\tfunction CustomEvent(event, params) {\n\t\tparams = params || { bubbles: false, cancelable: false, detail: undefined };\n\t\tvar evt = _document2.default.createEvent('CustomEvent');\n\t\tevt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\n\t\treturn evt;\n\t}\n\n\tCustomEvent.prototype = window.Event.prototype;\n\twindow.CustomEvent = CustomEvent;\n})();\n\nif (typeof Object.assign !== 'function') {\n\tObject.assign = function (target) {\n\n\t\tif (target === null || target === undefined) {\n\t\t\tthrow new TypeError('Cannot convert undefined or null to object');\n\t\t}\n\n\t\tvar to = Object(target);\n\n\t\tfor (var index = 1, total = arguments.length; index < total; index++) {\n\t\t\tvar nextSource = arguments[index];\n\n\t\t\tif (nextSource !== null) {\n\t\t\t\tfor (var nextKey in nextSource) {\n\t\t\t\t\tif (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {\n\t\t\t\t\t\tto[nextKey] = nextSource[nextKey];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn to;\n\t};\n}\n\nif (!String.prototype.startsWith) {\n\tString.prototype.startsWith = function (searchString, position) {\n\t\tposition = position || 0;\n\t\treturn this.substr(position, searchString.length) === searchString;\n\t};\n}\n\nif (!Element.prototype.matches) {\n\tElement.prototype.matches = Element.prototype.matchesSelector || Element.prototype.mozMatchesSelector || Element.prototype.msMatchesSelector || Element.prototype.oMatchesSelector || Element.prototype.webkitMatchesSelector || function (s) {\n\t\tvar matches = (this.document || this.ownerDocument).querySelectorAll(s),\n\t\t i = matches.length - 1;\n\t\twhile (--i >= 0 && matches.item(i) !== this) {}\n\t\treturn i > -1;\n\t};\n}\n\nif (window.Element && !Element.prototype.closest) {\n\tElement.prototype.closest = function (s) {\n\t\tvar matches = (this.document || this.ownerDocument).querySelectorAll(s),\n\t\t i = void 0,\n\t\t el = this;\n\t\tdo {\n\t\t\ti = matches.length;\n\t\t\twhile (--i >= 0 && matches.item(i) !== el) {}\n\t\t} while (i < 0 && (el = el.parentElement));\n\t\treturn el;\n\t};\n}\n\n(function () {\n\tvar lastTime = 0;\n\tvar vendors = ['ms', 'moz', 'webkit', 'o'];\n\tfor (var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {\n\t\twindow.requestAnimationFrame = window[vendors[x] + 'RequestAnimationFrame'];\n\t\twindow.cancelAnimationFrame = window[vendors[x] + 'CancelAnimationFrame'] || window[vendors[x] + 'CancelRequestAnimationFrame'];\n\t}\n\n\tif (!window.requestAnimationFrame) window.requestAnimationFrame = function (callback) {\n\t\tvar currTime = new Date().getTime();\n\t\tvar timeToCall = Math.max(0, 16 - (currTime - lastTime));\n\t\tvar id = window.setTimeout(function () {\n\t\t\tcallback(currTime + timeToCall);\n\t\t}, timeToCall);\n\t\tlastTime = currTime + timeToCall;\n\t\treturn id;\n\t};\n\n\tif (!window.cancelAnimationFrame) window.cancelAnimationFrame = function (id) {\n\t\tclearTimeout(id);\n\t};\n})();\n\nif (/firefox/i.test(navigator.userAgent)) {\n\tvar getComputedStyle = window.getComputedStyle;\n\twindow.getComputedStyle = function (el, pseudoEl) {\n\t\tvar t = getComputedStyle(el, pseudoEl);\n\t\treturn t === null ? { getPropertyValue: function getPropertyValue() {} } : t;\n\t};\n}\n\nif (!window.Promise) {\n\twindow.Promise = _promisePolyfill2.default;\n}\n\n(function (constructor) {\n\tif (constructor && constructor.prototype && constructor.prototype.children === null) {\n\t\tObject.defineProperty(constructor.prototype, 'children', {\n\t\t\tget: function get() {\n\t\t\t\tvar i = 0,\n\t\t\t\t node = void 0,\n\t\t\t\t nodes = this.childNodes,\n\t\t\t\t children = [];\n\t\t\t\twhile (node = nodes[i++]) {\n\t\t\t\t\tif (node.nodeType === 1) {\n\t\t\t\t\t\tchildren.push(node);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn children;\n\t\t\t}\n\t\t});\n\t}\n})(window.Node || window.Element);\n\n},{\"2\":2,\"4\":4}],30:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.isDropFrame = isDropFrame;\nexports.secondsToTimeCode = secondsToTimeCode;\nexports.timeCodeToSeconds = timeCodeToSeconds;\nexports.calculateTimeFormat = calculateTimeFormat;\nexports.convertSMPTEtoSeconds = convertSMPTEtoSeconds;\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction isDropFrame() {\n\tvar fps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 25;\n\n\treturn !(fps % 1 === 0);\n}\nfunction secondsToTimeCode(time) {\n\tvar forceHours = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\tvar showFrameCount = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\tvar fps = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 25;\n\tvar secondsDecimalLength = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;\n\tvar timeFormat = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'hh:mm:ss';\n\n\n\ttime = !time || typeof time !== 'number' || time < 0 ? 0 : time;\n\n\tvar dropFrames = Math.round(fps * 0.066666),\n\t timeBase = Math.round(fps),\n\t framesPer24Hours = Math.round(fps * 3600) * 24,\n\t framesPer10Minutes = Math.round(fps * 600),\n\t frameSep = isDropFrame(fps) ? ';' : ':',\n\t hours = void 0,\n\t minutes = void 0,\n\t seconds = void 0,\n\t frames = void 0,\n\t f = Math.round(time * fps);\n\n\tif (isDropFrame(fps)) {\n\n\t\tif (f < 0) {\n\t\t\tf = framesPer24Hours + f;\n\t\t}\n\n\t\tf = f % framesPer24Hours;\n\n\t\tvar d = Math.floor(f / framesPer10Minutes);\n\t\tvar m = f % framesPer10Minutes;\n\t\tf = f + dropFrames * 9 * d;\n\t\tif (m > dropFrames) {\n\t\t\tf = f + dropFrames * Math.floor((m - dropFrames) / Math.round(timeBase * 60 - dropFrames));\n\t\t}\n\n\t\tvar timeBaseDivision = Math.floor(f / timeBase);\n\n\t\thours = Math.floor(Math.floor(timeBaseDivision / 60) / 60);\n\t\tminutes = Math.floor(timeBaseDivision / 60) % 60;\n\n\t\tif (showFrameCount) {\n\t\t\tseconds = timeBaseDivision % 60;\n\t\t} else {\n\t\t\tseconds = Math.floor(f / timeBase % 60).toFixed(secondsDecimalLength);\n\t\t}\n\t} else {\n\t\thours = Math.floor(time / 3600) % 24;\n\t\tminutes = Math.floor(time / 60) % 60;\n\t\tif (showFrameCount) {\n\t\t\tseconds = Math.floor(time % 60);\n\t\t} else {\n\t\t\tseconds = Math.floor(time % 60).toFixed(secondsDecimalLength);\n\t\t}\n\t}\n\thours = hours <= 0 ? 0 : hours;\n\tminutes = minutes <= 0 ? 0 : minutes;\n\tseconds = seconds <= 0 ? 0 : seconds;\n\n\tseconds = seconds === 60 ? 0 : seconds;\n\tminutes = minutes === 60 ? 0 : minutes;\n\n\tvar timeFormatFrags = timeFormat.split(':');\n\tvar timeFormatSettings = {};\n\tfor (var i = 0, total = timeFormatFrags.length; i < total; ++i) {\n\t\tvar unique = '';\n\t\tfor (var j = 0, t = timeFormatFrags[i].length; j < t; j++) {\n\t\t\tif (unique.indexOf(timeFormatFrags[i][j]) < 0) {\n\t\t\t\tunique += timeFormatFrags[i][j];\n\t\t\t}\n\t\t}\n\t\tif (~['f', 's', 'm', 'h'].indexOf(unique)) {\n\t\t\ttimeFormatSettings[unique] = timeFormatFrags[i].length;\n\t\t}\n\t}\n\n\tvar result = forceHours || hours > 0 ? (hours < 10 && timeFormatSettings.h > 1 ? '0' + hours : hours) + ':' : '';\n\tresult += (minutes < 10 && timeFormatSettings.m > 1 ? '0' + minutes : minutes) + ':';\n\tresult += '' + (seconds < 10 && timeFormatSettings.s > 1 ? '0' + seconds : seconds);\n\n\tif (showFrameCount) {\n\t\tframes = (f % timeBase).toFixed(0);\n\t\tframes = frames <= 0 ? 0 : frames;\n\t\tresult += frames < 10 && timeFormatSettings.f ? frameSep + '0' + frames : '' + frameSep + frames;\n\t}\n\n\treturn result;\n}\n\nfunction timeCodeToSeconds(time) {\n\tvar fps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 25;\n\n\n\tif (typeof time !== 'string') {\n\t\tthrow new TypeError('Time must be a string');\n\t}\n\n\tif (time.indexOf(';') > 0) {\n\t\ttime = time.replace(';', ':');\n\t}\n\n\tif (!/\\d{2}(\\:\\d{2}){0,3}/i.test(time)) {\n\t\tthrow new TypeError('Time code must have the format `00:00:00`');\n\t}\n\n\tvar parts = time.split(':');\n\n\tvar output = void 0,\n\t hours = 0,\n\t minutes = 0,\n\t seconds = 0,\n\t frames = 0,\n\t totalMinutes = 0,\n\t dropFrames = Math.round(fps * 0.066666),\n\t timeBase = Math.round(fps),\n\t hFrames = timeBase * 3600,\n\t mFrames = timeBase * 60;\n\n\tswitch (parts.length) {\n\t\tdefault:\n\t\tcase 1:\n\t\t\tseconds = parseInt(parts[0], 10);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tminutes = parseInt(parts[0], 10);\n\t\t\tseconds = parseInt(parts[1], 10);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\thours = parseInt(parts[0], 10);\n\t\t\tminutes = parseInt(parts[1], 10);\n\t\t\tseconds = parseInt(parts[2], 10);\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\thours = parseInt(parts[0], 10);\n\t\t\tminutes = parseInt(parts[1], 10);\n\t\t\tseconds = parseInt(parts[2], 10);\n\t\t\tframes = parseInt(parts[3], 10);\n\t\t\tbreak;\n\t}\n\n\tif (isDropFrame(fps)) {\n\t\ttotalMinutes = 60 * hours + minutes;\n\t\toutput = hFrames * hours + mFrames * minutes + timeBase * seconds + frames - dropFrames * (totalMinutes - Math.floor(totalMinutes / 10));\n\t} else {\n\t\toutput = (hFrames * hours + mFrames * minutes + fps * seconds + frames) / fps;\n\t}\n\n\treturn parseFloat(output.toFixed(3));\n}\n\nfunction calculateTimeFormat(time, options) {\n\tvar fps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 25;\n\n\n\ttime = !time || typeof time !== 'number' || time < 0 ? 0 : time;\n\n\tvar hours = Math.floor(time / 3600) % 24,\n\t minutes = Math.floor(time / 60) % 60,\n\t seconds = Math.floor(time % 60),\n\t frames = Math.floor((time % 1 * fps).toFixed(3)),\n\t lis = [[frames, 'f'], [seconds, 's'], [minutes, 'm'], [hours, 'h']];\n\n\tvar format = options.timeFormat,\n\t firstTwoPlaces = format[1] === format[0],\n\t separatorIndex = firstTwoPlaces ? 2 : 1,\n\t separator = format.length < separatorIndex ? format[separatorIndex] : ':',\n\t firstChar = format[0],\n\t required = false;\n\n\tfor (var i = 0, len = lis.length; i < len; i++) {\n\t\tif (~format.indexOf(lis[i][1])) {\n\t\t\trequired = true;\n\t\t} else if (required) {\n\t\t\tvar hasNextValue = false;\n\t\t\tfor (var j = i; j < len; j++) {\n\t\t\t\tif (lis[j][0] > 0) {\n\t\t\t\t\thasNextValue = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!hasNextValue) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (!firstTwoPlaces) {\n\t\t\t\tformat = firstChar + format;\n\t\t\t}\n\t\t\tformat = lis[i][1] + separator + format;\n\t\t\tif (firstTwoPlaces) {\n\t\t\t\tformat = lis[i][1] + format;\n\t\t\t}\n\t\t\tfirstChar = lis[i][1];\n\t\t}\n\t}\n\n\toptions.timeFormat = format;\n}\n\nfunction convertSMPTEtoSeconds(SMPTE) {\n\n\tif (typeof SMPTE !== 'string') {\n\t\tthrow new TypeError('Argument must be a string value');\n\t}\n\n\tSMPTE = SMPTE.replace(',', '.');\n\n\tvar decimalLen = ~SMPTE.indexOf('.') ? SMPTE.split('.')[1].length : 0;\n\n\tvar secs = 0,\n\t multiplier = 1;\n\n\tSMPTE = SMPTE.split(':').reverse();\n\n\tfor (var i = 0, total = SMPTE.length; i < total; i++) {\n\t\tmultiplier = 1;\n\t\tif (i > 0) {\n\t\t\tmultiplier = Math.pow(60, i);\n\t\t}\n\t\tsecs += Number(SMPTE[i]) * multiplier;\n\t}\n\treturn Number(secs.toFixed(decimalLen));\n}\n\n_mejs2.default.Utils = _mejs2.default.Utils || {};\n_mejs2.default.Utils.secondsToTimeCode = secondsToTimeCode;\n_mejs2.default.Utils.timeCodeToSeconds = timeCodeToSeconds;\n_mejs2.default.Utils.calculateTimeFormat = calculateTimeFormat;\n_mejs2.default.Utils.convertSMPTEtoSeconds = convertSMPTEtoSeconds;\n\n},{\"7\":7}]},{},[29,6,5,15,23,20,19,21,22,24,16,18,17,9,10,11,12,13,14]);\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///../mediaelement/build/mediaelement-and-player.js"],"names":["e","t","n","r","s","o","u","i","f","Error","code","l","exports","call","length","1","_dereq_","module","2","global","doccy","topLevel","window","minDoc","document","this","self","3","win","4","root","setTimeoutFunc","setTimeout","noop","Promise","fn","TypeError","_state","_handled","_value","undefined","_deferreds","doResolve","handle","deferred","_immediateFn","cb","onFulfilled","onRejected","ret","reject","promise","resolve","push","newValue","then","finale","thisArg","apply","arguments","_unhandledRejectionFn","len","Handler","done","value","reason","ex","prototype","prom","constructor","all","arr","args","Array","slice","remaining","res","val","race","values","setImmediate","err","console","warn","_setImmediateFn","_setUnhandledRejectionFn","5","Object","defineProperty","obj","_typeof","Symbol","iterator","_mejs","_mejs2","__esModule","default","_en","_general","i18n","lang","en","EN","_len","_key","test","isObjectEmpty","message","pluralParam","str","pluralForm","language","_plural","input","number","form","concat","replace","escapeHTML","mejsL10n","strings","6","_window2","_interopRequireDefault","_document2","_media2","_renderer","_constants","MediaElement","idOrNode","options","sources","_this","instance","Constructor","_classCallCheck","isArray","defaults","renderers","fakeNodeName","pluginPath","shimScriptAccess","assign","mediaElement","createElement","id","error","originalNode","getElementById","Math","random","toString","setAttribute","tagName","toLowerCase","indexOf","getAttribute","parentNode","insertBefore","appendChild","processURL","url","type","location","protocol","IS_IOS","html5media","mediaTypes","xhr","XMLHttpRequest","onreadystatechange","readyState","status","blobUrl","URL","webkitURL","createObjectURL","response","open","responseType","send","mediaFiles","nodeName","src","_sources","children","nodeSource","node","formatType","_type","events","promises","renderer","rendererName","changeRenderer","media","keys","name","pause","stop","show","setSrc","hide","newRenderer","newRendererType","rendererArray","order","_i","total","index","renderOptions","create","setSize","width","height","generateError","urlList","event","createEvent","urls","dispatchEvent","props","properties","methods","addProperty","onGet","onSet","oldValue","get","set","assignGettersSetters","propName","capName","substring","toUpperCase","getFn","setFn","getSrc","getTypeFromFile","_src","absolutizeUrl","_type2","_i2","_src2","_type3","_media","renderInfo","select","paused","triggerAction","methodName","catch","tmpResponse","play","assignMethods","_i3","_i4","_total","addEventListener","eventName","callback","removeEventListener","callbacks","_i5","splice","_i6","destroy","cloneNode","wrapper","parentElement","removeAttribute","remove","success","7","_window","mejs","readOnlyProperties","8","_createClass","defineProperties","target","descriptor","enumerable","configurable","writable","key","protoProps","staticProps","Renderer","renderersLength","rendererIndicator","rendererRanking","sort","a","b","j","jl","canPlayType","_order","_renderers","Renderers","9","_i18n2","_player","_player2","Features","newObj","hasOwnProperty","_interopRequireWildcard","_dom","config","usePluginFullScreen","fullscreenText","useFakeFullscreen","isFullScreen","isNativeFullScreen","isInIframe","isPluginClickThroughCreated","fullscreenMode","containerSizeTimeout","buildfullscreen","player","isVideo","parent","detectFullscreenMode","fullscreenTitle","isString","fullscreenBtn","className","classPrefix","innerHTML","addControlElement","HAS_TRUE_NATIVE_FULLSCREEN","IS_FULLSCREEN","exitFullScreen","enterFullScreen","keyActions","action","ctrlKey","exitFullscreenCallback","which","keyCode","enableKeyboard","globalBind","normalHeight","normalWidth","FULLSCREEN_EVENT_NAME","setControlsSize","cleanfullscreen","globalUnbind","isNative","mode","SUPPORT_POINTER_EVENTS","containerStyles","getComputedStyle","getElement","container","IS_SAFARI","HAS_IOS_FULLSCREEN","webkitEnterFullscreen","IS_ANDROID","myVideo","webkitRequestFullscreen","mozRequestFullScreen","addClass","documentElement","parseFloat","requestFullScreen","checkFullscreen","windowWidth","innerWidth","clientWidth","body","screenWidth","screen","abs","style","elements","querySelectorAll","setDimensions","layers","removeClass","zoomFactor","min","captionText","querySelector","fontSize","lineHeight","clearTimeout","cancelFullScreen","_total2","bottom","10","playText","pauseText","buildplaypause","controls","op","playTitle","pauseTitle","playBtn","togglePlayPause","loop","11","_time","enableProgressTooltip","useSmoothHover","forceLive","buildprogress","lastKeyPressTime","mouseIsDown","startedPaused","autoRewindInitial","autoRewind","tooltip","rail","isNaN","duration","showControls","startControlsTimer","timeSlider","focus","newTime","max","currentTime","defaultSeekBackwardInterval","setCurrentTime","defaultSeekForwardInterval","loaded","current","timefloat","timefloatcurrent","slider","hovered","buffer","forcedHandlePause","setTransformStyle","element","transform","webkitTransform","MozTransform","msTransform","OTransform","display","handleMouseMove","totalStyles","offsetStyles","offset","offsetWidth","mozTransform","oTransform","cssMatrix","percentage","leftPos","pos","x","originalEvent","changedTouches","pageX","getDuration","left","getCurrentTime","toFixed","setCurrentRailHandle","updateCurrent","handleLocation","m41","hoverScaleX","half","offsetContainer","Utils","tooltipStyles","hasClass","marginLeft","secondsToTimeCode","alwaysShowHours","showTimecodeFrameCount","framesPerSecond","secondsDecimalLength","timeFormat","restartPlayer","Date","seekForward","seekBackward","seekTime","volume","newVolume","mutePlayer","setVolume","setMuted","Infinity","IS_FIREFOX","floor","preventDefault","stopPropagation","proxy","getOriginalDuration","endEvents","totalEvents","closest","SUPPORT_PASSIVE_EVENT","passive","broadcastCallback","seconds","timeSliderText","time","broadcast","label","innerText","setProgressRail","setCurrentRail","tabIndex","cleanprogress","detail","percent","buffered","end","bytesTotal","bufferedBytes","lengthComputable","fakeTime","setCurrentRailMain","nTime","tW","newWidth","round","handlePos","parseInt","12","timeAndDurationSeparator","buildcurrent","updateTimeCallback","controlsAreVisible","cleancurrent","buildduration","lastChild","updateDurationCallback","updateDuration","cleanduration","timecode","13","startLanguage","tracksText","chaptersText","tracksAriaLive","hideCaptionsButtonWhenEmpty","toggleCaptionsButtonWhenOnlyOne","slidesSelector","hasChapters","buildtracks","findTracks","tracks","trackFiles","attr","tracksTitle","chaptersTitle","domNode","textTracks","cleartracks","captions","firstChild","captionsText","captionsButton","disabled","chaptersButton","subtitleCount","kind","trim","trackToLoad","selectedTrack","isLoadingTrack","_kind","addTrackButton","trackId","srclang","loadNextTrack","inEvents","outEvents","keyboard","setTrack","labels","_total3","_total4","radio","siblings","el","_i7","_total5","_i8","_total6","alwaysShowControls","displayCaptions","slidesContainer","displaySlides","chapters","rebuildtracks","tracktags","track","entries","isLoaded","setByKeyboard","radios","checked","_i9","_total7","_i10","_total8","_i11","_total9","_track","caption","loadTrack","checkForTracks","isDataURI","match","b64DecodeUnicode","decodeURIComponent","atob","split","map","c","charCodeAt","join","readSrc","ajax","parseHLSPlaylist","srcUrl","parentUrl","lastIndexOf","fragments","lines","num","fragment","start","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","next","m","content","return","d","empty","getEntries","found","_loop","TrackFormatParser","webvtt","parse","_index2","nextNum","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","_loop2","_index","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_step3","_iterator3","exec","dfxp","enableTrackButton","setupSlides","drawChapters","removeTrackButton","codes","targetSiblings","button","hasSubtitles","searchTrackPosition","text","captionTextPreprocessor","html","div","scripts","getElementsByTagName","allElements","_i12","attributesObj","attributes","startsWith","sanitize","identifier","slides","imgs","showSlide","_this2","img","fadeIn","image","visible","fadeOut","_visible","_i13","_total10","listItems","_i14","_total11","_i15","_total12","lo","hi","mid","af","sq","ar","be","bg","ca","zh","hr","cs","da","nl","et","fl","fi","fr","gl","de","ht","iw","hu","is","ga","it","ja","ko","lv","lt","mk","ms","mt","no","fa","pl","pt","ro","ru","sr","sk","sl","es","sw","sv","tl","th","tr","uk","vi","cy","yi","pattern","trackText","convertSMPTEtoSeconds","settings","adoptNode","DOMParser","parseFromString","styleNode","styles","_i16","_total13","_temp","_style","14","muteText","unmuteText","allyVolumeControlText","hideVolumeOnTouchDevices","audioVolume","videoVolume","startVolume","buildvolume","volumeControlText","mute","volumeSlider","matches","muted","anchor","nextSibling","mouseIsOver","modified","volumeTotal","volumeCurrent","volumeHandle","positionVolumeHandle","firstElementChild","_button","volumePercentage","volumeStyles","marginBottom","handleVolumeMove","totalOffset","railHeight","pageY","top","railWidth","toggleMute","relatedTarget","rendered","15","16","_mediaelement2","_default2","dom","mepIndex","players","poster","showPosterWhenEnded","showPosterWhenPaused","defaultVideoWidth","defaultVideoHeight","videoWidth","videoHeight","defaultAudioWidth","defaultAudioHeight","audioWidth","audioHeight","enableAutosize","hideVideoControlsOnLoad","hideVideoControlsOnPause","clickToPlayPause","controlsTimeoutDefault","controlsTimeoutMouseEnter","controlsTimeoutMouseLeave","iPadUseNativeControls","iPhoneUseNativeControls","AndroidUseNativeControls","features","useDefaultControls","stretching","pauseOtherPlayers","customError","ended","MepDefaults","MediaElementPlayer","hasFocus","controlsEnabled","controlsTimer","currentMediaTime","JSON","calculateTimeFormat","init","playerOptions","_meReady","_handleError","isDynamic","IS_IPAD","IS_IPHONE","videoPlayerTitle","offscreen","btnSelector","isNodeAfter","background","outerContainer","tagType","capsTagName","initialAspectRatio","setPlayerSize","pluginWidth","pluginHeight","doAnimation","opacity","forceHide","timeout","killControlsTimer","hideControls","autoplayAttr","autoplay","enableControls","created","featurePosition","_setDefaultPlayer","buildposter","buildkeyboard","buildoverlays","defaultControls","filter","item","buildfeatures","clickToPlayPauseCallback","pressed","createIframeLayer","playerIndex","p","ignorePauseOtherPlayersOption","loadingElement","exp","currentTarget","keyboardAction","globalResizeCallback","webkitIsFullScreen","errorContainer","errorContent","imgError","outerHTML","disableControls","setFillMode","setResponsiveMode","hasFluidMode","maxWidth","currentStyle","parentEl","frameElement","parentStyles","nativeWidth","nativeHeight","aspectRatio","ratio","parentHeight","newHeight","parentWidth","innerHeight","clientHeight","layerChildren","isIframe","maxHeight","offsetHeight","targetElement","initHeight","initWidth","scaleX1","scaleY1","scaleX2","scaleY2","bScaleOnWidth","finalWidth","finalHeight","marginTop","totalMargin","marginRight","railStyles","railMargin","siblingsWidth","minWidth","child","layer","posterDiv","posterImg","backgroundImage","doc","ownerDocument","splitEvents","eventList","reduce","part","w","_eventList","_eventList2","feature","posterUrl","setPoster","getPosterUrl","loading","bigPlay","keyPressed","IS_STOCK_ANDROID","hasError","canplayTimeout","evt","initEvent","onkeydown","globalKeydownCallback","activeElement","globalClickCallback","keyAction","load","getVolume","featureIndex","source","_loop3","newTrack","17","DefaultPlayer","_duration","seekable","18","$","jQuery","Zepto","ender","mediaelementplayer","each","data","removeData","ready","19","NativeDash","dashjs","_createPlayer","path","loadScript","MediaPlayer","DashNativeRenderer","prefix","dash","debug","drm","robustnessLevel","HAS_MSE","dashPlayer","attachNativeEvents","reset","setProtectionData","getProtectionController","setRobustnessLevel","attachSource","_dashPlayer","dashEvents","initialize","attachView","setAutoPlay","assignMdashEvents","_event","eventType","on","typeChecks","add","20","PluginDetector","plugins","hasPluginVersion","plugin","v","pv","addPlugin","pluginName","mimeType","activeX","axDetect","detectPlugin","version","description","ax","NAV","mimeTypes","enabledPlugin","ActiveXObject","GetVariable","FlashMediaElementRenderer","flash","isActive","flashState","flashApi","flashApiStack","initEvents","flashReady","stackItem","details","flashWrapper","flashVars","flashHeight","flashWidth","enablePseudoStreaming","pseudoStreamingStartQueryParam","pseudoStreamingType","streamDelimiter","encodeURIComponent","proxyType","IS_IE","IS_EDGE","specialIEContainer","filename","flashNode","fire_setSize","FlashMediaElementVideoRenderer","FlashMediaElementHlsVideoRenderer","FlashMediaElementMdashVideoRenderer","FlashMediaElementAudioRenderer","FlashMediaElementAudioOggRenderer","21","NativeFlv","flvjs","LoggingControl","enableDebug","enableVerbose","createPlayer","configs","FlvNativeRenderer","flv","cors","flvPlayer","_flvOptions","_flvConfigs","attachMediaElement","_flvPlayer","flvEvents","Events","unload","detachMediaElement","assignFlvEvents","msg","flvOptions","flvConfigs","22","NativeHls","Hls","HlsNativeRenderer","hls","autoStartLoad","preload","hlsPlayer","loadSource","attachMedia","_hlsPlayer","hlsEvents","assignEvents","detachMedia","recoverDecodingErrorDate","recoverSwapAudioCodecDate","assignHlsEvents","fatal","now","getTime","recoverMediaError","swapAudioCodec","startLoad","stopLoad","23","HtmlMediaElement","SUPPORTS_NATIVE_HLS","24","YouTubeApi","isIframeStarted","isIframeLoaded","iframeQueue","enqueueIframe","YT","createIframe","loadIframeApi","iFrameReady","pop","Player","containerId","getYouTubeId","youTubeId","getYouTubeIdFromParam","getYouTubeIdFromUrl","parameters","paramParts","parts","getYouTubeNoCookieUrl","YouTubeIframeRenderer","youtube","disablekb","modestbranding","playsinline","rel","showinfo","iv_load_policy","nocookie","imageQuality","apiStack","youTubeApi","youTubeIframe","getPlaybackRate","isMuted","percentLoaded","getVideoLoadedFraction","getVideoUrl","_videoId","loadVideoById","cueVideoById","seekTo","unMute","setPlaybackRate","playVideo","pauseVideo","youtubeContainer","isAudio","videoId","youtubeSettings","host","playerVars","html5","origin","onReady","youTubeState","getIframe","newEvent","onStateChange","stopInterval","startInterval","onError","errorHandler","hasAttribute","playlist","onEvent","_youTubeState","interval","setInterval","clearInterval","quality","onYouTubePlayerAPIReady","25","HAS_NATIVE_FULLSCREEN_ENABLED","HAS_MS_NATIVE_FULLSCREEN","HAS_MOZ_NATIVE_FULLSCREEN","HAS_WEBKIT_NATIVE_FULLSCREEN","HAS_NATIVE_FULLSCREEN","IS_CHROME","IS_IPOD","UA","navigator","userAgent","MSStream","appName","pointerEvents","supports","supportsPassive","opts","html5Elements","video","hasiOSFullScreen","hasNativeFullscreen","requestFullscreen","hasWebkitNativeFullScreen","webkitRequestFullScreen","hasMozNativeFullScreen","hasMsNativeFullScreen","msRequestFullscreen","hasTrueNativeFullScreen","nativeFullScreenEnabled","fullScreenEventName","mozFullScreenEnabled","msFullscreenEnabled","mozFullScreen","msFullscreenElement","webkitCancelFullScreen","mozCancelFullScreen","msExitFullscreen","isiPad","isiPod","isiPhone","isiOS","isAndroid","isIE","isEdge","isChrome","isFirefox","isSafari","isStockAndroid","hasMSE","supportsNativeHLS","supportsPointerEvents","supportsPassiveEvent","26","toggleClass","script","async","onload","onerror","head","rect","getBoundingClientRect","scrollLeft","pageXOffset","scrollTop","pageYOffset","hasClassMethod","addClassMethod","removeClassMethod","classList","contains","RegExp","requestAnimationFrame","animate","timestamp","progress","elem","getClientRects","dataType","withCredentials","completed","accept","setRequestHeader","responseText","responseXML","27","debounce","func","wait","_arguments","immediate","context","callNow","getOwnPropertyNames","rwindow","forEach","eventFrags","namespace","CustomEvent","sourceNode","targetNode","compareDocumentPosition","28","getMimeFromType","getExtension","normalizeExtension","href","substr","normalizedExt","mime","baseName","extension","29","_promisePolyfill2","Element","CharacterData","DocumentType","removeChild","params","bubbles","cancelable","initCustomEvent","Event","to","nextSource","nextKey","String","searchString","position","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","lastTime","vendors","cancelAnimationFrame","currTime","timeToCall","pseudoEl","getPropertyValue","Node","nodes","childNodes","nodeType","30","isDropFrame","timeCodeToSeconds","fps","forceHours","showFrameCount","dropFrames","timeBase","framesPer24Hours","framesPer10Minutes","frameSep","hours","minutes","frames","timeBaseDivision","timeFormatFrags","timeFormatSettings","unique","result","h","output","totalMinutes","hFrames","mFrames","lis","format","firstTwoPlaces","separatorIndex","separator","firstChar","required","hasNextValue","SMPTE","decimalLen","secs","multiplier","reverse","pow","Number"],"mappings":"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","file":"async_main_357f8768.c8a5d568b3002b296cb0.bundle.js","sourcesContent":["/*!\n * MediaElement.js\n * http://www.mediaelementjs.com/\n *\n * Wrapper that mimics native HTML5 MediaElement (audio and video)\n * using a variety of technologies (pure JavaScript, Flash, iframe)\n *\n * Copyright 2010-2017, John Dyer (http://j.hn/)\n * License: MIT\n *\n */(function(){function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n\n\tif (typeof message === 'string' && message.length) {\n\n\t\tvar str = void 0,\n\t\t pluralForm = void 0;\n\n\t\tvar language = i18n.language();\n\n\t\tvar _plural = function _plural(input, number, form) {\n\n\t\t\tif ((typeof input === 'undefined' ? 'undefined' : _typeof(input)) !== 'object' || typeof number !== 'number' || typeof form !== 'number') {\n\t\t\t\treturn input;\n\t\t\t}\n\n\t\t\tvar _pluralForms = function () {\n\t\t\t\treturn [function () {\n\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t}, function () {\n\t\t\t\t\treturn (arguments.length <= 0 ? undefined : arguments[0]) === 1 ? arguments.length <= 1 ? undefined : arguments[1] : arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t}, function () {\n\t\t\t\t\treturn (arguments.length <= 0 ? undefined : arguments[0]) === 0 || (arguments.length <= 0 ? undefined : arguments[0]) === 1 ? arguments.length <= 1 ? undefined : arguments[1] : arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) % 10 === 1 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 !== 11) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) !== 0) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1 || (arguments.length <= 0 ? undefined : arguments[0]) === 11) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 2 || (arguments.length <= 0 ? undefined : arguments[0]) === 12) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) > 2 && (arguments.length <= 0 ? undefined : arguments[0]) < 20) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 0 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 > 0 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 < 20) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) % 10 === 1 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 !== 11) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 10 >= 2 && ((arguments.length <= 0 ? undefined : arguments[0]) % 100 < 10 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 20)) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn [3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) % 10 === 1 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 !== 11) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 10 >= 2 && (arguments.length <= 0 ? undefined : arguments[0]) % 10 <= 4 && ((arguments.length <= 0 ? undefined : arguments[0]) % 100 < 10 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 20)) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) >= 2 && (arguments.length <= 0 ? undefined : arguments[0]) <= 4) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 10 >= 2 && (arguments.length <= 0 ? undefined : arguments[0]) % 10 <= 4 && ((arguments.length <= 0 ? undefined : arguments[0]) % 100 < 10 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 20)) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) % 100 === 1) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 100 === 2) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 100 === 3 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 === 4) {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 2) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) > 2 && (arguments.length <= 0 ? undefined : arguments[0]) < 7) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) > 6 && (arguments.length <= 0 ? undefined : arguments[0]) < 11) {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 5 ? undefined : arguments[5];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 0) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 2) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 3 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 <= 10) {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 11) {\n\t\t\t\t\t\treturn arguments.length <= 5 ? undefined : arguments[5];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 6 ? undefined : arguments[6];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 0 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 > 1 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 < 11) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 100 > 10 && (arguments.length <= 0 ? undefined : arguments[0]) % 100 < 20) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) % 10 === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 10 === 2) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\treturn (arguments.length <= 0 ? undefined : arguments[0]) !== 11 && (arguments.length <= 0 ? undefined : arguments[0]) % 10 === 1 ? arguments.length <= 1 ? undefined : arguments[1] : arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) % 10 >= 2 && (arguments.length <= 0 ? undefined : arguments[0]) % 10 <= 4 && ((arguments.length <= 0 ? undefined : arguments[0]) % 100 < 10 || (arguments.length <= 0 ? undefined : arguments[0]) % 100 >= 20)) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 2) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) !== 8 && (arguments.length <= 0 ? undefined : arguments[0]) !== 11) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\treturn (arguments.length <= 0 ? undefined : arguments[0]) === 0 ? arguments.length <= 1 ? undefined : arguments[1] : arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 2) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 3) {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 4 ? undefined : arguments[4];\n\t\t\t\t\t}\n\t\t\t\t}, function () {\n\t\t\t\t\tif ((arguments.length <= 0 ? undefined : arguments[0]) === 0) {\n\t\t\t\t\t\treturn arguments.length <= 1 ? undefined : arguments[1];\n\t\t\t\t\t} else if ((arguments.length <= 0 ? undefined : arguments[0]) === 1) {\n\t\t\t\t\t\treturn arguments.length <= 2 ? undefined : arguments[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn arguments.length <= 3 ? undefined : arguments[3];\n\t\t\t\t\t}\n\t\t\t\t}];\n\t\t\t}();\n\n\t\t\treturn _pluralForms[form].apply(null, [number].concat(input));\n\t\t};\n\n\t\tif (i18n[language] !== undefined) {\n\t\t\tstr = i18n[language][message];\n\t\t\tif (pluralParam !== null && typeof pluralParam === 'number') {\n\t\t\t\tpluralForm = i18n[language]['mejs.plural-form'];\n\t\t\t\tstr = _plural.apply(null, [str, pluralParam, pluralForm]);\n\t\t\t}\n\t\t}\n\n\t\tif (!str && i18n.en) {\n\t\t\tstr = i18n.en[message];\n\t\t\tif (pluralParam !== null && typeof pluralParam === 'number') {\n\t\t\t\tpluralForm = i18n.en['mejs.plural-form'];\n\t\t\t\tstr = _plural.apply(null, [str, pluralParam, pluralForm]);\n\t\t\t}\n\t\t}\n\n\t\tstr = str || message;\n\n\t\tif (pluralParam !== null && typeof pluralParam === 'number') {\n\t\t\tstr = str.replace('%1', pluralParam);\n\t\t}\n\n\t\treturn (0, _general.escapeHTML)(str);\n\t}\n\n\treturn message;\n};\n\n_mejs2.default.i18n = i18n;\n\nif (typeof mejsL10n !== 'undefined') {\n\t_mejs2.default.i18n.language(mejsL10n.language, mejsL10n.strings);\n}\n\nexports.default = i18n;\n\n},{\"15\":15,\"27\":27,\"7\":7}],6:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _general = _dereq_(27);\n\nvar _media2 = _dereq_(28);\n\nvar _renderer = _dereq_(8);\n\nvar _constants = _dereq_(25);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar MediaElement = function MediaElement(idOrNode, options, sources) {\n\tvar _this = this;\n\n\t_classCallCheck(this, MediaElement);\n\n\tvar t = this;\n\n\tsources = Array.isArray(sources) ? sources : null;\n\n\tt.defaults = {\n\t\trenderers: [],\n\n\t\tfakeNodeName: 'mediaelementwrapper',\n\n\t\tpluginPath: 'build/',\n\n\t\tshimScriptAccess: 'sameDomain'\n\t};\n\n\toptions = Object.assign(t.defaults, options);\n\n\tt.mediaElement = _document2.default.createElement(options.fakeNodeName);\n\n\tvar id = idOrNode,\n\t error = false;\n\n\tif (typeof idOrNode === 'string') {\n\t\tt.mediaElement.originalNode = _document2.default.getElementById(idOrNode);\n\t} else {\n\t\tt.mediaElement.originalNode = idOrNode;\n\t\tid = idOrNode.id;\n\t}\n\n\tif (t.mediaElement.originalNode === undefined || t.mediaElement.originalNode === null) {\n\t\treturn null;\n\t}\n\n\tt.mediaElement.options = options;\n\tid = id || 'mejs_' + Math.random().toString().slice(2);\n\n\tt.mediaElement.originalNode.setAttribute('id', id + '_from_mejs');\n\n\tvar tagName = t.mediaElement.originalNode.tagName.toLowerCase();\n\tif (['video', 'audio'].indexOf(tagName) > -1 && !t.mediaElement.originalNode.getAttribute('preload')) {\n\t\tt.mediaElement.originalNode.setAttribute('preload', 'none');\n\t}\n\n\tt.mediaElement.originalNode.parentNode.insertBefore(t.mediaElement, t.mediaElement.originalNode);\n\n\tt.mediaElement.appendChild(t.mediaElement.originalNode);\n\n\tvar processURL = function processURL(url, type) {\n\t\tif (_window2.default.location.protocol === 'https:' && url.indexOf('http:') === 0 && _constants.IS_IOS && _mejs2.default.html5media.mediaTypes.indexOf(type) > -1) {\n\t\t\tvar xhr = new XMLHttpRequest();\n\t\t\txhr.onreadystatechange = function () {\n\t\t\t\tif (this.readyState === 4 && this.status === 200) {\n\t\t\t\t\tvar _url = _window2.default.URL || _window2.default.webkitURL,\n\t\t\t\t\t blobUrl = _url.createObjectURL(this.response);\n\t\t\t\t\tt.mediaElement.originalNode.setAttribute('src', blobUrl);\n\t\t\t\t\treturn blobUrl;\n\t\t\t\t}\n\t\t\t\treturn url;\n\t\t\t};\n\t\t\txhr.open('GET', url);\n\t\t\txhr.responseType = 'blob';\n\t\t\txhr.send();\n\t\t}\n\n\t\treturn url;\n\t};\n\n\tvar mediaFiles = void 0;\n\n\tif (sources !== null) {\n\t\tmediaFiles = sources;\n\t} else if (t.mediaElement.originalNode !== null) {\n\n\t\tmediaFiles = [];\n\n\t\tswitch (t.mediaElement.originalNode.nodeName.toLowerCase()) {\n\t\t\tcase 'iframe':\n\t\t\t\tmediaFiles.push({\n\t\t\t\t\ttype: '',\n\t\t\t\t\tsrc: t.mediaElement.originalNode.getAttribute('src')\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\tcase 'audio':\n\t\t\tcase 'video':\n\t\t\t\tvar _sources = t.mediaElement.originalNode.children.length,\n\t\t\t\t nodeSource = t.mediaElement.originalNode.getAttribute('src');\n\n\t\t\t\tif (nodeSource) {\n\t\t\t\t\tvar node = t.mediaElement.originalNode,\n\t\t\t\t\t type = (0, _media2.formatType)(nodeSource, node.getAttribute('type'));\n\t\t\t\t\tmediaFiles.push({\n\t\t\t\t\t\ttype: type,\n\t\t\t\t\t\tsrc: processURL(nodeSource, type)\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tfor (var i = 0; i < _sources; i++) {\n\t\t\t\t\tvar n = t.mediaElement.originalNode.children[i];\n\t\t\t\t\tif (n.tagName.toLowerCase() === 'source') {\n\t\t\t\t\t\tvar src = n.getAttribute('src'),\n\t\t\t\t\t\t _type = (0, _media2.formatType)(src, n.getAttribute('type'));\n\t\t\t\t\t\tmediaFiles.push({ type: _type, src: processURL(src, _type) });\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tt.mediaElement.id = id;\n\tt.mediaElement.renderers = {};\n\tt.mediaElement.events = {};\n\tt.mediaElement.promises = [];\n\tt.mediaElement.renderer = null;\n\tt.mediaElement.rendererName = null;\n\n\tt.mediaElement.changeRenderer = function (rendererName, mediaFiles) {\n\n\t\tvar t = _this,\n\t\t media = Object.keys(mediaFiles[0]).length > 2 ? mediaFiles[0] : mediaFiles[0].src;\n\n\t\tif (t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null && t.mediaElement.renderer.name === rendererName) {\n\t\t\tt.mediaElement.renderer.pause();\n\t\t\tif (t.mediaElement.renderer.stop) {\n\t\t\t\tt.mediaElement.renderer.stop();\n\t\t\t}\n\t\t\tt.mediaElement.renderer.show();\n\t\t\tt.mediaElement.renderer.setSrc(media);\n\t\t\treturn true;\n\t\t}\n\n\t\tif (t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null) {\n\t\t\tt.mediaElement.renderer.pause();\n\t\t\tif (t.mediaElement.renderer.stop) {\n\t\t\t\tt.mediaElement.renderer.stop();\n\t\t\t}\n\t\t\tt.mediaElement.renderer.hide();\n\t\t}\n\n\t\tvar newRenderer = t.mediaElement.renderers[rendererName],\n\t\t newRendererType = null;\n\n\t\tif (newRenderer !== undefined && newRenderer !== null) {\n\t\t\tnewRenderer.show();\n\t\t\tnewRenderer.setSrc(media);\n\t\t\tt.mediaElement.renderer = newRenderer;\n\t\t\tt.mediaElement.rendererName = rendererName;\n\t\t\treturn true;\n\t\t}\n\n\t\tvar rendererArray = t.mediaElement.options.renderers.length ? t.mediaElement.options.renderers : _renderer.renderer.order;\n\n\t\tfor (var _i = 0, total = rendererArray.length; _i < total; _i++) {\n\t\t\tvar index = rendererArray[_i];\n\n\t\t\tif (index === rendererName) {\n\t\t\t\tvar rendererList = _renderer.renderer.renderers;\n\t\t\t\tnewRendererType = rendererList[index];\n\n\t\t\t\tvar renderOptions = Object.assign(newRendererType.options, t.mediaElement.options);\n\t\t\t\tnewRenderer = newRendererType.create(t.mediaElement, renderOptions, mediaFiles);\n\t\t\t\tnewRenderer.name = rendererName;\n\n\t\t\t\tt.mediaElement.renderers[newRendererType.name] = newRenderer;\n\t\t\t\tt.mediaElement.renderer = newRenderer;\n\t\t\t\tt.mediaElement.rendererName = rendererName;\n\t\t\t\tnewRenderer.show();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t};\n\n\tt.mediaElement.setSize = function (width, height) {\n\t\tif (t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null) {\n\t\t\tt.mediaElement.renderer.setSize(width, height);\n\t\t}\n\t};\n\n\tt.mediaElement.generateError = function (message, urlList) {\n\t\tmessage = message || '';\n\t\turlList = Array.isArray(urlList) ? urlList : [];\n\t\tvar event = (0, _general.createEvent)('error', t.mediaElement);\n\t\tevent.message = message;\n\t\tevent.urls = urlList;\n\t\tt.mediaElement.dispatchEvent(event);\n\t\terror = true;\n\t};\n\n\tvar props = _mejs2.default.html5media.properties,\n\t methods = _mejs2.default.html5media.methods,\n\t addProperty = function addProperty(obj, name, onGet, onSet) {\n\t\tvar oldValue = obj[name];\n\t\tvar getFn = function getFn() {\n\t\t\treturn onGet.apply(obj, [oldValue]);\n\t\t},\n\t\t setFn = function setFn(newValue) {\n\t\t\toldValue = onSet.apply(obj, [newValue]);\n\t\t\treturn oldValue;\n\t\t};\n\n\t\tObject.defineProperty(obj, name, {\n\t\t\tget: getFn,\n\t\t\tset: setFn\n\t\t});\n\t},\n\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\tif (propName !== 'src') {\n\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1),\n\t\t\t getFn = function getFn() {\n\t\t\t\treturn t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null && typeof t.mediaElement.renderer['get' + capName] === 'function' ? t.mediaElement.renderer['get' + capName]() : null;\n\t\t\t},\n\t\t\t setFn = function setFn(value) {\n\t\t\t\tif (t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null && typeof t.mediaElement.renderer['set' + capName] === 'function') {\n\t\t\t\t\tt.mediaElement.renderer['set' + capName](value);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\taddProperty(t.mediaElement, propName, getFn, setFn);\n\t\t\tt.mediaElement['get' + capName] = getFn;\n\t\t\tt.mediaElement['set' + capName] = setFn;\n\t\t}\n\t},\n\t getSrc = function getSrc() {\n\t\treturn t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null ? t.mediaElement.renderer.getSrc() : null;\n\t},\n\t setSrc = function setSrc(value) {\n\t\tvar mediaFiles = [];\n\n\t\tif (typeof value === 'string') {\n\t\t\tmediaFiles.push({\n\t\t\t\tsrc: value,\n\t\t\t\ttype: value ? (0, _media2.getTypeFromFile)(value) : ''\n\t\t\t});\n\t\t} else if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.src !== undefined) {\n\t\t\tvar _src = (0, _media2.absolutizeUrl)(value.src),\n\t\t\t _type2 = value.type,\n\t\t\t media = Object.assign(value, {\n\t\t\t\tsrc: _src,\n\t\t\t\ttype: (_type2 === '' || _type2 === null || _type2 === undefined) && _src ? (0, _media2.getTypeFromFile)(_src) : _type2\n\t\t\t});\n\t\t\tmediaFiles.push(media);\n\t\t} else if (Array.isArray(value)) {\n\t\t\tfor (var _i2 = 0, total = value.length; _i2 < total; _i2++) {\n\n\t\t\t\tvar _src2 = (0, _media2.absolutizeUrl)(value[_i2].src),\n\t\t\t\t _type3 = value[_i2].type,\n\t\t\t\t _media = Object.assign(value[_i2], {\n\t\t\t\t\tsrc: _src2,\n\t\t\t\t\ttype: (_type3 === '' || _type3 === null || _type3 === undefined) && _src2 ? (0, _media2.getTypeFromFile)(_src2) : _type3\n\t\t\t\t});\n\n\t\t\t\tmediaFiles.push(_media);\n\t\t\t}\n\t\t}\n\n\t\tvar renderInfo = _renderer.renderer.select(mediaFiles, t.mediaElement.options.renderers.length ? t.mediaElement.options.renderers : []),\n\t\t event = void 0;\n\n\t\tif (!t.mediaElement.paused && !(t.mediaElement.src == null || t.mediaElement.src === '')) {\n\t\t\tt.mediaElement.pause();\n\t\t\tevent = (0, _general.createEvent)('pause', t.mediaElement);\n\t\t\tt.mediaElement.dispatchEvent(event);\n\t\t}\n\t\tt.mediaElement.originalNode.src = mediaFiles[0].src || '';\n\n\t\tif (renderInfo === null && mediaFiles[0].src) {\n\t\t\tt.mediaElement.generateError('No renderer found', mediaFiles);\n\t\t\treturn;\n\t\t}\n\n\t\tvar shouldChangeRenderer = !(mediaFiles[0].src == null || mediaFiles[0].src === '');\n\t\treturn shouldChangeRenderer ? t.mediaElement.changeRenderer(renderInfo.rendererName, mediaFiles) : null;\n\t},\n\t triggerAction = function triggerAction(methodName, args) {\n\t\ttry {\n\t\t\tif (methodName === 'play' && (t.mediaElement.rendererName === 'native_dash' || t.mediaElement.rendererName === 'native_hls' || t.mediaElement.rendererName === 'vimeo_iframe')) {\n\t\t\t\tvar response = t.mediaElement.renderer[methodName](args);\n\t\t\t\tif (response && typeof response.then === 'function') {\n\t\t\t\t\tresponse.catch(function () {\n\t\t\t\t\t\tif (t.mediaElement.paused) {\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tvar tmpResponse = t.mediaElement.renderer.play();\n\t\t\t\t\t\t\t\tif (tmpResponse !== undefined) {\n\t\t\t\t\t\t\t\t\ttmpResponse.catch(function () {\n\t\t\t\t\t\t\t\t\t\tif (!t.mediaElement.renderer.paused) {\n\t\t\t\t\t\t\t\t\t\t\tt.mediaElement.renderer.pause();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}, 150);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn response;\n\t\t\t} else {\n\t\t\t\treturn t.mediaElement.renderer[methodName](args);\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tt.mediaElement.generateError(e, mediaFiles);\n\t\t\tthrow e;\n\t\t}\n\t},\n\t assignMethods = function assignMethods(methodName) {\n\t\tt.mediaElement[methodName] = function () {\n\t\t\tfor (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t\t\t\targs[_key] = arguments[_key];\n\t\t\t}\n\n\t\t\tif (t.mediaElement.renderer !== undefined && t.mediaElement.renderer !== null && typeof t.mediaElement.renderer[methodName] === 'function') {\n\t\t\t\tif (t.mediaElement.promises.length) {\n\t\t\t\t\treturn Promise.all(t.mediaElement.promises).then(function () {\n\t\t\t\t\t\treturn triggerAction(methodName, args);\n\t\t\t\t\t}).catch(function (e) {\n\t\t\t\t\t\tt.mediaElement.generateError(e, mediaFiles);\n\t\t\t\t\t\treturn Promise.reject(e);\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturn triggerAction(methodName, args);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn null;\n\t\t};\n\t};\n\n\taddProperty(t.mediaElement, 'src', getSrc, setSrc);\n\tt.mediaElement.getSrc = getSrc;\n\tt.mediaElement.setSrc = setSrc;\n\n\tfor (var _i3 = 0, total = props.length; _i3 < total; _i3++) {\n\t\tassignGettersSetters(props[_i3]);\n\t}\n\n\tfor (var _i4 = 0, _total = methods.length; _i4 < _total; _i4++) {\n\t\tassignMethods(methods[_i4]);\n\t}\n\n\tt.mediaElement.addEventListener = function (eventName, callback) {\n\t\tt.mediaElement.events[eventName] = t.mediaElement.events[eventName] || [];\n\n\t\tt.mediaElement.events[eventName].push(callback);\n\t};\n\tt.mediaElement.removeEventListener = function (eventName, callback) {\n\t\tif (!eventName) {\n\t\t\tt.mediaElement.events = {};\n\t\t\treturn true;\n\t\t}\n\n\t\tvar callbacks = t.mediaElement.events[eventName];\n\n\t\tif (!callbacks) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif (!callback) {\n\t\t\tt.mediaElement.events[eventName] = [];\n\t\t\treturn true;\n\t\t}\n\n\t\tfor (var _i5 = 0; _i5 < callbacks.length; _i5++) {\n\t\t\tif (callbacks[_i5] === callback) {\n\t\t\t\tt.mediaElement.events[eventName].splice(_i5, 1);\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t};\n\n\tt.mediaElement.dispatchEvent = function (event) {\n\t\tvar callbacks = t.mediaElement.events[event.type];\n\t\tif (callbacks) {\n\t\t\tfor (var _i6 = 0; _i6 < callbacks.length; _i6++) {\n\t\t\t\tcallbacks[_i6].apply(null, [event]);\n\t\t\t}\n\t\t}\n\t};\n\n\tt.mediaElement.destroy = function () {\n\t\tvar mediaElement = t.mediaElement.originalNode.cloneNode(true);\n\t\tvar wrapper = t.mediaElement.parentElement;\n\t\tmediaElement.removeAttribute('id');\n\t\tmediaElement.remove();\n\t\tt.mediaElement.remove();\n\t\twrapper.appendChild(mediaElement);\n\t};\n\n\tif (mediaFiles.length) {\n\t\tt.mediaElement.src = mediaFiles;\n\t}\n\n\tif (t.mediaElement.promises.length) {\n\t\tPromise.all(t.mediaElement.promises).then(function () {\n\t\t\tif (t.mediaElement.options.success) {\n\t\t\t\tt.mediaElement.options.success(t.mediaElement, t.mediaElement.originalNode);\n\t\t\t}\n\t\t}).catch(function () {\n\t\t\tif (error && t.mediaElement.options.error) {\n\t\t\t\tt.mediaElement.options.error(t.mediaElement, t.mediaElement.originalNode);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tif (t.mediaElement.options.success) {\n\t\t\tt.mediaElement.options.success(t.mediaElement, t.mediaElement.originalNode);\n\t\t}\n\n\t\tif (error && t.mediaElement.options.error) {\n\t\t\tt.mediaElement.options.error(t.mediaElement, t.mediaElement.originalNode);\n\t\t}\n\t}\n\n\treturn t.mediaElement;\n};\n\n_window2.default.MediaElement = MediaElement;\n_mejs2.default.MediaElement = MediaElement;\n\nexports.default = MediaElement;\n\n},{\"2\":2,\"25\":25,\"27\":27,\"28\":28,\"3\":3,\"7\":7,\"8\":8}],7:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar mejs = {};\n\nmejs.version = '4.2.17';\n\nmejs.html5media = {\n\tproperties: ['volume', 'src', 'currentTime', 'muted', 'duration', 'paused', 'ended', 'buffered', 'error', 'networkState', 'readyState', 'seeking', 'seekable', 'currentSrc', 'preload', 'bufferedBytes', 'bufferedTime', 'initialTime', 'startOffsetTime', 'defaultPlaybackRate', 'playbackRate', 'played', 'autoplay', 'loop', 'controls'],\n\treadOnlyProperties: ['duration', 'paused', 'ended', 'buffered', 'error', 'networkState', 'readyState', 'seeking', 'seekable'],\n\n\tmethods: ['load', 'play', 'pause', 'canPlayType'],\n\n\tevents: ['loadstart', 'durationchange', 'loadedmetadata', 'loadeddata', 'progress', 'canplay', 'canplaythrough', 'suspend', 'abort', 'error', 'emptied', 'stalled', 'play', 'playing', 'pause', 'waiting', 'seeking', 'seeked', 'timeupdate', 'ended', 'ratechange', 'volumechange'],\n\n\tmediaTypes: ['audio/mp3', 'audio/ogg', 'audio/oga', 'audio/wav', 'audio/x-wav', 'audio/wave', 'audio/x-pn-wav', 'audio/mpeg', 'audio/mp4', 'video/mp4', 'video/webm', 'video/ogg', 'video/ogv']\n};\n\n_window2.default.mejs = mejs;\n\nexports.default = mejs;\n\n},{\"3\":3}],8:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.renderer = undefined;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Renderer = function () {\n\tfunction Renderer() {\n\t\t_classCallCheck(this, Renderer);\n\n\t\tthis.renderers = {};\n\t\tthis.order = [];\n\t}\n\n\t_createClass(Renderer, [{\n\t\tkey: 'add',\n\t\tvalue: function add(renderer) {\n\t\t\tif (renderer.name === undefined) {\n\t\t\t\tthrow new TypeError('renderer must contain at least `name` property');\n\t\t\t}\n\n\t\t\tthis.renderers[renderer.name] = renderer;\n\t\t\tthis.order.push(renderer.name);\n\t\t}\n\t}, {\n\t\tkey: 'select',\n\t\tvalue: function select(mediaFiles) {\n\t\t\tvar renderers = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n\n\t\t\tvar renderersLength = renderers.length;\n\n\t\t\trenderers = renderers.length ? renderers : this.order;\n\n\t\t\tif (!renderersLength) {\n\t\t\t\tvar rendererIndicator = [/^(html5|native)/i, /^flash/i, /iframe$/i],\n\t\t\t\t rendererRanking = function rendererRanking(renderer) {\n\t\t\t\t\tfor (var i = 0, total = rendererIndicator.length; i < total; i++) {\n\t\t\t\t\t\tif (rendererIndicator[i].test(renderer)) {\n\t\t\t\t\t\t\treturn i;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn rendererIndicator.length;\n\t\t\t\t};\n\n\t\t\t\trenderers.sort(function (a, b) {\n\t\t\t\t\treturn rendererRanking(a) - rendererRanking(b);\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tfor (var i = 0, total = renderers.length; i < total; i++) {\n\t\t\t\tvar key = renderers[i],\n\t\t\t\t _renderer = this.renderers[key];\n\n\t\t\t\tif (_renderer !== null && _renderer !== undefined) {\n\t\t\t\t\tfor (var j = 0, jl = mediaFiles.length; j < jl; j++) {\n\t\t\t\t\t\tif (typeof _renderer.canPlayType === 'function' && typeof mediaFiles[j].type === 'string' && _renderer.canPlayType(mediaFiles[j].type)) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\trendererName: _renderer.name,\n\t\t\t\t\t\t\t\tsrc: mediaFiles[j].src\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn null;\n\t\t}\n\t}, {\n\t\tkey: 'order',\n\t\tset: function set(order) {\n\t\t\tif (!Array.isArray(order)) {\n\t\t\t\tthrow new TypeError('order must be an array of strings.');\n\t\t\t}\n\n\t\t\tthis._order = order;\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this._order;\n\t\t}\n\t}, {\n\t\tkey: 'renderers',\n\t\tset: function set(renderers) {\n\t\t\tif (renderers !== null && (typeof renderers === 'undefined' ? 'undefined' : _typeof(renderers)) !== 'object') {\n\t\t\t\tthrow new TypeError('renderers must be an array of objects.');\n\t\t\t}\n\n\t\t\tthis._renderers = renderers;\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this._renderers;\n\t\t}\n\t}]);\n\n\treturn Renderer;\n}();\n\nvar renderer = exports.renderer = new Renderer();\n\n_mejs2.default.Renderers = renderer;\n\n},{\"7\":7}],9:[function(_dereq_,module,exports){\n'use strict';\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _constants = _dereq_(25);\n\nvar Features = _interopRequireWildcard(_constants);\n\nvar _general = _dereq_(27);\n\nvar _dom = _dereq_(26);\n\nvar _media = _dereq_(28);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tusePluginFullScreen: true,\n\n\tfullscreenText: null,\n\n\tuseFakeFullscreen: false\n});\n\nObject.assign(_player2.default.prototype, {\n\tisFullScreen: false,\n\n\tisNativeFullScreen: false,\n\n\tisInIframe: false,\n\n\tisPluginClickThroughCreated: false,\n\n\tfullscreenMode: '',\n\n\tcontainerSizeTimeout: null,\n\n\tbuildfullscreen: function buildfullscreen(player) {\n\t\tif (!player.isVideo) {\n\t\t\treturn;\n\t\t}\n\n\t\tplayer.isInIframe = _window2.default.location !== _window2.default.parent.location;\n\n\t\tplayer.detectFullscreenMode();\n\n\t\tvar t = this,\n\t\t fullscreenTitle = (0, _general.isString)(t.options.fullscreenText) ? t.options.fullscreenText : _i18n2.default.t('mejs.fullscreen'),\n\t\t fullscreenBtn = _document2.default.createElement('div');\n\n\t\tfullscreenBtn.className = t.options.classPrefix + 'button ' + t.options.classPrefix + 'fullscreen-button';\n\t\tfullscreenBtn.innerHTML = '';\n\t\tt.addControlElement(fullscreenBtn, 'fullscreen');\n\n\t\tfullscreenBtn.addEventListener('click', function () {\n\t\t\tvar isFullScreen = Features.HAS_TRUE_NATIVE_FULLSCREEN && Features.IS_FULLSCREEN || player.isFullScreen;\n\n\t\t\tif (isFullScreen) {\n\t\t\t\tplayer.exitFullScreen();\n\t\t\t} else {\n\t\t\t\tplayer.enterFullScreen();\n\t\t\t}\n\t\t});\n\n\t\tplayer.fullscreenBtn = fullscreenBtn;\n\n\t\tt.options.keyActions.push({\n\t\t\tkeys: [70],\n\t\t\taction: function action(player, media, key, event) {\n\t\t\t\tif (!event.ctrlKey) {\n\t\t\t\t\tif (typeof player.enterFullScreen !== 'undefined') {\n\t\t\t\t\t\tif (player.isFullScreen) {\n\t\t\t\t\t\t\tplayer.exitFullScreen();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tplayer.enterFullScreen();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tt.exitFullscreenCallback = function (e) {\n\t\t\tvar key = e.which || e.keyCode || 0;\n\t\t\tif (t.options.enableKeyboard && key === 27 && (Features.HAS_TRUE_NATIVE_FULLSCREEN && Features.IS_FULLSCREEN || t.isFullScreen)) {\n\t\t\t\tplayer.exitFullScreen();\n\t\t\t}\n\t\t};\n\n\t\tt.globalBind('keydown', t.exitFullscreenCallback);\n\n\t\tt.normalHeight = 0;\n\t\tt.normalWidth = 0;\n\n\t\tif (Features.HAS_TRUE_NATIVE_FULLSCREEN) {\n\t\t\tvar fullscreenChanged = function fullscreenChanged() {\n\t\t\t\tif (player.isFullScreen) {\n\t\t\t\t\tif (Features.isFullScreen()) {\n\t\t\t\t\t\tplayer.isNativeFullScreen = true;\n\n\t\t\t\t\t\tplayer.setControlsSize();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tplayer.isNativeFullScreen = false;\n\n\t\t\t\t\t\tplayer.exitFullScreen();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tplayer.globalBind(Features.FULLSCREEN_EVENT_NAME, fullscreenChanged);\n\t\t}\n\t},\n\tcleanfullscreen: function cleanfullscreen(player) {\n\t\tplayer.exitFullScreen();\n\t\tplayer.globalUnbind('keydown', player.exitFullscreenCallback);\n\t},\n\tdetectFullscreenMode: function detectFullscreenMode() {\n\t\tvar t = this,\n\t\t isNative = t.media.rendererName !== null && /(native|html5)/i.test(t.media.rendererName);\n\n\t\tvar mode = '';\n\n\t\tif (Features.HAS_TRUE_NATIVE_FULLSCREEN && isNative) {\n\t\t\tmode = 'native-native';\n\t\t} else if (Features.HAS_TRUE_NATIVE_FULLSCREEN && !isNative) {\n\t\t\tmode = 'plugin-native';\n\t\t} else if (t.usePluginFullScreen && Features.SUPPORT_POINTER_EVENTS) {\n\t\t\tmode = 'plugin-click';\n\t\t}\n\n\t\tt.fullscreenMode = mode;\n\t\treturn mode;\n\t},\n\tenterFullScreen: function enterFullScreen() {\n\t\tvar t = this,\n\t\t isNative = t.media.rendererName !== null && /(html5|native)/i.test(t.media.rendererName),\n\t\t containerStyles = getComputedStyle(t.getElement(t.container));\n\n\t\tif (!t.isVideo) {\n\t\t\treturn;\n\t\t}\n\n\t\tt.getElement(t.container).dispatchEvent((0, _general.createEvent)('enteringfullscreen', t.getElement(t.container)));\n\n\t\tif (t.options.useFakeFullscreen === false && (Features.IS_IOS || Features.IS_SAFARI) && Features.HAS_IOS_FULLSCREEN && typeof t.media.originalNode.webkitEnterFullscreen === 'function' && t.media.originalNode.canPlayType((0, _media.getTypeFromFile)(t.media.getSrc()))) {\n\t\t\tt.media.originalNode.webkitEnterFullscreen();\n\t\t\treturn;\n\t\t}\n\n\t\tif (Features.IS_ANDROID) {\n\t\t\tvar myVideo = t.media.originalNode;\n\t\t\tif (typeof myVideo.webkitEnterFullscreen != \"undefined\") {\n\t\t\t\tmyVideo.webkitEnterFullscreen();\n\t\t\t\treturn;\n\t\t\t} else if (typeof myVideo.webkitRequestFullscreen != \"undefined\") {\n\t\t\t\tmyVideo.webkitRequestFullscreen();\n\t\t\t\treturn;\n\t\t\t} else if (typeof myVideo.mozRequestFullScreen != \"undefined\") {\n\t\t\t\tmyVideo.mozRequestFullScreen();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\t(0, _dom.addClass)(_document2.default.documentElement, t.options.classPrefix + 'fullscreen');\n\t\t(0, _dom.addClass)(t.getElement(t.container), t.options.classPrefix + 'container-fullscreen');\n\n\t\tt.normalHeight = parseFloat(containerStyles.height);\n\t\tt.normalWidth = parseFloat(containerStyles.width);\n\n\t\tif (t.fullscreenMode === 'native-native' || t.fullscreenMode === 'plugin-native') {\n\t\t\tFeatures.requestFullScreen(t.getElement(t.container));\n\n\t\t\tif (t.isInIframe) {\n\t\t\t\tsetTimeout(function checkFullscreen() {\n\n\t\t\t\t\tif (t.isNativeFullScreen) {\n\t\t\t\t\t\tvar percentErrorMargin = 0.002,\n\t\t\t\t\t\t windowWidth = _window2.default.innerWidth || _document2.default.documentElement.clientWidth || _document2.default.body.clientWidth,\n\t\t\t\t\t\t screenWidth = screen.width,\n\t\t\t\t\t\t absDiff = Math.abs(screenWidth - windowWidth),\n\t\t\t\t\t\t marginError = screenWidth * percentErrorMargin;\n\n\t\t\t\t\t\tif (absDiff > marginError) {\n\t\t\t\t\t\t\tt.exitFullScreen();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tsetTimeout(checkFullscreen, 500);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}, 1000);\n\t\t\t}\n\t\t}\n\n\t\tt.getElement(t.container).style.width = '100%';\n\t\tt.getElement(t.container).style.height = '100%';\n\n\t\tt.containerSizeTimeout = setTimeout(function () {\n\t\t\tt.getElement(t.container).style.width = '100%';\n\t\t\tt.getElement(t.container).style.height = '100%';\n\t\t\tt.setControlsSize();\n\t\t}, 500);\n\n\t\tif (isNative) {\n\t\t\tt.node.style.width = '100%';\n\t\t\tt.node.style.height = '100%';\n\t\t} else {\n\t\t\tvar elements = t.getElement(t.container).querySelectorAll('embed, object, video'),\n\t\t\t _total = elements.length;\n\t\t\tfor (var i = 0; i < _total; i++) {\n\t\t\t\telements[i].style.width = '100%';\n\t\t\t\telements[i].style.height = '100%';\n\t\t\t}\n\t\t}\n\n\t\tif (t.options.setDimensions && typeof t.media.setSize === 'function') {\n\t\t\tt.media.setSize(screen.width, screen.height);\n\t\t}\n\n\t\tvar layers = t.getElement(t.layers).children,\n\t\t total = layers.length;\n\t\tfor (var _i = 0; _i < total; _i++) {\n\t\t\tlayers[_i].style.width = '100%';\n\t\t\tlayers[_i].style.height = '100%';\n\t\t}\n\n\t\tif (t.fullscreenBtn) {\n\t\t\t(0, _dom.removeClass)(t.fullscreenBtn, t.options.classPrefix + 'fullscreen');\n\t\t\t(0, _dom.addClass)(t.fullscreenBtn, t.options.classPrefix + 'unfullscreen');\n\t\t}\n\n\t\tt.setControlsSize();\n\t\tt.isFullScreen = true;\n\n\t\tvar zoomFactor = Math.min(screen.width / t.width, screen.height / t.height),\n\t\t captionText = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'captions-text');\n\t\tif (captionText) {\n\t\t\tcaptionText.style.fontSize = zoomFactor * 50 + '%';\n\t\t\tcaptionText.style.lineHeight = 'normal';\n\t\t}\n\t\tvar event = (0, _general.createEvent)('enteredfullscreen', t.getElement(t.container));\n\t\tt.getElement(t.container).dispatchEvent(event);\n\t},\n\texitFullScreen: function exitFullScreen() {\n\t\tvar t = this,\n\t\t isNative = t.media.rendererName !== null && /(native|html5)/i.test(t.media.rendererName);\n\n\t\tif (!t.isVideo) {\n\t\t\treturn;\n\t\t}\n\n\t\tclearTimeout(t.containerSizeTimeout);\n\n\t\tif (Features.HAS_TRUE_NATIVE_FULLSCREEN && (Features.IS_FULLSCREEN || t.isFullScreen)) {\n\t\t\tFeatures.cancelFullScreen();\n\t\t}\n\n\t\t(0, _dom.removeClass)(_document2.default.documentElement, t.options.classPrefix + 'fullscreen');\n\t\t(0, _dom.removeClass)(t.getElement(t.container), t.options.classPrefix + 'container-fullscreen');\n\n\t\tif (t.options.setDimensions) {\n\t\t\tt.getElement(t.container).style.width = t.normalWidth + 'px';\n\t\t\tt.getElement(t.container).style.height = t.normalHeight + 'px';\n\n\t\t\tif (isNative) {\n\t\t\t\tt.node.style.width = t.normalWidth + 'px';\n\t\t\t\tt.node.style.height = t.normalHeight + 'px';\n\t\t\t} else {\n\t\t\t\tvar elements = t.getElement(t.container).querySelectorAll('embed, object, video'),\n\t\t\t\t _total2 = elements.length;\n\t\t\t\tfor (var i = 0; i < _total2; i++) {\n\t\t\t\t\telements[i].style.width = t.normalWidth + 'px';\n\t\t\t\t\telements[i].style.height = t.normalHeight + 'px';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (typeof t.media.setSize === 'function') {\n\t\t\t\tt.media.setSize(t.normalWidth, t.normalHeight);\n\t\t\t}\n\n\t\t\tvar layers = t.getElement(t.layers).children,\n\t\t\t total = layers.length;\n\t\t\tfor (var _i2 = 0; _i2 < total; _i2++) {\n\t\t\t\tlayers[_i2].style.width = t.normalWidth + 'px';\n\t\t\t\tlayers[_i2].style.height = t.normalHeight + 'px';\n\t\t\t}\n\t\t}\n\n\t\tif (t.fullscreenBtn) {\n\t\t\t(0, _dom.removeClass)(t.fullscreenBtn, t.options.classPrefix + 'unfullscreen');\n\t\t\t(0, _dom.addClass)(t.fullscreenBtn, t.options.classPrefix + 'fullscreen');\n\t\t}\n\n\t\tt.setControlsSize();\n\t\tt.isFullScreen = false;\n\n\t\tvar captionText = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'captions-text');\n\t\tif (captionText) {\n\t\t\tcaptionText.style.fontSize = '';\n\t\t\tcaptionText.style.lineHeight = '';\n\t\t\tt.getElement(t.container).querySelector('.' + t.options.classPrefix + 'captions-position').style.bottom = '';\n\t\t}\n\t\tvar event = (0, _general.createEvent)('exitedfullscreen', t.getElement(t.container));\n\t\tt.getElement(t.container).dispatchEvent(event);\n\t}\n});\n\n},{\"16\":16,\"2\":2,\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"5\":5}],10:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _general = _dereq_(27);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tplayText: null,\n\n\tpauseText: null\n});\n\nObject.assign(_player2.default.prototype, {\n\tbuildplaypause: function buildplaypause(player, controls, layers, media) {\n\t\tvar t = this,\n\t\t op = t.options,\n\t\t playTitle = (0, _general.isString)(op.playText) ? op.playText : _i18n2.default.t('mejs.play'),\n\t\t pauseTitle = (0, _general.isString)(op.pauseText) ? op.pauseText : _i18n2.default.t('mejs.pause'),\n\t\t play = _document2.default.createElement('div');\n\n\t\tplay.className = t.options.classPrefix + 'button ' + t.options.classPrefix + 'playpause-button ' + t.options.classPrefix + 'play';\n\t\tplay.innerHTML = '';\n\t\tplay.addEventListener('click', function () {\n\t\t\tif (t.paused) {\n\t\t\t\tt.play();\n\t\t\t} else {\n\t\t\t\tt.pause();\n\t\t\t}\n\t\t});\n\n\t\tvar playBtn = play.querySelector('button');\n\t\tt.addControlElement(play, 'playpause');\n\n\t\tfunction togglePlayPause(which) {\n\t\t\tif ('play' === which) {\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'play');\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'replay');\n\t\t\t\t(0, _dom.addClass)(play, t.options.classPrefix + 'pause');\n\t\t\t\tplayBtn.setAttribute('title', pauseTitle);\n\t\t\t\tplayBtn.setAttribute('aria-label', pauseTitle);\n\t\t\t} else {\n\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'pause');\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'replay');\n\t\t\t\t(0, _dom.addClass)(play, t.options.classPrefix + 'play');\n\t\t\t\tplayBtn.setAttribute('title', playTitle);\n\t\t\t\tplayBtn.setAttribute('aria-label', playTitle);\n\t\t\t}\n\t\t}\n\n\t\ttogglePlayPause('pse');\n\n\t\tmedia.addEventListener('loadedmetadata', function () {\n\t\t\tif (media.rendererName.indexOf('flash') === -1) {\n\t\t\t\ttogglePlayPause('pse');\n\t\t\t}\n\t\t});\n\t\tmedia.addEventListener('play', function () {\n\t\t\ttogglePlayPause('play');\n\t\t});\n\t\tmedia.addEventListener('playing', function () {\n\t\t\ttogglePlayPause('play');\n\t\t});\n\t\tmedia.addEventListener('pause', function () {\n\t\t\ttogglePlayPause('pse');\n\t\t});\n\t\tmedia.addEventListener('ended', function () {\n\t\t\tif (!player.options.loop) {\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'pause');\n\t\t\t\t(0, _dom.removeClass)(play, t.options.classPrefix + 'play');\n\t\t\t\t(0, _dom.addClass)(play, t.options.classPrefix + 'replay');\n\t\t\t\tplayBtn.setAttribute('title', playTitle);\n\t\t\t\tplayBtn.setAttribute('aria-label', playTitle);\n\t\t\t}\n\t\t});\n\t}\n});\n\n},{\"16\":16,\"2\":2,\"26\":26,\"27\":27,\"5\":5}],11:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _constants = _dereq_(25);\n\nvar _time = _dereq_(30);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tenableProgressTooltip: true,\n\n\tuseSmoothHover: true,\n\n\tforceLive: false\n});\n\nObject.assign(_player2.default.prototype, {\n\tbuildprogress: function buildprogress(player, controls, layers, media) {\n\n\t\tvar lastKeyPressTime = 0,\n\t\t mouseIsDown = false,\n\t\t startedPaused = false;\n\n\t\tvar t = this,\n\t\t autoRewindInitial = player.options.autoRewind,\n\t\t tooltip = player.options.enableProgressTooltip ? '' + ('00:00') + ('') + '' : '',\n\t\t rail = _document2.default.createElement('div');\n\n\t\trail.className = t.options.classPrefix + 'time-rail';\n\t\trail.innerHTML = '' + ('') + ('') + ('') + ('') + ('') + ('' + tooltip) + '';\n\n\t\tt.addControlElement(rail, 'progress');\n\n\t\tt.options.keyActions.push({\n\t\t\tkeys: [37, 227],\n\t\t\taction: function action(player) {\n\t\t\t\tif (!isNaN(player.duration) && player.duration > 0) {\n\t\t\t\t\tif (player.isVideo) {\n\t\t\t\t\t\tplayer.showControls();\n\t\t\t\t\t\tplayer.startControlsTimer();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar timeSlider = player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'time-total');\n\t\t\t\t\tif (timeSlider) {\n\t\t\t\t\t\ttimeSlider.focus();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar newTime = Math.max(player.currentTime - player.options.defaultSeekBackwardInterval(player), 0);\n\n\t\t\t\t\tif (!player.paused) {\n\t\t\t\t\t\tplayer.pause();\n\t\t\t\t\t}\n\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tplayer.setCurrentTime(newTime);\n\t\t\t\t\t}, 0);\n\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tplayer.play();\n\t\t\t\t\t}, 0);\n\t\t\t\t}\n\t\t\t}\n\t\t}, {\n\t\t\tkeys: [39, 228],\n\t\t\taction: function action(player) {\n\n\t\t\t\tif (!isNaN(player.duration) && player.duration > 0) {\n\t\t\t\t\tif (player.isVideo) {\n\t\t\t\t\t\tplayer.showControls();\n\t\t\t\t\t\tplayer.startControlsTimer();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar timeSlider = player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'time-total');\n\t\t\t\t\tif (timeSlider) {\n\t\t\t\t\t\ttimeSlider.focus();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar newTime = Math.min(player.currentTime + player.options.defaultSeekForwardInterval(player), player.duration);\n\n\t\t\t\t\tif (!player.paused) {\n\t\t\t\t\t\tplayer.pause();\n\t\t\t\t\t}\n\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tplayer.setCurrentTime(newTime);\n\t\t\t\t\t}, 0);\n\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tplayer.play();\n\t\t\t\t\t}, 0);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tt.rail = controls.querySelector('.' + t.options.classPrefix + 'time-rail');\n\t\tt.total = controls.querySelector('.' + t.options.classPrefix + 'time-total');\n\t\tt.loaded = controls.querySelector('.' + t.options.classPrefix + 'time-loaded');\n\t\tt.current = controls.querySelector('.' + t.options.classPrefix + 'time-current');\n\t\tt.handle = controls.querySelector('.' + t.options.classPrefix + 'time-handle');\n\t\tt.timefloat = controls.querySelector('.' + t.options.classPrefix + 'time-float');\n\t\tt.timefloatcurrent = controls.querySelector('.' + t.options.classPrefix + 'time-float-current');\n\t\tt.slider = controls.querySelector('.' + t.options.classPrefix + 'time-slider');\n\t\tt.hovered = controls.querySelector('.' + t.options.classPrefix + 'time-hovered');\n\t\tt.buffer = controls.querySelector('.' + t.options.classPrefix + 'time-buffering');\n\t\tt.newTime = 0;\n\t\tt.forcedHandlePause = false;\n\t\tt.setTransformStyle = function (element, value) {\n\t\t\telement.style.transform = value;\n\t\t\telement.style.webkitTransform = value;\n\t\t\telement.style.MozTransform = value;\n\t\t\telement.style.msTransform = value;\n\t\t\telement.style.OTransform = value;\n\t\t};\n\n\t\tt.buffer.style.display = 'none';\n\n\t\tvar handleMouseMove = function handleMouseMove(e) {\n\t\t\tvar totalStyles = getComputedStyle(t.total),\n\t\t\t offsetStyles = (0, _dom.offset)(t.total),\n\t\t\t width = t.total.offsetWidth,\n\t\t\t transform = function () {\n\t\t\t\tif (totalStyles.webkitTransform !== undefined) {\n\t\t\t\t\treturn 'webkitTransform';\n\t\t\t\t} else if (totalStyles.mozTransform !== undefined) {\n\t\t\t\t\treturn 'mozTransform ';\n\t\t\t\t} else if (totalStyles.oTransform !== undefined) {\n\t\t\t\t\treturn 'oTransform';\n\t\t\t\t} else if (totalStyles.msTransform !== undefined) {\n\t\t\t\t\treturn 'msTransform';\n\t\t\t\t} else {\n\t\t\t\t\treturn 'transform';\n\t\t\t\t}\n\t\t\t}(),\n\t\t\t cssMatrix = function () {\n\t\t\t\tif ('WebKitCSSMatrix' in window) {\n\t\t\t\t\treturn 'WebKitCSSMatrix';\n\t\t\t\t} else if ('MSCSSMatrix' in window) {\n\t\t\t\t\treturn 'MSCSSMatrix';\n\t\t\t\t} else if ('CSSMatrix' in window) {\n\t\t\t\t\treturn 'CSSMatrix';\n\t\t\t\t}\n\t\t\t}();\n\n\t\t\tvar percentage = 0,\n\t\t\t leftPos = 0,\n\t\t\t pos = 0,\n\t\t\t x = void 0;\n\n\t\t\tif (e.originalEvent && e.originalEvent.changedTouches) {\n\t\t\t\tx = e.originalEvent.changedTouches[0].pageX;\n\t\t\t} else if (e.changedTouches) {\n\t\t\t\tx = e.changedTouches[0].pageX;\n\t\t\t} else {\n\t\t\t\tx = e.pageX;\n\t\t\t}\n\n\t\t\tif (t.getDuration()) {\n\t\t\t\tif (x < offsetStyles.left) {\n\t\t\t\t\tx = offsetStyles.left;\n\t\t\t\t} else if (x > width + offsetStyles.left) {\n\t\t\t\t\tx = width + offsetStyles.left;\n\t\t\t\t}\n\n\t\t\t\tpos = x - offsetStyles.left;\n\t\t\t\tpercentage = pos / width;\n\t\t\t\tt.newTime = percentage * t.getDuration();\n\n\t\t\t\tif (mouseIsDown && t.getCurrentTime() !== null && t.newTime.toFixed(4) !== t.getCurrentTime().toFixed(4)) {\n\t\t\t\t\tt.setCurrentRailHandle(t.newTime);\n\t\t\t\t\tt.updateCurrent(t.newTime);\n\t\t\t\t}\n\n\t\t\t\tif (!_constants.IS_IOS && !_constants.IS_ANDROID) {\n\t\t\t\t\tif (pos < 0) {\n\t\t\t\t\t\tpos = 0;\n\t\t\t\t\t}\n\t\t\t\t\tif (t.options.useSmoothHover && cssMatrix !== null && typeof window[cssMatrix] !== 'undefined') {\n\t\t\t\t\t\tvar matrix = new window[cssMatrix](getComputedStyle(t.handle)[transform]),\n\t\t\t\t\t\t handleLocation = matrix.m41,\n\t\t\t\t\t\t hoverScaleX = pos / parseFloat(getComputedStyle(t.total).width) - handleLocation / parseFloat(getComputedStyle(t.total).width);\n\n\t\t\t\t\t\tt.hovered.style.left = handleLocation + 'px';\n\t\t\t\t\t\tt.setTransformStyle(t.hovered, 'scaleX(' + hoverScaleX + ')');\n\t\t\t\t\t\tt.hovered.setAttribute('pos', pos);\n\n\t\t\t\t\t\tif (hoverScaleX >= 0) {\n\t\t\t\t\t\t\t(0, _dom.removeClass)(t.hovered, 'negative');\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t(0, _dom.addClass)(t.hovered, 'negative');\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.timefloat) {\n\t\t\t\t\t\tvar half = t.timefloat.offsetWidth / 2,\n\t\t\t\t\t\t offsetContainer = mejs.Utils.offset(t.getElement(t.container)),\n\t\t\t\t\t\t tooltipStyles = getComputedStyle(t.timefloat);\n\n\t\t\t\t\t\tif (x - offsetContainer.left < t.timefloat.offsetWidth) {\n\t\t\t\t\t\t\tleftPos = half;\n\t\t\t\t\t\t} else if (x - offsetContainer.left >= t.getElement(t.container).offsetWidth - half) {\n\t\t\t\t\t\t\tleftPos = t.total.offsetWidth - half;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tleftPos = pos;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ((0, _dom.hasClass)(t.getElement(t.container), t.options.classPrefix + 'long-video')) {\n\t\t\t\t\t\t\tleftPos += parseFloat(tooltipStyles.marginLeft) / 2 + t.timefloat.offsetWidth / 2;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tt.timefloat.style.left = leftPos + 'px';\n\t\t\t\t\t\tt.timefloatcurrent.innerHTML = (0, _time.secondsToTimeCode)(t.newTime, player.options.alwaysShowHours, player.options.showTimecodeFrameCount, player.options.framesPerSecond, player.options.secondsDecimalLength, player.options.timeFormat);\n\t\t\t\t\t\tt.timefloat.style.display = 'block';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (!_constants.IS_IOS && !_constants.IS_ANDROID && t.timefloat) {\n\t\t\t\tleftPos = t.timefloat.offsetWidth + width >= t.getElement(t.container).offsetWidth ? t.timefloat.offsetWidth / 2 : 0;\n\t\t\t\tt.timefloat.style.left = leftPos + 'px';\n\t\t\t\tt.timefloat.style.left = leftPos + 'px';\n\t\t\t\tt.timefloat.style.display = 'block';\n\t\t\t}\n\t\t},\n\t\t updateSlider = function updateSlider() {\n\t\t\tvar seconds = t.getCurrentTime(),\n\t\t\t timeSliderText = _i18n2.default.t('mejs.time-slider'),\n\t\t\t time = (0, _time.secondsToTimeCode)(seconds, player.options.alwaysShowHours, player.options.showTimecodeFrameCount, player.options.framesPerSecond, player.options.secondsDecimalLength, player.options.timeFormat),\n\t\t\t duration = t.getDuration();\n\n\t\t\tt.slider.setAttribute('role', 'slider');\n\t\t\tt.slider.tabIndex = 0;\n\n\t\t\tif (media.paused) {\n\t\t\t\tt.slider.setAttribute('aria-label', timeSliderText);\n\t\t\t\tt.slider.setAttribute('aria-valuemin', 0);\n\t\t\t\tt.slider.setAttribute('aria-valuemax', isNaN(duration) ? 0 : duration);\n\t\t\t\tt.slider.setAttribute('aria-valuenow', seconds);\n\t\t\t\tt.slider.setAttribute('aria-valuetext', time);\n\t\t\t} else {\n\t\t\t\tt.slider.removeAttribute('aria-label');\n\t\t\t\tt.slider.removeAttribute('aria-valuemin');\n\t\t\t\tt.slider.removeAttribute('aria-valuemax');\n\t\t\t\tt.slider.removeAttribute('aria-valuenow');\n\t\t\t\tt.slider.removeAttribute('aria-valuetext');\n\t\t\t}\n\t\t},\n\t\t restartPlayer = function restartPlayer() {\n\t\t\tif (new Date() - lastKeyPressTime >= 1000) {\n\t\t\t\tt.play();\n\t\t\t}\n\t\t},\n\t\t handleMouseup = function handleMouseup() {\n\t\t\tif (mouseIsDown && t.getCurrentTime() !== null && t.newTime.toFixed(4) !== t.getCurrentTime().toFixed(4)) {\n\t\t\t\tt.setCurrentTime(t.newTime);\n\t\t\t\tt.setCurrentRailHandle(t.newTime);\n\t\t\t\tt.updateCurrent(t.newTime);\n\t\t\t}\n\t\t\tif (t.forcedHandlePause) {\n\t\t\t\tt.slider.focus();\n\t\t\t\tt.play();\n\t\t\t}\n\t\t\tt.forcedHandlePause = false;\n\t\t};\n\n\t\tt.slider.addEventListener('focus', function () {\n\t\t\tplayer.options.autoRewind = false;\n\t\t});\n\t\tt.slider.addEventListener('blur', function () {\n\t\t\tplayer.options.autoRewind = autoRewindInitial;\n\t\t});\n\t\tt.slider.addEventListener('keydown', function (e) {\n\t\t\tif (new Date() - lastKeyPressTime >= 1000) {\n\t\t\t\tstartedPaused = t.paused;\n\t\t\t}\n\n\t\t\tif (t.options.enableKeyboard && t.options.keyActions.length) {\n\n\t\t\t\tvar keyCode = e.which || e.keyCode || 0,\n\t\t\t\t duration = t.getDuration(),\n\t\t\t\t seekForward = player.options.defaultSeekForwardInterval(media),\n\t\t\t\t seekBackward = player.options.defaultSeekBackwardInterval(media);\n\n\t\t\t\tvar seekTime = t.getCurrentTime();\n\t\t\t\tvar volume = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'volume-slider');\n\n\t\t\t\tif (keyCode === 38 || keyCode === 40) {\n\t\t\t\t\tif (volume) {\n\t\t\t\t\t\tvolume.style.display = 'block';\n\t\t\t\t\t}\n\t\t\t\t\tif (t.isVideo) {\n\t\t\t\t\t\tt.showControls();\n\t\t\t\t\t\tt.startControlsTimer();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar newVolume = keyCode === 38 ? Math.min(t.volume + 0.1, 1) : Math.max(t.volume - 0.1, 0),\n\t\t\t\t\t mutePlayer = newVolume <= 0;\n\t\t\t\t\tt.setVolume(newVolume);\n\t\t\t\t\tt.setMuted(mutePlayer);\n\t\t\t\t\treturn;\n\t\t\t\t} else {\n\t\t\t\t\tif (volume) {\n\t\t\t\t\t\tvolume.style.display = 'none';\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tswitch (keyCode) {\n\t\t\t\t\tcase 37:\n\t\t\t\t\t\tif (t.getDuration() !== Infinity) {\n\t\t\t\t\t\t\tseekTime -= seekBackward;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 39:\n\t\t\t\t\t\tif (t.getDuration() !== Infinity) {\n\t\t\t\t\t\t\tseekTime += seekForward;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 36:\n\t\t\t\t\t\tseekTime = 0;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 35:\n\t\t\t\t\t\tseekTime = duration;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 13:\n\t\t\t\t\tcase 32:\n\t\t\t\t\t\tif (_constants.IS_FIREFOX) {\n\t\t\t\t\t\t\tif (t.paused) {\n\t\t\t\t\t\t\t\tt.play();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tt.pause();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tseekTime = seekTime < 0 || isNaN(seekTime) ? 0 : seekTime >= duration ? duration : Math.floor(seekTime);\n\t\t\t\tlastKeyPressTime = new Date();\n\t\t\t\tif (!startedPaused) {\n\t\t\t\t\tplayer.pause();\n\t\t\t\t}\n\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tt.setCurrentTime(seekTime);\n\t\t\t\t}, 0);\n\n\t\t\t\tif (seekTime < t.getDuration() && !startedPaused) {\n\t\t\t\t\tsetTimeout(restartPlayer, 1100);\n\t\t\t\t}\n\n\t\t\t\tplayer.showControls();\n\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopPropagation();\n\t\t\t}\n\t\t});\n\n\t\tvar events = ['mousedown', 'touchstart'];\n\n\t\tt.slider.addEventListener('dragstart', function () {\n\t\t\treturn false;\n\t\t});\n\n\t\tfor (var i = 0, total = events.length; i < total; i++) {\n\t\t\tt.slider.addEventListener(events[i], function (e) {\n\t\t\t\tt.forcedHandlePause = false;\n\t\t\t\tif (t.getDuration() !== Infinity && t.newTime < player.proxy.getOriginalDuration()) {\n\t\t\t\t\tif (e.which === 1 || e.which === 0) {\n\t\t\t\t\t\tif (!t.paused) {\n\t\t\t\t\t\t\tt.pause();\n\t\t\t\t\t\t\tt.forcedHandlePause = true;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tmouseIsDown = true;\n\t\t\t\t\t\thandleMouseMove(e);\n\t\t\t\t\t\tvar endEvents = ['mouseup', 'touchend'];\n\n\t\t\t\t\t\tfor (var j = 0, totalEvents = endEvents.length; j < totalEvents; j++) {\n\t\t\t\t\t\t\tt.getElement(t.container).addEventListener(endEvents[j], function (event) {\n\t\t\t\t\t\t\t\tvar target = event.target;\n\t\t\t\t\t\t\t\tif (target === t.slider || target.closest('.' + t.options.classPrefix + 'time-slider')) {\n\t\t\t\t\t\t\t\t\thandleMouseMove(event);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t\tt.globalBind('mouseup.dur touchend.dur', function () {\n\t\t\t\t\t\t\thandleMouseup();\n\t\t\t\t\t\t\tmouseIsDown = false;\n\t\t\t\t\t\t\tif (t.timefloat) {\n\t\t\t\t\t\t\t\tt.timefloat.style.display = 'none';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, _constants.SUPPORT_PASSIVE_EVENT && events[i] === 'touchstart' ? { passive: true } : false);\n\t\t}\n\t\tt.slider.addEventListener('mouseenter', function (e) {\n\t\t\tif (e.target === t.slider && t.getDuration() !== Infinity) {\n\t\t\t\tt.getElement(t.container).addEventListener('mousemove', function (event) {\n\t\t\t\t\tvar target = event.target;\n\t\t\t\t\tif (target === t.slider || target.closest('.' + t.options.classPrefix + 'time-slider')) {\n\t\t\t\t\t\thandleMouseMove(event);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif (t.timefloat && !_constants.IS_IOS && !_constants.IS_ANDROID) {\n\t\t\t\t\tt.timefloat.style.display = 'block';\n\t\t\t\t}\n\t\t\t\tif (t.hovered && !_constants.IS_IOS && !_constants.IS_ANDROID && t.options.useSmoothHover) {\n\t\t\t\t\t(0, _dom.removeClass)(t.hovered, 'no-hover');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tt.slider.addEventListener('mouseleave', function () {\n\t\t\tif (t.getDuration() !== Infinity) {\n\t\t\t\tif (!mouseIsDown) {\n\t\t\t\t\tif (t.timefloat) {\n\t\t\t\t\t\tt.timefloat.style.display = 'none';\n\t\t\t\t\t}\n\t\t\t\t\tif (t.hovered && t.options.useSmoothHover) {\n\t\t\t\t\t\t(0, _dom.addClass)(t.hovered, 'no-hover');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tt.broadcastCallback = function (e) {\n\t\t\tvar broadcast = controls.querySelector('.' + t.options.classPrefix + 'broadcast');\n\t\t\tif (!t.options.forceLive && t.getDuration() !== Infinity) {\n\t\t\t\tif (broadcast) {\n\t\t\t\t\tt.slider.style.display = '';\n\t\t\t\t\tbroadcast.remove();\n\t\t\t\t}\n\n\t\t\t\tplayer.setProgressRail(e);\n\t\t\t\tif (!t.forcedHandlePause) {\n\t\t\t\t\tplayer.setCurrentRail(e);\n\t\t\t\t}\n\t\t\t\tupdateSlider();\n\t\t\t} else if (!broadcast && t.options.forceLive) {\n\t\t\t\tvar label = _document2.default.createElement('span');\n\t\t\t\tlabel.className = t.options.classPrefix + 'broadcast';\n\t\t\t\tlabel.innerText = _i18n2.default.t('mejs.live-broadcast');\n\t\t\t\tt.slider.style.display = 'none';\n\t\t\t\tt.rail.appendChild(label);\n\t\t\t}\n\t\t};\n\n\t\tmedia.addEventListener('progress', t.broadcastCallback);\n\t\tmedia.addEventListener('timeupdate', t.broadcastCallback);\n\t\tmedia.addEventListener('play', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\t\tmedia.addEventListener('playing', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\t\tmedia.addEventListener('seeking', function () {\n\t\t\tt.buffer.style.display = '';\n\t\t});\n\t\tmedia.addEventListener('seeked', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\t\tmedia.addEventListener('pause', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\t\tmedia.addEventListener('waiting', function () {\n\t\t\tt.buffer.style.display = '';\n\t\t});\n\t\tmedia.addEventListener('loadeddata', function () {\n\t\t\tt.buffer.style.display = '';\n\t\t});\n\t\tmedia.addEventListener('canplay', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\t\tmedia.addEventListener('error', function () {\n\t\t\tt.buffer.style.display = 'none';\n\t\t});\n\n\t\tt.getElement(t.container).addEventListener('controlsresize', function (e) {\n\t\t\tif (t.getDuration() !== Infinity) {\n\t\t\t\tplayer.setProgressRail(e);\n\t\t\t\tif (!t.forcedHandlePause) {\n\t\t\t\t\tplayer.setCurrentRail(e);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t},\n\tcleanprogress: function cleanprogress(player, controls, layers, media) {\n\t\tmedia.removeEventListener('progress', player.broadcastCallback);\n\t\tmedia.removeEventListener('timeupdate', player.broadcastCallback);\n\t\tif (player.rail) {\n\t\t\tplayer.rail.remove();\n\t\t}\n\t},\n\tsetProgressRail: function setProgressRail(e) {\n\t\tvar t = this,\n\t\t target = e !== undefined ? e.detail.target || e.target : t.media;\n\n\t\tvar percent = null;\n\n\t\tif (target && target.buffered && target.buffered.length > 0 && target.buffered.end && t.getDuration()) {\n\t\t\tpercent = target.buffered.end(target.buffered.length - 1) / t.getDuration();\n\t\t} else if (target && target.bytesTotal !== undefined && target.bytesTotal > 0 && target.bufferedBytes !== undefined) {\n\t\t\t\tpercent = target.bufferedBytes / target.bytesTotal;\n\t\t\t} else if (e && e.lengthComputable && e.total !== 0) {\n\t\t\t\t\tpercent = e.loaded / e.total;\n\t\t\t\t}\n\n\t\tif (percent !== null) {\n\t\t\tpercent = Math.min(1, Math.max(0, percent));\n\n\t\t\tif (t.loaded) {\n\t\t\t\tt.setTransformStyle(t.loaded, 'scaleX(' + percent + ')');\n\t\t\t}\n\t\t}\n\t},\n\tsetCurrentRailHandle: function setCurrentRailHandle(fakeTime) {\n\t\tvar t = this;\n\t\tt.setCurrentRailMain(t, fakeTime);\n\t},\n\tsetCurrentRail: function setCurrentRail() {\n\t\tvar t = this;\n\t\tt.setCurrentRailMain(t);\n\t},\n\tsetCurrentRailMain: function setCurrentRailMain(t, fakeTime) {\n\t\tif (t.getCurrentTime() !== undefined && t.getDuration()) {\n\t\t\tvar nTime = typeof fakeTime === 'undefined' ? t.getCurrentTime() : fakeTime;\n\n\t\t\tif (t.total && t.handle) {\n\t\t\t\tvar tW = parseFloat(getComputedStyle(t.total).width);\n\n\t\t\t\tvar newWidth = Math.round(tW * nTime / t.getDuration()),\n\t\t\t\t handlePos = newWidth - Math.round(t.handle.offsetWidth / 2);\n\n\t\t\t\thandlePos = handlePos < 0 ? 0 : handlePos;\n\t\t\t\tt.setTransformStyle(t.current, 'scaleX(' + newWidth / tW + ')');\n\t\t\t\tt.setTransformStyle(t.handle, 'translateX(' + handlePos + 'px)');\n\n\t\t\t\tif (t.options.useSmoothHover && !(0, _dom.hasClass)(t.hovered, 'no-hover')) {\n\t\t\t\t\tvar pos = parseInt(t.hovered.getAttribute('pos'), 10);\n\t\t\t\t\tpos = isNaN(pos) ? 0 : pos;\n\n\t\t\t\t\tvar hoverScaleX = pos / tW - handlePos / tW;\n\n\t\t\t\t\tt.hovered.style.left = handlePos + 'px';\n\t\t\t\t\tt.setTransformStyle(t.hovered, 'scaleX(' + hoverScaleX + ')');\n\n\t\t\t\t\tif (hoverScaleX >= 0) {\n\t\t\t\t\t\t(0, _dom.removeClass)(t.hovered, 'negative');\n\t\t\t\t\t} else {\n\t\t\t\t\t\t(0, _dom.addClass)(t.hovered, 'negative');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\n\n},{\"16\":16,\"2\":2,\"25\":25,\"26\":26,\"30\":30,\"5\":5}],12:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _time = _dereq_(30);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tduration: 0,\n\n\ttimeAndDurationSeparator: ' | '\n});\n\nObject.assign(_player2.default.prototype, {\n\tbuildcurrent: function buildcurrent(player, controls, layers, media) {\n\t\tvar t = this,\n\t\t time = _document2.default.createElement('div');\n\n\t\ttime.className = t.options.classPrefix + 'time';\n\t\ttime.setAttribute('role', 'timer');\n\t\ttime.setAttribute('aria-live', 'off');\n\t\ttime.innerHTML = '' + (0, _time.secondsToTimeCode)(0, player.options.alwaysShowHours, player.options.showTimecodeFrameCount, player.options.framesPerSecond, player.options.secondsDecimalLength, player.options.timeFormat) + '';\n\n\t\tt.addControlElement(time, 'current');\n\t\tplayer.updateCurrent();\n\t\tt.updateTimeCallback = function () {\n\t\t\tif (t.controlsAreVisible) {\n\t\t\t\tplayer.updateCurrent();\n\t\t\t}\n\t\t};\n\t\tmedia.addEventListener('timeupdate', t.updateTimeCallback);\n\t},\n\tcleancurrent: function cleancurrent(player, controls, layers, media) {\n\t\tmedia.removeEventListener('timeupdate', player.updateTimeCallback);\n\t},\n\tbuildduration: function buildduration(player, controls, layers, media) {\n\t\tvar t = this,\n\t\t currTime = controls.lastChild.querySelector('.' + t.options.classPrefix + 'currenttime');\n\n\t\tif (currTime) {\n\t\t\tcontrols.querySelector('.' + t.options.classPrefix + 'time').innerHTML += t.options.timeAndDurationSeparator + '' + ((0, _time.secondsToTimeCode)(t.options.duration, t.options.alwaysShowHours, t.options.showTimecodeFrameCount, t.options.framesPerSecond, t.options.secondsDecimalLength, t.options.timeFormat) + '');\n\t\t} else {\n\t\t\tif (controls.querySelector('.' + t.options.classPrefix + 'currenttime')) {\n\t\t\t\t(0, _dom.addClass)(controls.querySelector('.' + t.options.classPrefix + 'currenttime').parentNode, t.options.classPrefix + 'currenttime-container');\n\t\t\t}\n\n\t\t\tvar duration = _document2.default.createElement('div');\n\t\t\tduration.className = t.options.classPrefix + 'time ' + t.options.classPrefix + 'duration-container';\n\t\t\tduration.innerHTML = '' + ((0, _time.secondsToTimeCode)(t.options.duration, t.options.alwaysShowHours, t.options.showTimecodeFrameCount, t.options.framesPerSecond, t.options.secondsDecimalLength, t.options.timeFormat) + '');\n\n\t\t\tt.addControlElement(duration, 'duration');\n\t\t}\n\n\t\tt.updateDurationCallback = function () {\n\t\t\tif (t.controlsAreVisible) {\n\t\t\t\tplayer.updateDuration();\n\t\t\t}\n\t\t};\n\n\t\tmedia.addEventListener('timeupdate', t.updateDurationCallback);\n\t},\n\tcleanduration: function cleanduration(player, controls, layers, media) {\n\t\tmedia.removeEventListener('timeupdate', player.updateDurationCallback);\n\t},\n\tupdateCurrent: function updateCurrent() {\n\t\tvar t = this;\n\n\t\tvar currentTime = t.getCurrentTime();\n\n\t\tif (isNaN(currentTime)) {\n\t\t\tcurrentTime = 0;\n\t\t}\n\n\t\tvar timecode = (0, _time.secondsToTimeCode)(currentTime, t.options.alwaysShowHours, t.options.showTimecodeFrameCount, t.options.framesPerSecond, t.options.secondsDecimalLength, t.options.timeFormat);\n\n\t\tif (timecode.length > 5) {\n\t\t\t(0, _dom.addClass)(t.getElement(t.container), t.options.classPrefix + 'long-video');\n\t\t} else {\n\t\t\t(0, _dom.removeClass)(t.getElement(t.container), t.options.classPrefix + 'long-video');\n\t\t}\n\n\t\tif (t.getElement(t.controls).querySelector('.' + t.options.classPrefix + 'currenttime')) {\n\t\t\tt.getElement(t.controls).querySelector('.' + t.options.classPrefix + 'currenttime').innerText = timecode;\n\t\t}\n\t},\n\tupdateDuration: function updateDuration() {\n\t\tvar t = this;\n\n\t\tvar duration = t.getDuration();\n\n\t\tif (t.media !== undefined && (isNaN(duration) || duration === Infinity || duration < 0)) {\n\t\t\tt.media.duration = t.options.duration = duration = 0;\n\t\t}\n\n\t\tif (t.options.duration > 0) {\n\t\t\tduration = t.options.duration;\n\t\t}\n\n\t\tvar timecode = (0, _time.secondsToTimeCode)(duration, t.options.alwaysShowHours, t.options.showTimecodeFrameCount, t.options.framesPerSecond, t.options.secondsDecimalLength, t.options.timeFormat);\n\n\t\tif (timecode.length > 5) {\n\t\t\t(0, _dom.addClass)(t.getElement(t.container), t.options.classPrefix + 'long-video');\n\t\t} else {\n\t\t\t(0, _dom.removeClass)(t.getElement(t.container), t.options.classPrefix + 'long-video');\n\t\t}\n\n\t\tif (t.getElement(t.controls).querySelector('.' + t.options.classPrefix + 'duration') && duration > 0) {\n\t\t\tt.getElement(t.controls).querySelector('.' + t.options.classPrefix + 'duration').innerHTML = timecode;\n\t\t}\n\t}\n});\n\n},{\"16\":16,\"2\":2,\"26\":26,\"30\":30}],13:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _time = _dereq_(30);\n\nvar _general = _dereq_(27);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tstartLanguage: '',\n\n\ttracksText: null,\n\n\tchaptersText: null,\n\n\ttracksAriaLive: false,\n\n\thideCaptionsButtonWhenEmpty: true,\n\n\ttoggleCaptionsButtonWhenOnlyOne: false,\n\n\tslidesSelector: ''\n});\n\nObject.assign(_player2.default.prototype, {\n\thasChapters: false,\n\n\tbuildtracks: function buildtracks(player, controls, layers, media) {\n\n\t\tthis.findTracks();\n\n\t\tif (!player.tracks.length && (!player.trackFiles || !player.trackFiles.length === 0)) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar t = this,\n\t\t attr = t.options.tracksAriaLive ? ' role=\"log\" aria-live=\"assertive\" aria-atomic=\"false\"' : '',\n\t\t tracksTitle = (0, _general.isString)(t.options.tracksText) ? t.options.tracksText : _i18n2.default.t('mejs.captions-subtitles'),\n\t\t chaptersTitle = (0, _general.isString)(t.options.chaptersText) ? t.options.chaptersText : _i18n2.default.t('mejs.captions-chapters'),\n\t\t total = player.trackFiles === null ? player.tracks.length : player.trackFiles.length;\n\n\t\tif (t.domNode.textTracks) {\n\t\t\tfor (var i = t.domNode.textTracks.length - 1; i >= 0; i--) {\n\t\t\t\tt.domNode.textTracks[i].mode = 'hidden';\n\t\t\t}\n\t\t}\n\n\t\tt.cleartracks(player);\n\n\t\tplayer.captions = _document2.default.createElement('div');\n\t\tplayer.captions.className = t.options.classPrefix + 'captions-layer ' + t.options.classPrefix + 'layer';\n\t\tplayer.captions.innerHTML = '
      ' + ('') + '
      ';\n\t\tplayer.captions.style.display = 'none';\n\t\tlayers.insertBefore(player.captions, layers.firstChild);\n\n\t\tplayer.captionsText = player.captions.querySelector('.' + t.options.classPrefix + 'captions-text');\n\n\t\tplayer.captionsButton = _document2.default.createElement('div');\n\t\tplayer.captionsButton.className = t.options.classPrefix + 'button ' + t.options.classPrefix + 'captions-button';\n\t\tplayer.captionsButton.innerHTML = '' + ('
      ') + ('
        ') + ('
      • ') + ('' + ('') + '
      • ' + '
      ' + '
      ';\n\n\t\tt.addControlElement(player.captionsButton, 'tracks');\n\n\t\tplayer.captionsButton.querySelector('.' + t.options.classPrefix + 'captions-selector-input').disabled = false;\n\n\t\tplayer.chaptersButton = _document2.default.createElement('div');\n\t\tplayer.chaptersButton.className = t.options.classPrefix + 'button ' + t.options.classPrefix + 'chapters-button';\n\t\tplayer.chaptersButton.innerHTML = '' + ('
      ') + ('
        ') + '
        ';\n\n\t\tvar subtitleCount = 0;\n\n\t\tfor (var _i = 0; _i < total; _i++) {\n\t\t\tvar kind = player.tracks[_i].kind,\n\t\t\t src = player.tracks[_i].src;\n\t\t\tif (src.trim()) {\n\t\t\t\tif (kind === 'subtitles' || kind === 'captions') {\n\t\t\t\t\tsubtitleCount++;\n\t\t\t\t} else if (kind === 'chapters' && !controls.querySelector('.' + t.options.classPrefix + 'chapter-selector')) {\n\t\t\t\t\tplayer.captionsButton.parentNode.insertBefore(player.chaptersButton, player.captionsButton);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tplayer.trackToLoad = -1;\n\t\tplayer.selectedTrack = null;\n\t\tplayer.isLoadingTrack = false;\n\n\t\tfor (var _i2 = 0; _i2 < total; _i2++) {\n\t\t\tvar _kind = player.tracks[_i2].kind;\n\t\t\tif (player.tracks[_i2].src.trim() && (_kind === 'subtitles' || _kind === 'captions')) {\n\t\t\t\tplayer.addTrackButton(player.tracks[_i2].trackId, player.tracks[_i2].srclang, player.tracks[_i2].label);\n\t\t\t}\n\t\t}\n\n\t\tplayer.loadNextTrack();\n\n\t\tvar inEvents = ['mouseenter', 'focusin'],\n\t\t outEvents = ['mouseleave', 'focusout'];\n\n\t\tif (t.options.toggleCaptionsButtonWhenOnlyOne && subtitleCount === 1) {\n\t\t\tplayer.captionsButton.addEventListener('click', function (e) {\n\t\t\t\tvar trackId = 'none';\n\t\t\t\tif (player.selectedTrack === null) {\n\t\t\t\t\ttrackId = player.tracks[0].trackId;\n\t\t\t\t}\n\t\t\t\tvar keyboard = e.keyCode || e.which;\n\t\t\t\tplayer.setTrack(trackId, typeof keyboard !== 'undefined');\n\t\t\t});\n\t\t} else {\n\t\t\tvar labels = player.captionsButton.querySelectorAll('.' + t.options.classPrefix + 'captions-selector-label'),\n\t\t\t captions = player.captionsButton.querySelectorAll('input[type=radio]');\n\n\t\t\tfor (var _i3 = 0, _total = inEvents.length; _i3 < _total; _i3++) {\n\t\t\t\tplayer.captionsButton.addEventListener(inEvents[_i3], function () {\n\t\t\t\t\t(0, _dom.removeClass)(this.querySelector('.' + t.options.classPrefix + 'captions-selector'), t.options.classPrefix + 'offscreen');\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tfor (var _i4 = 0, _total2 = outEvents.length; _i4 < _total2; _i4++) {\n\t\t\t\tplayer.captionsButton.addEventListener(outEvents[_i4], function () {\n\t\t\t\t\t(0, _dom.addClass)(this.querySelector('.' + t.options.classPrefix + 'captions-selector'), t.options.classPrefix + 'offscreen');\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tfor (var _i5 = 0, _total3 = captions.length; _i5 < _total3; _i5++) {\n\t\t\t\tcaptions[_i5].addEventListener('click', function (e) {\n\t\t\t\t\tvar keyboard = e.keyCode || e.which;\n\t\t\t\t\tplayer.setTrack(this.value, typeof keyboard !== 'undefined');\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tfor (var _i6 = 0, _total4 = labels.length; _i6 < _total4; _i6++) {\n\t\t\t\tlabels[_i6].addEventListener('click', function (e) {\n\t\t\t\t\tvar radio = (0, _dom.siblings)(this, function (el) {\n\t\t\t\t\t\treturn el.tagName === 'INPUT';\n\t\t\t\t\t})[0],\n\t\t\t\t\t event = (0, _general.createEvent)('click', radio);\n\t\t\t\t\tradio.dispatchEvent(event);\n\t\t\t\t\te.preventDefault();\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tplayer.captionsButton.addEventListener('keydown', function (e) {\n\t\t\t\te.stopPropagation();\n\t\t\t});\n\t\t}\n\n\t\tfor (var _i7 = 0, _total5 = inEvents.length; _i7 < _total5; _i7++) {\n\t\t\tplayer.chaptersButton.addEventListener(inEvents[_i7], function () {\n\t\t\t\tif (this.querySelector('.' + t.options.classPrefix + 'chapters-selector-list').children.length) {\n\t\t\t\t\t(0, _dom.removeClass)(this.querySelector('.' + t.options.classPrefix + 'chapters-selector'), t.options.classPrefix + 'offscreen');\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tfor (var _i8 = 0, _total6 = outEvents.length; _i8 < _total6; _i8++) {\n\t\t\tplayer.chaptersButton.addEventListener(outEvents[_i8], function () {\n\t\t\t\t(0, _dom.addClass)(this.querySelector('.' + t.options.classPrefix + 'chapters-selector'), t.options.classPrefix + 'offscreen');\n\t\t\t});\n\t\t}\n\n\t\tplayer.chaptersButton.addEventListener('keydown', function (e) {\n\t\t\te.stopPropagation();\n\t\t});\n\n\t\tif (!player.options.alwaysShowControls) {\n\t\t\tplayer.getElement(player.container).addEventListener('controlsshown', function () {\n\t\t\t\t(0, _dom.addClass)(player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'captions-position'), t.options.classPrefix + 'captions-position-hover');\n\t\t\t});\n\n\t\t\tplayer.getElement(player.container).addEventListener('controlshidden', function () {\n\t\t\t\tif (!media.paused) {\n\t\t\t\t\t(0, _dom.removeClass)(player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'captions-position'), t.options.classPrefix + 'captions-position-hover');\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t(0, _dom.addClass)(player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'captions-position'), t.options.classPrefix + 'captions-position-hover');\n\t\t}\n\n\t\tmedia.addEventListener('timeupdate', function () {\n\t\t\tplayer.displayCaptions();\n\t\t});\n\n\t\tif (player.options.slidesSelector !== '') {\n\t\t\tplayer.slidesContainer = _document2.default.querySelectorAll(player.options.slidesSelector);\n\n\t\t\tmedia.addEventListener('timeupdate', function () {\n\t\t\t\tplayer.displaySlides();\n\t\t\t});\n\t\t}\n\t},\n\tcleartracks: function cleartracks(player) {\n\t\tif (player) {\n\t\t\tif (player.captions) {\n\t\t\t\tplayer.captions.remove();\n\t\t\t}\n\t\t\tif (player.chapters) {\n\t\t\t\tplayer.chapters.remove();\n\t\t\t}\n\t\t\tif (player.captionsText) {\n\t\t\t\tplayer.captionsText.remove();\n\t\t\t}\n\t\t\tif (player.captionsButton) {\n\t\t\t\tplayer.captionsButton.remove();\n\t\t\t}\n\t\t\tif (player.chaptersButton) {\n\t\t\t\tplayer.chaptersButton.remove();\n\t\t\t}\n\t\t}\n\t},\n\trebuildtracks: function rebuildtracks() {\n\t\tvar t = this;\n\t\tt.findTracks();\n\t\tt.buildtracks(t, t.getElement(t.controls), t.getElement(t.layers), t.media);\n\t},\n\tfindTracks: function findTracks() {\n\t\tvar t = this,\n\t\t tracktags = t.trackFiles === null ? t.node.querySelectorAll('track') : t.trackFiles,\n\t\t total = tracktags.length;\n\n\t\tt.tracks = [];\n\t\tfor (var i = 0; i < total; i++) {\n\t\t\tvar track = tracktags[i],\n\t\t\t srclang = track.getAttribute('srclang').toLowerCase() || '',\n\t\t\t trackId = t.id + '_track_' + i + '_' + track.getAttribute('kind') + '_' + srclang;\n\t\t\tt.tracks.push({\n\t\t\t\ttrackId: trackId,\n\t\t\t\tsrclang: srclang,\n\t\t\t\tsrc: track.getAttribute('src'),\n\t\t\t\tkind: track.getAttribute('kind'),\n\t\t\t\tlabel: track.getAttribute('label') || '',\n\t\t\t\tentries: [],\n\t\t\t\tisLoaded: false\n\t\t\t});\n\t\t}\n\t},\n\tsetTrack: function setTrack(trackId, setByKeyboard) {\n\n\t\tvar t = this,\n\t\t radios = t.captionsButton.querySelectorAll('input[type=\"radio\"]'),\n\t\t captions = t.captionsButton.querySelectorAll('.' + t.options.classPrefix + 'captions-selected'),\n\t\t track = t.captionsButton.querySelector('input[value=\"' + trackId + '\"]');\n\n\t\tfor (var i = 0, total = radios.length; i < total; i++) {\n\t\t\tradios[i].checked = false;\n\t\t}\n\n\t\tfor (var _i9 = 0, _total7 = captions.length; _i9 < _total7; _i9++) {\n\t\t\t(0, _dom.removeClass)(captions[_i9], t.options.classPrefix + 'captions-selected');\n\t\t}\n\n\t\ttrack.checked = true;\n\t\tvar labels = (0, _dom.siblings)(track, function (el) {\n\t\t\treturn (0, _dom.hasClass)(el, t.options.classPrefix + 'captions-selector-label');\n\t\t});\n\t\tfor (var _i10 = 0, _total8 = labels.length; _i10 < _total8; _i10++) {\n\t\t\t(0, _dom.addClass)(labels[_i10], t.options.classPrefix + 'captions-selected');\n\t\t}\n\n\t\tif (trackId === 'none') {\n\t\t\tt.selectedTrack = null;\n\t\t\t(0, _dom.removeClass)(t.captionsButton, t.options.classPrefix + 'captions-enabled');\n\t\t} else {\n\t\t\tfor (var _i11 = 0, _total9 = t.tracks.length; _i11 < _total9; _i11++) {\n\t\t\t\tvar _track = t.tracks[_i11];\n\t\t\t\tif (_track.trackId === trackId) {\n\t\t\t\t\tif (t.selectedTrack === null) {\n\t\t\t\t\t\t(0, _dom.addClass)(t.captionsButton, t.options.classPrefix + 'captions-enabled');\n\t\t\t\t\t}\n\t\t\t\t\tt.selectedTrack = _track;\n\t\t\t\t\tt.captions.setAttribute('lang', t.selectedTrack.srclang);\n\t\t\t\t\tt.displayCaptions();\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tvar event = (0, _general.createEvent)('captionschange', t.media);\n\t\tevent.detail.caption = t.selectedTrack;\n\t\tt.media.dispatchEvent(event);\n\n\t\tif (!setByKeyboard) {\n\t\t\tsetTimeout(function () {\n\t\t\t\tt.getElement(t.container).focus();\n\t\t\t}, 500);\n\t\t}\n\t},\n\tloadNextTrack: function loadNextTrack() {\n\t\tvar t = this;\n\n\t\tt.trackToLoad++;\n\t\tif (t.trackToLoad < t.tracks.length) {\n\t\t\tt.isLoadingTrack = true;\n\t\t\tt.loadTrack(t.trackToLoad);\n\t\t} else {\n\t\t\tt.isLoadingTrack = false;\n\t\t\tt.checkForTracks();\n\t\t}\n\t},\n\tisDataURI: function isDataURI(url) {\n\t\treturn url.match(/^data:(?:.+?\\/.+?)?(?:;.+?=.+?)*(?:;base64)?,.*$/);\n\t},\n\tb64DecodeUnicode: function b64DecodeUnicode(str) {\n\t\treturn decodeURIComponent(atob(str).split('').map(function (c) {\n\t\t\treturn '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);\n\t\t}).join(''));\n\t},\n\treadSrc: function readSrc(src, callback) {\n\t\tif (this.isDataURI(src)) {\n\t\t\tvar byteString = this.b64DecodeUnicode(src.split(',')[1]);\n\t\t\tcallback(byteString);\n\t\t} else {\n\t\t\t(0, _dom.ajax)(src, 'text', callback);\n\t\t}\n\t},\n\tparseHLSPlaylist: function parseHLSPlaylist(srcUrl, src) {\n\t\tvar parentUrl = srcUrl.substring(0, srcUrl.lastIndexOf(\"/\") + 1);\n\t\tvar fragments = [];\n\t\tvar lines = src.split(\"\\n\");\n\t\tvar current = 0;\n\t\tvar num = 0;\n\t\tvar fragment = { start: current };\n\t\tvar _iteratorNormalCompletion = true;\n\t\tvar _didIteratorError = false;\n\t\tvar _iteratorError = undefined;\n\n\t\ttry {\n\t\t\tfor (var _iterator = lines[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n\t\t\t\tvar l = _step.value;\n\n\t\t\t\tvar m = l.match('#EXTINF:([0-9\\.]+),');\n\t\t\t\tif (m) {\n\t\t\t\t\tfragment.num = num;\n\t\t\t\t\tfragment.end = fragment.start + parseFloat(m[1]);\n\t\t\t\t\tnum++;\n\t\t\t\t}\n\t\t\t\tif (l.match('^[^#]')) {\n\t\t\t\t\tfragment.name = l;\n\t\t\t\t\tfragment.src = parentUrl + fragment.name;\n\t\t\t\t}\n\t\t\t\tif (fragment.name !== undefined) {\n\t\t\t\t\tfragments.push(fragment);\n\t\t\t\t\tcurrent = fragment.end;\n\t\t\t\t\tfragment.content = function (f) {\n\t\t\t\t\t\tvar prom = null;\n\t\t\t\t\t\treturn function () {\n\t\t\t\t\t\t\tif (prom === null) {\n\t\t\t\t\t\t\t\tprom = new Promise(function (resolve) {\n\t\t\t\t\t\t\t\t\t(0, _dom.ajax)(f.src, 'text', resolve);\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn prom;\n\t\t\t\t\t\t};\n\t\t\t\t\t}(fragment);\n\t\t\t\t\tfragment = { start: current };\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (err) {\n\t\t\t_didIteratorError = true;\n\t\t\t_iteratorError = err;\n\t\t} finally {\n\t\t\ttry {\n\t\t\t\tif (!_iteratorNormalCompletion && _iterator.return) {\n\t\t\t\t\t_iterator.return();\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tif (_didIteratorError) {\n\t\t\t\t\tthrow _iteratorError;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn fragments;\n\t},\n\tloadTrack: function loadTrack(index) {\n\t\tvar _this = this;\n\n\t\tvar t = this,\n\t\t track = t.tracks[index];\n\n\t\tif (track !== undefined && (track.src !== undefined || track.src !== \"\")) {\n\t\t\tthis.readSrc(track.src, function (d) {\n\t\t\t\tif (track.src.match(/\\.m3u8/)) {\n\t\t\t\t\tvar fragments = _this.parseHLSPlaylist(track.src, d);\n\t\t\t\t\tvar empty = false;\n\t\t\t\t\ttrack.getEntries = function (time, callback) {\n\t\t\t\t\t\tif (empty) return;\n\t\t\t\t\t\tvar found = false;\n\n\t\t\t\t\t\tvar _loop = function _loop(f) {\n\t\t\t\t\t\t\tif (time > f.start && time < f.end) {\n\t\t\t\t\t\t\t\tfound = true;\n\t\t\t\t\t\t\t\tf.content().then(function (c) {\n\t\t\t\t\t\t\t\t\tvar entries = _mejs2.default.TrackFormatParser.webvtt.parse(c);\n\t\t\t\t\t\t\t\t\tcallback(entries);\n\t\t\t\t\t\t\t\t\tfor (var _index2 = 1; _index2 < 5; _index2++) {\n\t\t\t\t\t\t\t\t\t\tvar nextNum = f.num + _index2;\n\t\t\t\t\t\t\t\t\t\tif (fragments[nextNum] !== undefined) {\n\t\t\t\t\t\t\t\t\t\t\tfragments[nextNum].content();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tvar _iteratorNormalCompletion2 = true;\n\t\t\t\t\t\tvar _didIteratorError2 = false;\n\t\t\t\t\t\tvar _iteratorError2 = undefined;\n\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tfor (var _iterator2 = fragments[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n\t\t\t\t\t\t\t\tvar f = _step2.value;\n\n\t\t\t\t\t\t\t\t_loop(f);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\t_didIteratorError2 = true;\n\t\t\t\t\t\t\t_iteratorError2 = err;\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tif (!_iteratorNormalCompletion2 && _iterator2.return) {\n\t\t\t\t\t\t\t\t\t_iterator2.return();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\t\tif (_didIteratorError2) {\n\t\t\t\t\t\t\t\t\tthrow _iteratorError2;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!found) {\n\t\t\t\t\t\t\tt.readSrc(track.src, function (d) {\n\t\t\t\t\t\t\t\tfragments = t.parseHLSPlaylist(track.src, d);\n\t\t\t\t\t\t\t\tif (fragments.length == 0) {\n\t\t\t\t\t\t\t\t\tempty = true;\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tvar _loop2 = function _loop2(f) {\n\t\t\t\t\t\t\t\t\t\tif (time > f.start && time < f.end) {\n\t\t\t\t\t\t\t\t\t\t\tfound = true;\n\t\t\t\t\t\t\t\t\t\t\tf.content().then(function (c) {\n\t\t\t\t\t\t\t\t\t\t\t\tvar entries = _mejs2.default.TrackFormatParser.webvtt.parse(c);\n\t\t\t\t\t\t\t\t\t\t\t\tcallback(entries);\n\t\t\t\t\t\t\t\t\t\t\t\tfor (var _index = 1; _index < 5; _index++) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvar nextNum = f.num + _index;\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (fragments[nextNum] !== undefined) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfragments[nextNum].content();\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\tvar _iteratorNormalCompletion3 = true;\n\t\t\t\t\t\t\t\t\tvar _didIteratorError3 = false;\n\t\t\t\t\t\t\t\t\tvar _iteratorError3 = undefined;\n\n\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\tfor (var _iterator3 = fragments[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n\t\t\t\t\t\t\t\t\t\t\tvar f = _step3.value;\n\n\t\t\t\t\t\t\t\t\t\t\t_loop2(f);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\t\t\t\t_didIteratorError3 = true;\n\t\t\t\t\t\t\t\t\t\t_iteratorError3 = err;\n\t\t\t\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\t\tif (!_iteratorNormalCompletion3 && _iterator3.return) {\n\t\t\t\t\t\t\t\t\t\t\t\t_iterator3.return();\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\t\t\t\t\tif (_didIteratorError3) {\n\t\t\t\t\t\t\t\t\t\t\t\tthrow _iteratorError3;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\ttrack.entries = typeof d === 'string' && /' + ('') + ('') + '';\n\t},\n\tcheckForTracks: function checkForTracks() {\n\t\tvar t = this;\n\n\t\tvar hasSubtitles = false;\n\n\t\tif (t.options.hideCaptionsButtonWhenEmpty) {\n\t\t\tfor (var i = 0, total = t.tracks.length; i < total; i++) {\n\t\t\t\tvar kind = t.tracks[i].kind;\n\t\t\t\tif ((kind === 'subtitles' || kind === 'captions') && t.tracks[i].isLoaded) {\n\t\t\t\t\thasSubtitles = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tt.captionsButton.style.display = hasSubtitles ? '' : 'none';\n\t\t\tt.setControlsSize();\n\t\t}\n\t},\n\tdisplayCaptions: function displayCaptions() {\n\t\tif (this.tracks === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar t = this,\n\t\t track = t.selectedTrack,\n\t\t sanitize = function sanitize(html) {\n\t\t\tvar div = _document2.default.createElement('div');\n\t\t\tdiv.innerHTML = html;\n\n\t\t\tvar scripts = div.getElementsByTagName('script');\n\t\t\tvar i = scripts.length;\n\t\t\twhile (i--) {\n\t\t\t\tscripts[i].remove();\n\t\t\t}\n\n\t\t\tvar allElements = div.getElementsByTagName('*');\n\t\t\tfor (var _i12 = 0, n = allElements.length; _i12 < n; _i12++) {\n\t\t\t\tvar attributesObj = allElements[_i12].attributes,\n\t\t\t\t attributes = Array.prototype.slice.call(attributesObj);\n\n\t\t\t\tfor (var j = 0, total = attributes.length; j < total; j++) {\n\t\t\t\t\tif (attributes[j].name.startsWith('on') || attributes[j].value.startsWith('javascript')) {\n\t\t\t\t\t\tallElements[_i12].remove();\n\t\t\t\t\t} else if (attributes[j].name === 'style') {\n\t\t\t\t\t\tallElements[_i12].removeAttribute(attributes[j].name);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn div.innerHTML;\n\t\t};\n\n\t\tif (track !== null && track.isLoaded) {\n\t\t\tvar i = t.searchTrackPosition(track.entries, t.media.currentTime);\n\t\t\tif (i > -1) {\n\t\t\t\tvar text = track.entries[i].text;\n\t\t\t\tif (typeof t.options.captionTextPreprocessor === 'function') text = t.options.captionTextPreprocessor(text);\n\t\t\t\tt.captionsText.innerHTML = sanitize(text);\n\t\t\t\tt.captionsText.className = t.options.classPrefix + 'captions-text ' + (track.entries[i].identifier || '');\n\t\t\t\tt.captions.style.display = '';\n\t\t\t\tt.captions.style.height = '0px';\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tt.captions.style.display = 'none';\n\t\t} else {\n\t\t\tt.captions.style.display = 'none';\n\t\t}\n\t},\n\tsetupSlides: function setupSlides(track) {\n\t\tvar t = this;\n\t\tt.slides = track;\n\t\tt.slides.entries.imgs = [t.slides.entries.length];\n\t\tt.showSlide(0);\n\t},\n\tshowSlide: function showSlide(index) {\n\t\tvar _this2 = this;\n\n\t\tvar t = this;\n\n\t\tif (t.tracks === undefined || t.slidesContainer === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar url = t.slides.entries[index].text;\n\n\t\tvar img = t.slides.entries[index].imgs;\n\n\t\tif (img === undefined || img.fadeIn === undefined) {\n\t\t\tvar image = _document2.default.createElement('img');\n\t\t\timage.src = url;\n\t\t\timage.addEventListener('load', function () {\n\t\t\t\tvar self = _this2,\n\t\t\t\t visible = (0, _dom.siblings)(self, function (el) {\n\t\t\t\t\treturn visible(el);\n\t\t\t\t});\n\t\t\t\tself.style.display = 'none';\n\t\t\t\tt.slidesContainer.innerHTML += self.innerHTML;\n\t\t\t\t(0, _dom.fadeIn)(t.slidesContainer.querySelector(image));\n\t\t\t\tfor (var i = 0, total = visible.length; i < total; i++) {\n\t\t\t\t\t(0, _dom.fadeOut)(visible[i], 400);\n\t\t\t\t}\n\t\t\t});\n\t\t\tt.slides.entries[index].imgs = img = image;\n\t\t} else if (!(0, _dom.visible)(img)) {\n\t\t\tvar _visible = (0, _dom.siblings)(self, function (el) {\n\t\t\t\treturn _visible(el);\n\t\t\t});\n\t\t\t(0, _dom.fadeIn)(t.slidesContainer.querySelector(img));\n\t\t\tfor (var i = 0, total = _visible.length; i < total; i++) {\n\t\t\t\t(0, _dom.fadeOut)(_visible[i]);\n\t\t\t}\n\t\t}\n\t},\n\tdisplaySlides: function displaySlides() {\n\t\tvar t = this;\n\n\t\tif (this.slides === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar slides = t.slides,\n\t\t i = t.searchTrackPosition(slides.entries, t.media.currentTime);\n\n\t\tif (i > -1) {\n\t\t\tt.showSlide(i);\n\t\t}\n\t},\n\tdrawChapters: function drawChapters(chapters) {\n\t\tvar t = this,\n\t\t total = chapters.entries.length;\n\n\t\tif (!total) {\n\t\t\treturn;\n\t\t}\n\n\t\tt.chaptersButton.querySelector('ul').innerHTML = '';\n\n\t\tfor (var i = 0; i < total; i++) {\n\t\t\tt.chaptersButton.querySelector('ul').innerHTML += '
      • ' + ('') + ('') + '
      • ';\n\t\t}\n\n\t\tvar radios = t.chaptersButton.querySelectorAll('input[type=\"radio\"]'),\n\t\t labels = t.chaptersButton.querySelectorAll('.' + t.options.classPrefix + 'chapters-selector-label');\n\n\t\tfor (var _i13 = 0, _total10 = radios.length; _i13 < _total10; _i13++) {\n\t\t\tradios[_i13].disabled = false;\n\t\t\tradios[_i13].checked = false;\n\t\t\tradios[_i13].addEventListener('click', function (e) {\n\t\t\t\tvar self = this,\n\t\t\t\t listItems = t.chaptersButton.querySelectorAll('li'),\n\t\t\t\t label = (0, _dom.siblings)(self, function (el) {\n\t\t\t\t\treturn (0, _dom.hasClass)(el, t.options.classPrefix + 'chapters-selector-label');\n\t\t\t\t})[0];\n\n\t\t\t\tself.checked = true;\n\t\t\t\tself.parentNode.setAttribute('aria-checked', true);\n\t\t\t\t(0, _dom.addClass)(label, t.options.classPrefix + 'chapters-selected');\n\t\t\t\t(0, _dom.removeClass)(t.chaptersButton.querySelector('.' + t.options.classPrefix + 'chapters-selected'), t.options.classPrefix + 'chapters-selected');\n\n\t\t\t\tfor (var _i14 = 0, _total11 = listItems.length; _i14 < _total11; _i14++) {\n\t\t\t\t\tlistItems[_i14].setAttribute('aria-checked', false);\n\t\t\t\t}\n\n\t\t\t\tvar keyboard = e.keyCode || e.which;\n\t\t\t\tif (typeof keyboard === 'undefined') {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tt.getElement(t.container).focus();\n\t\t\t\t\t}, 500);\n\t\t\t\t}\n\n\t\t\t\tt.media.setCurrentTime(parseFloat(self.value));\n\t\t\t\tif (t.media.paused) {\n\t\t\t\t\tt.media.play();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tfor (var _i15 = 0, _total12 = labels.length; _i15 < _total12; _i15++) {\n\t\t\tlabels[_i15].addEventListener('click', function (e) {\n\t\t\t\tvar radio = (0, _dom.siblings)(this, function (el) {\n\t\t\t\t\treturn el.tagName === 'INPUT';\n\t\t\t\t})[0],\n\t\t\t\t event = (0, _general.createEvent)('click', radio);\n\t\t\t\tradio.dispatchEvent(event);\n\t\t\t\te.preventDefault();\n\t\t\t});\n\t\t}\n\t},\n\tsearchTrackPosition: function searchTrackPosition(tracks, currentTime) {\n\t\tvar lo = 0,\n\t\t hi = tracks.length - 1,\n\t\t mid = void 0,\n\t\t start = void 0,\n\t\t stop = void 0;\n\n\t\twhile (lo <= hi) {\n\t\t\tmid = lo + hi >> 1;\n\t\t\tstart = tracks[mid].start;\n\t\t\tstop = tracks[mid].stop;\n\n\t\t\tif (currentTime >= start && currentTime < stop) {\n\t\t\t\treturn mid;\n\t\t\t} else if (start < currentTime) {\n\t\t\t\tlo = mid + 1;\n\t\t\t} else if (start > currentTime) {\n\t\t\t\thi = mid - 1;\n\t\t\t}\n\t\t}\n\n\t\treturn -1;\n\t}\n});\n\n_mejs2.default.language = {\n\tcodes: {\n\t\taf: 'mejs.afrikaans',\n\t\tsq: 'mejs.albanian',\n\t\tar: 'mejs.arabic',\n\t\tbe: 'mejs.belarusian',\n\t\tbg: 'mejs.bulgarian',\n\t\tca: 'mejs.catalan',\n\t\tzh: 'mejs.chinese',\n\t\t'zh-cn': 'mejs.chinese-simplified',\n\t\t'zh-tw': 'mejs.chines-traditional',\n\t\thr: 'mejs.croatian',\n\t\tcs: 'mejs.czech',\n\t\tda: 'mejs.danish',\n\t\tnl: 'mejs.dutch',\n\t\ten: 'mejs.english',\n\t\tet: 'mejs.estonian',\n\t\tfl: 'mejs.filipino',\n\t\tfi: 'mejs.finnish',\n\t\tfr: 'mejs.french',\n\t\tgl: 'mejs.galician',\n\t\tde: 'mejs.german',\n\t\tel: 'mejs.greek',\n\t\tht: 'mejs.haitian-creole',\n\t\tiw: 'mejs.hebrew',\n\t\thi: 'mejs.hindi',\n\t\thu: 'mejs.hungarian',\n\t\tis: 'mejs.icelandic',\n\t\tid: 'mejs.indonesian',\n\t\tga: 'mejs.irish',\n\t\tit: 'mejs.italian',\n\t\tja: 'mejs.japanese',\n\t\tko: 'mejs.korean',\n\t\tlv: 'mejs.latvian',\n\t\tlt: 'mejs.lithuanian',\n\t\tmk: 'mejs.macedonian',\n\t\tms: 'mejs.malay',\n\t\tmt: 'mejs.maltese',\n\t\tno: 'mejs.norwegian',\n\t\tfa: 'mejs.persian',\n\t\tpl: 'mejs.polish',\n\t\tpt: 'mejs.portuguese',\n\t\tro: 'mejs.romanian',\n\t\tru: 'mejs.russian',\n\t\tsr: 'mejs.serbian',\n\t\tsk: 'mejs.slovak',\n\t\tsl: 'mejs.slovenian',\n\t\tes: 'mejs.spanish',\n\t\tsw: 'mejs.swahili',\n\t\tsv: 'mejs.swedish',\n\t\ttl: 'mejs.tagalog',\n\t\tth: 'mejs.thai',\n\t\ttr: 'mejs.turkish',\n\t\tuk: 'mejs.ukrainian',\n\t\tvi: 'mejs.vietnamese',\n\t\tcy: 'mejs.welsh',\n\t\tyi: 'mejs.yiddish'\n\t}\n};\n\n_mejs2.default.TrackFormatParser = {\n\twebvtt: {\n\t\tpattern: /^((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{1,3})?) --\\> ((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{3})?)(.*)$/,\n\n\t\tparse: function parse(trackText) {\n\t\t\tvar lines = trackText.split(/\\r?\\n/),\n\t\t\t entries = [];\n\n\t\t\tvar timecode = void 0,\n\t\t\t text = void 0,\n\t\t\t identifier = void 0;\n\n\t\t\tfor (var i = 0, total = lines.length; i < total; i++) {\n\t\t\t\ttimecode = this.pattern.exec(lines[i]);\n\n\t\t\t\tif (timecode && i < lines.length) {\n\t\t\t\t\tif (i - 1 >= 0 && lines[i - 1] !== '') {\n\t\t\t\t\t\tidentifier = lines[i - 1];\n\t\t\t\t\t}\n\t\t\t\t\ti++;\n\n\t\t\t\t\ttext = lines[i];\n\t\t\t\t\ti++;\n\t\t\t\t\twhile (lines[i] !== '' && i < lines.length) {\n\t\t\t\t\t\ttext = text + '\\n' + lines[i];\n\t\t\t\t\t\ti++;\n\t\t\t\t\t}\n\t\t\t\t\ttext = text === null ? '' : text.trim().replace(/(\\b(https?|ftp|file):\\/\\/[-A-Z0-9+&@#\\/%?=~_|!:,.;]*[-A-Z0-9+&@#\\/%=~_|])/ig, \"$1\");\n\t\t\t\t\tentries.push({\n\t\t\t\t\t\tidentifier: identifier,\n\t\t\t\t\t\tstart: (0, _time.convertSMPTEtoSeconds)(timecode[1]) === 0 ? 0.200 : (0, _time.convertSMPTEtoSeconds)(timecode[1]),\n\t\t\t\t\t\tstop: (0, _time.convertSMPTEtoSeconds)(timecode[3]),\n\t\t\t\t\t\ttext: text,\n\t\t\t\t\t\tsettings: timecode[5]\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tidentifier = '';\n\t\t\t}\n\t\t\treturn entries;\n\t\t}\n\t},\n\n\tdfxp: {\n\t\tparse: function parse(trackText) {\n\t\t\tvar trackElem = _document2.default.adoptNode(new DOMParser().parseFromString(trackText, 'application/xml').documentElement),\n\t\t\t container = trackElem.querySelector('div'),\n\t\t\t lines = container.querySelectorAll('p'),\n\t\t\t styleNode = _document2.default.getElementById(container.getAttribute('style')),\n\t\t\t entries = [];\n\n\t\t\tvar styles = void 0;\n\n\t\t\tif (styleNode) {\n\t\t\t\tstyleNode.removeAttribute('id');\n\t\t\t\tvar attributes = styleNode.attributes;\n\t\t\t\tif (attributes.length) {\n\t\t\t\t\tstyles = {};\n\t\t\t\t\tfor (var i = 0, total = attributes.length; i < total; i++) {\n\t\t\t\t\t\tstyles[attributes[i].name.split(\":\")[1]] = attributes[i].value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor (var _i16 = 0, _total13 = lines.length; _i16 < _total13; _i16++) {\n\t\t\t\tvar style = void 0,\n\t\t\t\t _temp = {\n\t\t\t\t\tstart: null,\n\t\t\t\t\tstop: null,\n\t\t\t\t\tstyle: null,\n\t\t\t\t\ttext: null\n\t\t\t\t};\n\n\t\t\t\tif (lines[_i16].getAttribute('begin')) {\n\t\t\t\t\t_temp.start = (0, _time.convertSMPTEtoSeconds)(lines[_i16].getAttribute('begin'));\n\t\t\t\t}\n\t\t\t\tif (!_temp.start && lines[_i16 - 1].getAttribute('end')) {\n\t\t\t\t\t_temp.start = (0, _time.convertSMPTEtoSeconds)(lines[_i16 - 1].getAttribute('end'));\n\t\t\t\t}\n\t\t\t\tif (lines[_i16].getAttribute('end')) {\n\t\t\t\t\t_temp.stop = (0, _time.convertSMPTEtoSeconds)(lines[_i16].getAttribute('end'));\n\t\t\t\t}\n\t\t\t\tif (!_temp.stop && lines[_i16 + 1].getAttribute('begin')) {\n\t\t\t\t\t_temp.stop = (0, _time.convertSMPTEtoSeconds)(lines[_i16 + 1].getAttribute('begin'));\n\t\t\t\t}\n\n\t\t\t\tif (styles) {\n\t\t\t\t\tstyle = '';\n\t\t\t\t\tfor (var _style in styles) {\n\t\t\t\t\t\tstyle += _style + ': ' + styles[_style] + ';';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (style) {\n\t\t\t\t\t_temp.style = style;\n\t\t\t\t}\n\t\t\t\tif (_temp.start === 0) {\n\t\t\t\t\t_temp.start = 0.200;\n\t\t\t\t}\n\t\t\t\t_temp.text = lines[_i16].innerHTML.trim().replace(/(\\b(https?|ftp|file):\\/\\/[-A-Z0-9+&@#\\/%?=~_| !:, .; ]*[-A-Z0-9+&@#\\/%=~_|])/ig, \"$1\");\n\t\t\t\tentries.push(_temp);\n\t\t\t}\n\t\t\treturn entries;\n\t\t}\n\t}\n};\n\n},{\"16\":16,\"2\":2,\"26\":26,\"27\":27,\"30\":30,\"5\":5,\"7\":7}],14:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _constants = _dereq_(25);\n\nvar _general = _dereq_(27);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nObject.assign(_player.config, {\n\tmuteText: null,\n\n\tunmuteText: null,\n\n\tallyVolumeControlText: null,\n\n\thideVolumeOnTouchDevices: true,\n\n\taudioVolume: 'horizontal',\n\n\tvideoVolume: 'vertical',\n\n\tstartVolume: 0.8\n});\n\nObject.assign(_player2.default.prototype, {\n\tbuildvolume: function buildvolume(player, controls, layers, media) {\n\t\tif ((_constants.IS_ANDROID || _constants.IS_IOS) && this.options.hideVolumeOnTouchDevices) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar t = this,\n\t\t mode = t.isVideo ? t.options.videoVolume : t.options.audioVolume,\n\t\t muteText = (0, _general.isString)(t.options.muteText) ? t.options.muteText : _i18n2.default.t('mejs.mute'),\n\t\t unmuteText = (0, _general.isString)(t.options.unmuteText) ? t.options.unmuteText : _i18n2.default.t('mejs.unmute'),\n\t\t volumeControlText = (0, _general.isString)(t.options.allyVolumeControlText) ? t.options.allyVolumeControlText : _i18n2.default.t('mejs.volume-help-text'),\n\t\t mute = _document2.default.createElement('div');\n\n\t\tmute.className = t.options.classPrefix + 'button ' + t.options.classPrefix + 'volume-button ' + t.options.classPrefix + 'mute';\n\t\tmute.innerHTML = mode === 'horizontal' ? '' : '' + ('' + ('' + volumeControlText + '') + ('
        ') + ('
        ') + ('
        ') + '
        ' + '
        ';\n\n\t\tt.addControlElement(mute, 'volume');\n\n\t\tt.options.keyActions.push({\n\t\t\tkeys: [38],\n\t\t\taction: function action(player) {\n\t\t\t\tvar volumeSlider = player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'volume-slider');\n\t\t\t\tif (volumeSlider && volumeSlider.matches(':focus')) {\n\t\t\t\t\tvolumeSlider.style.display = 'block';\n\t\t\t\t}\n\t\t\t\tif (player.isVideo) {\n\t\t\t\t\tplayer.showControls();\n\t\t\t\t\tplayer.startControlsTimer();\n\t\t\t\t}\n\n\t\t\t\tvar newVolume = Math.min(player.volume + 0.1, 1);\n\t\t\t\tplayer.setVolume(newVolume);\n\t\t\t\tif (newVolume > 0) {\n\t\t\t\t\tplayer.setMuted(false);\n\t\t\t\t}\n\t\t\t}\n\t\t}, {\n\t\t\tkeys: [40],\n\t\t\taction: function action(player) {\n\t\t\t\tvar volumeSlider = player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'volume-slider');\n\t\t\t\tif (volumeSlider) {\n\t\t\t\t\tvolumeSlider.style.display = 'block';\n\t\t\t\t}\n\n\t\t\t\tif (player.isVideo) {\n\t\t\t\t\tplayer.showControls();\n\t\t\t\t\tplayer.startControlsTimer();\n\t\t\t\t}\n\n\t\t\t\tvar newVolume = Math.max(player.volume - 0.1, 0);\n\t\t\t\tplayer.setVolume(newVolume);\n\n\t\t\t\tif (newVolume <= 0.1) {\n\t\t\t\t\tplayer.setMuted(true);\n\t\t\t\t}\n\t\t\t}\n\t\t}, {\n\t\t\tkeys: [77],\n\t\t\taction: function action(player) {\n\t\t\t\tvar volumeSlider = player.getElement(player.container).querySelector('.' + t.options.classPrefix + 'volume-slider');\n\t\t\t\tif (volumeSlider) {\n\t\t\t\t\tvolumeSlider.style.display = 'block';\n\t\t\t\t}\n\n\t\t\t\tif (player.isVideo) {\n\t\t\t\t\tplayer.showControls();\n\t\t\t\t\tplayer.startControlsTimer();\n\t\t\t\t}\n\t\t\t\tif (player.media.muted) {\n\t\t\t\t\tplayer.setMuted(false);\n\t\t\t\t} else {\n\t\t\t\t\tplayer.setMuted(true);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tif (mode === 'horizontal') {\n\t\t\tvar anchor = _document2.default.createElement('a');\n\t\t\tanchor.className = t.options.classPrefix + 'horizontal-volume-slider';\n\t\t\tanchor.setAttribute('aria-label', _i18n2.default.t('mejs.volume-slider'));\n\t\t\tanchor.setAttribute('aria-valuemin', 0);\n\t\t\tanchor.setAttribute('aria-valuemax', 100);\n\t\t\tanchor.setAttribute('aria-valuenow', 100);\n\t\t\tanchor.setAttribute('role', 'slider');\n\t\t\tanchor.innerHTML += '' + volumeControlText + '' + ('
        ') + ('
        ') + ('
        ') + '
        ';\n\t\t\tmute.parentNode.insertBefore(anchor, mute.nextSibling);\n\t\t}\n\n\t\tvar mouseIsDown = false,\n\t\t mouseIsOver = false,\n\t\t modified = false,\n\t\t updateVolumeSlider = function updateVolumeSlider() {\n\t\t\tvar volume = Math.floor(media.volume * 100);\n\t\t\tvolumeSlider.setAttribute('aria-valuenow', volume);\n\t\t\tvolumeSlider.setAttribute('aria-valuetext', volume + '%');\n\t\t};\n\n\t\tvar volumeSlider = mode === 'vertical' ? t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'volume-slider') : t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'horizontal-volume-slider'),\n\t\t volumeTotal = mode === 'vertical' ? t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'volume-total') : t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'horizontal-volume-total'),\n\t\t volumeCurrent = mode === 'vertical' ? t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'volume-current') : t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'horizontal-volume-current'),\n\t\t volumeHandle = mode === 'vertical' ? t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'volume-handle') : t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'horizontal-volume-handle'),\n\t\t positionVolumeHandle = function positionVolumeHandle(volume) {\n\n\t\t\tif (volume === null || isNaN(volume) || volume === undefined) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvolume = Math.max(0, volume);\n\t\t\tvolume = Math.min(volume, 1);\n\n\t\t\tif (volume === 0) {\n\t\t\t\t(0, _dom.removeClass)(mute, t.options.classPrefix + 'mute');\n\t\t\t\t(0, _dom.addClass)(mute, t.options.classPrefix + 'unmute');\n\t\t\t\tvar button = mute.firstElementChild;\n\t\t\t\tbutton.setAttribute('title', unmuteText);\n\t\t\t\tbutton.setAttribute('aria-label', unmuteText);\n\t\t\t} else {\n\t\t\t\t(0, _dom.removeClass)(mute, t.options.classPrefix + 'unmute');\n\t\t\t\t(0, _dom.addClass)(mute, t.options.classPrefix + 'mute');\n\t\t\t\tvar _button = mute.firstElementChild;\n\t\t\t\t_button.setAttribute('title', muteText);\n\t\t\t\t_button.setAttribute('aria-label', muteText);\n\t\t\t}\n\n\t\t\tvar volumePercentage = volume * 100 + '%',\n\t\t\t volumeStyles = getComputedStyle(volumeHandle);\n\n\t\t\tif (mode === 'vertical') {\n\t\t\t\tvolumeCurrent.style.bottom = 0;\n\t\t\t\tvolumeCurrent.style.height = volumePercentage;\n\t\t\t\tvolumeHandle.style.bottom = volumePercentage;\n\t\t\t\tvolumeHandle.style.marginBottom = -parseFloat(volumeStyles.height) / 2 + 'px';\n\t\t\t} else {\n\t\t\t\tvolumeCurrent.style.left = 0;\n\t\t\t\tvolumeCurrent.style.width = volumePercentage;\n\t\t\t\tvolumeHandle.style.left = volumePercentage;\n\t\t\t\tvolumeHandle.style.marginLeft = -parseFloat(volumeStyles.width) / 2 + 'px';\n\t\t\t}\n\t\t},\n\t\t handleVolumeMove = function handleVolumeMove(e) {\n\t\t\tvar totalOffset = (0, _dom.offset)(volumeTotal),\n\t\t\t volumeStyles = getComputedStyle(volumeTotal);\n\n\t\t\tmodified = true;\n\n\t\t\tvar volume = null;\n\n\t\t\tif (mode === 'vertical') {\n\t\t\t\tvar railHeight = parseFloat(volumeStyles.height),\n\t\t\t\t newY = e.pageY - totalOffset.top;\n\n\t\t\t\tvolume = (railHeight - newY) / railHeight;\n\n\t\t\t\tif (totalOffset.top === 0 || totalOffset.left === 0) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tvar railWidth = parseFloat(volumeStyles.width),\n\t\t\t\t newX = e.pageX - totalOffset.left;\n\n\t\t\t\tvolume = newX / railWidth;\n\t\t\t}\n\n\t\t\tvolume = Math.max(0, volume);\n\t\t\tvolume = Math.min(volume, 1);\n\n\t\t\tpositionVolumeHandle(volume);\n\n\t\t\tt.setMuted(volume === 0);\n\t\t\tt.setVolume(volume);\n\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t},\n\t\t toggleMute = function toggleMute() {\n\t\t\tif (t.muted) {\n\t\t\t\tpositionVolumeHandle(0);\n\t\t\t\t(0, _dom.removeClass)(mute, t.options.classPrefix + 'mute');\n\t\t\t\t(0, _dom.addClass)(mute, t.options.classPrefix + 'unmute');\n\t\t\t} else {\n\n\t\t\t\tpositionVolumeHandle(media.volume);\n\t\t\t\t(0, _dom.removeClass)(mute, t.options.classPrefix + 'unmute');\n\t\t\t\t(0, _dom.addClass)(mute, t.options.classPrefix + 'mute');\n\t\t\t}\n\t\t};\n\n\t\tplayer.getElement(player.container).addEventListener('keydown', function (e) {\n\t\t\tvar hasFocus = !!e.target.closest('.' + t.options.classPrefix + 'container');\n\t\t\tif (!hasFocus && mode === 'vertical') {\n\t\t\t\tvolumeSlider.style.display = 'none';\n\t\t\t}\n\t\t});\n\n\t\tmute.addEventListener('mouseenter', function (e) {\n\t\t\tif (e.target === mute) {\n\t\t\t\tvolumeSlider.style.display = 'block';\n\t\t\t\tmouseIsOver = true;\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopPropagation();\n\t\t\t}\n\t\t});\n\t\tmute.addEventListener('focusin', function () {\n\t\t\tvolumeSlider.style.display = 'block';\n\t\t\tmouseIsOver = true;\n\t\t});\n\n\t\tmute.addEventListener('focusout', function (e) {\n\t\t\tif ((!e.relatedTarget || e.relatedTarget && !e.relatedTarget.matches('.' + t.options.classPrefix + 'volume-slider')) && mode === 'vertical') {\n\t\t\t\tvolumeSlider.style.display = 'none';\n\t\t\t}\n\t\t});\n\t\tmute.addEventListener('mouseleave', function () {\n\t\t\tmouseIsOver = false;\n\t\t\tif (!mouseIsDown && mode === 'vertical') {\n\t\t\t\tvolumeSlider.style.display = 'none';\n\t\t\t}\n\t\t});\n\t\tmute.addEventListener('focusout', function () {\n\t\t\tmouseIsOver = false;\n\t\t});\n\t\tmute.addEventListener('keydown', function (e) {\n\t\t\tif (t.options.enableKeyboard && t.options.keyActions.length) {\n\t\t\t\tvar keyCode = e.which || e.keyCode || 0,\n\t\t\t\t volume = media.volume;\n\n\t\t\t\tswitch (keyCode) {\n\t\t\t\t\tcase 38:\n\t\t\t\t\t\tvolume = Math.min(volume + 0.1, 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 40:\n\t\t\t\t\t\tvolume = Math.max(0, volume - 0.1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tmouseIsDown = false;\n\t\t\t\tpositionVolumeHandle(volume);\n\t\t\t\tmedia.setVolume(volume);\n\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopPropagation();\n\t\t\t}\n\t\t});\n\t\tmute.querySelector('button').addEventListener('click', function () {\n\t\t\tmedia.setMuted(!media.muted);\n\t\t\tvar event = (0, _general.createEvent)('volumechange', media);\n\t\t\tmedia.dispatchEvent(event);\n\t\t});\n\n\t\tvolumeSlider.addEventListener('dragstart', function () {\n\t\t\treturn false;\n\t\t});\n\n\t\tvolumeSlider.addEventListener('mouseover', function () {\n\t\t\tmouseIsOver = true;\n\t\t});\n\t\tvolumeSlider.addEventListener('focusin', function () {\n\t\t\tvolumeSlider.style.display = 'block';\n\t\t\tmouseIsOver = true;\n\t\t});\n\t\tvolumeSlider.addEventListener('focusout', function () {\n\t\t\tmouseIsOver = false;\n\t\t\tif (!mouseIsDown && mode === 'vertical') {\n\t\t\t\tvolumeSlider.style.display = 'none';\n\t\t\t}\n\t\t});\n\t\tvolumeSlider.addEventListener('mousedown', function (e) {\n\t\t\thandleVolumeMove(e);\n\t\t\tt.globalBind('mousemove.vol', function (event) {\n\t\t\t\tvar target = event.target;\n\t\t\t\tif (mouseIsDown && (target === volumeSlider || target.closest(mode === 'vertical' ? '.' + t.options.classPrefix + 'volume-slider' : '.' + t.options.classPrefix + 'horizontal-volume-slider'))) {\n\t\t\t\t\thandleVolumeMove(event);\n\t\t\t\t}\n\t\t\t});\n\t\t\tt.globalBind('mouseup.vol', function () {\n\t\t\t\tmouseIsDown = false;\n\t\t\t\tif (!mouseIsOver && mode === 'vertical') {\n\t\t\t\t\tvolumeSlider.style.display = 'none';\n\t\t\t\t}\n\t\t\t});\n\t\t\tmouseIsDown = true;\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t});\n\n\t\tmedia.addEventListener('volumechange', function (e) {\n\t\t\tif (!mouseIsDown) {\n\t\t\t\ttoggleMute();\n\t\t\t}\n\t\t\tupdateVolumeSlider(e);\n\t\t});\n\n\t\tvar rendered = false;\n\t\tmedia.addEventListener('rendererready', function () {\n\t\t\tif (!modified) {\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\trendered = true;\n\t\t\t\t\tif (player.options.startVolume === 0 || media.originalNode.muted) {\n\t\t\t\t\t\tmedia.setMuted(true);\n\t\t\t\t\t}\n\t\t\t\t\tmedia.setVolume(player.options.startVolume);\n\t\t\t\t\tt.setControlsSize();\n\t\t\t\t}, 250);\n\t\t\t}\n\t\t});\n\n\t\tmedia.addEventListener('loadedmetadata', function () {\n\t\t\tsetTimeout(function () {\n\t\t\t\tif (!modified && !rendered) {\n\t\t\t\t\tif (player.options.startVolume === 0 || media.originalNode.muted) {\n\t\t\t\t\t\tmedia.setMuted(true);\n\t\t\t\t\t}\n\t\t\t\t\tif (player.options.startVolume === 0) {\n\t\t\t\t\t\tplayer.options.startVolume = 0;\n\t\t\t\t\t}\n\t\t\t\t\tmedia.setVolume(player.options.startVolume);\n\t\t\t\t\tt.setControlsSize();\n\t\t\t\t}\n\t\t\t\trendered = false;\n\t\t\t}, 250);\n\t\t});\n\n\t\tif (player.options.startVolume === 0 || media.originalNode.muted) {\n\t\t\tmedia.setMuted(true);\n\t\t\tif (player.options.startVolume === 0) {\n\t\t\t\tplayer.options.startVolume = 0;\n\t\t\t}\n\t\t\ttoggleMute();\n\t\t}\n\n\t\tt.getElement(t.container).addEventListener('controlsresize', function () {\n\t\t\ttoggleMute();\n\t\t});\n\t}\n});\n\n},{\"16\":16,\"2\":2,\"25\":25,\"26\":26,\"27\":27,\"5\":5}],15:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nvar EN = exports.EN = {\n\t'mejs.plural-form': 1,\n\n\t'mejs.download-file': 'Download File',\n\n\t'mejs.install-flash': 'You are using a browser that does not have Flash player enabled or installed. Please turn on your Flash player plugin or download the latest version from https://get.adobe.com/flashplayer/',\n\n\t'mejs.fullscreen': 'Fullscreen',\n\n\t'mejs.play': 'Play',\n\t'mejs.pause': 'Pause',\n\n\t'mejs.time-slider': 'Time Slider',\n\t'mejs.time-help-text': 'Use Left/Right Arrow keys to advance one second, Up/Down arrows to advance ten seconds.',\n\t'mejs.live-broadcast': 'Live Broadcast',\n\n\t'mejs.volume-help-text': 'Use Up/Down Arrow keys to increase or decrease volume.',\n\t'mejs.unmute': 'Unmute',\n\t'mejs.mute': 'Mute',\n\t'mejs.volume-slider': 'Volume Slider',\n\n\t'mejs.video-player': 'Video Player',\n\t'mejs.audio-player': 'Audio Player',\n\n\t'mejs.captions-subtitles': 'Captions/Subtitles',\n\t'mejs.captions-chapters': 'Chapters',\n\t'mejs.none': 'None',\n\t'mejs.afrikaans': 'Afrikaans',\n\t'mejs.albanian': 'Albanian',\n\t'mejs.arabic': 'Arabic',\n\t'mejs.belarusian': 'Belarusian',\n\t'mejs.bulgarian': 'Bulgarian',\n\t'mejs.catalan': 'Catalan',\n\t'mejs.chinese': 'Chinese',\n\t'mejs.chinese-simplified': 'Chinese (Simplified)',\n\t'mejs.chinese-traditional': 'Chinese (Traditional)',\n\t'mejs.croatian': 'Croatian',\n\t'mejs.czech': 'Czech',\n\t'mejs.danish': 'Danish',\n\t'mejs.dutch': 'Dutch',\n\t'mejs.english': 'English',\n\t'mejs.estonian': 'Estonian',\n\t'mejs.filipino': 'Filipino',\n\t'mejs.finnish': 'Finnish',\n\t'mejs.french': 'French',\n\t'mejs.galician': 'Galician',\n\t'mejs.german': 'German',\n\t'mejs.greek': 'Greek',\n\t'mejs.haitian-creole': 'Haitian Creole',\n\t'mejs.hebrew': 'Hebrew',\n\t'mejs.hindi': 'Hindi',\n\t'mejs.hungarian': 'Hungarian',\n\t'mejs.icelandic': 'Icelandic',\n\t'mejs.indonesian': 'Indonesian',\n\t'mejs.irish': 'Irish',\n\t'mejs.italian': 'Italian',\n\t'mejs.japanese': 'Japanese',\n\t'mejs.korean': 'Korean',\n\t'mejs.latvian': 'Latvian',\n\t'mejs.lithuanian': 'Lithuanian',\n\t'mejs.macedonian': 'Macedonian',\n\t'mejs.malay': 'Malay',\n\t'mejs.maltese': 'Maltese',\n\t'mejs.norwegian': 'Norwegian',\n\t'mejs.persian': 'Persian',\n\t'mejs.polish': 'Polish',\n\t'mejs.portuguese': 'Portuguese',\n\t'mejs.romanian': 'Romanian',\n\t'mejs.russian': 'Russian',\n\t'mejs.serbian': 'Serbian',\n\t'mejs.slovak': 'Slovak',\n\t'mejs.slovenian': 'Slovenian',\n\t'mejs.spanish': 'Spanish',\n\t'mejs.swahili': 'Swahili',\n\t'mejs.swedish': 'Swedish',\n\t'mejs.tagalog': 'Tagalog',\n\t'mejs.thai': 'Thai',\n\t'mejs.turkish': 'Turkish',\n\t'mejs.ukrainian': 'Ukrainian',\n\t'mejs.vietnamese': 'Vietnamese',\n\t'mejs.welsh': 'Welsh',\n\t'mejs.yiddish': 'Yiddish'\n};\n\n},{}],16:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.config = undefined;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _mediaelement = _dereq_(6);\n\nvar _mediaelement2 = _interopRequireDefault(_mediaelement);\n\nvar _default = _dereq_(17);\n\nvar _default2 = _interopRequireDefault(_default);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _constants = _dereq_(25);\n\nvar _general = _dereq_(27);\n\nvar _time = _dereq_(30);\n\nvar _media = _dereq_(28);\n\nvar _dom = _dereq_(26);\n\nvar dom = _interopRequireWildcard(_dom);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n_mejs2.default.mepIndex = 0;\n\n_mejs2.default.players = {};\n\nvar config = exports.config = {\n\tposter: '',\n\n\tshowPosterWhenEnded: false,\n\n\tshowPosterWhenPaused: false,\n\n\tdefaultVideoWidth: 480,\n\n\tdefaultVideoHeight: 270,\n\n\tvideoWidth: -1,\n\n\tvideoHeight: -1,\n\n\tdefaultAudioWidth: 400,\n\n\tdefaultAudioHeight: 40,\n\n\tdefaultSeekBackwardInterval: function defaultSeekBackwardInterval(media) {\n\t\treturn media.getDuration() * 0.05;\n\t},\n\n\tdefaultSeekForwardInterval: function defaultSeekForwardInterval(media) {\n\t\treturn media.getDuration() * 0.05;\n\t},\n\n\tsetDimensions: true,\n\n\taudioWidth: -1,\n\n\taudioHeight: -1,\n\n\tloop: false,\n\n\tautoRewind: true,\n\n\tenableAutosize: true,\n\n\ttimeFormat: '',\n\n\talwaysShowHours: false,\n\n\tshowTimecodeFrameCount: false,\n\n\tframesPerSecond: 25,\n\n\talwaysShowControls: false,\n\n\thideVideoControlsOnLoad: false,\n\n\thideVideoControlsOnPause: false,\n\n\tclickToPlayPause: true,\n\n\tcontrolsTimeoutDefault: 1500,\n\n\tcontrolsTimeoutMouseEnter: 2500,\n\n\tcontrolsTimeoutMouseLeave: 1000,\n\n\tiPadUseNativeControls: false,\n\n\tiPhoneUseNativeControls: false,\n\n\tAndroidUseNativeControls: false,\n\n\tfeatures: ['playpause', 'current', 'progress', 'duration', 'tracks', 'volume', 'fullscreen'],\n\n\tuseDefaultControls: false,\n\n\tisVideo: true,\n\n\tstretching: 'auto',\n\n\tclassPrefix: 'mejs__',\n\n\tenableKeyboard: true,\n\n\tpauseOtherPlayers: true,\n\n\tsecondsDecimalLength: 0,\n\n\tcustomError: null,\n\n\tkeyActions: [{\n\t\tkeys: [32, 179],\n\t\taction: function action(player) {\n\n\t\t\tif (!_constants.IS_FIREFOX) {\n\t\t\t\tif (player.paused || player.ended) {\n\t\t\t\t\tplayer.play();\n\t\t\t\t} else {\n\t\t\t\t\tplayer.pause();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}]\n};\n\n_mejs2.default.MepDefaults = config;\n\nvar MediaElementPlayer = function () {\n\tfunction MediaElementPlayer(node, o) {\n\t\t_classCallCheck(this, MediaElementPlayer);\n\n\t\tvar t = this,\n\t\t element = typeof node === 'string' ? _document2.default.getElementById(node) : node;\n\n\t\tif (!(t instanceof MediaElementPlayer)) {\n\t\t\treturn new MediaElementPlayer(element, o);\n\t\t}\n\n\t\tt.node = t.media = element;\n\n\t\tif (!t.node) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (t.media.player) {\n\t\t\treturn t.media.player;\n\t\t}\n\n\t\tt.hasFocus = false;\n\n\t\tt.controlsAreVisible = true;\n\n\t\tt.controlsEnabled = true;\n\n\t\tt.controlsTimer = null;\n\n\t\tt.currentMediaTime = 0;\n\n\t\tt.proxy = null;\n\n\t\tif (o === undefined) {\n\t\t\tvar options = t.node.getAttribute('data-mejsoptions');\n\t\t\to = options ? JSON.parse(options) : {};\n\t\t}\n\n\t\tt.options = Object.assign({}, config, o);\n\n\t\tif (t.options.loop && !t.media.getAttribute('loop')) {\n\t\t\tt.media.loop = true;\n\t\t\tt.node.loop = true;\n\t\t} else if (t.media.loop) {\n\t\t\tt.options.loop = true;\n\t\t}\n\n\t\tif (!t.options.timeFormat) {\n\t\t\tt.options.timeFormat = 'mm:ss';\n\t\t\tif (t.options.alwaysShowHours) {\n\t\t\t\tt.options.timeFormat = 'hh:mm:ss';\n\t\t\t}\n\t\t\tif (t.options.showTimecodeFrameCount) {\n\t\t\t\tt.options.timeFormat += ':ff';\n\t\t\t}\n\t\t}\n\n\t\t(0, _time.calculateTimeFormat)(0, t.options, t.options.framesPerSecond || 25);\n\n\t\tt.id = 'mep_' + _mejs2.default.mepIndex++;\n\n\t\t_mejs2.default.players[t.id] = t;\n\n\t\tt.init();\n\n\t\treturn t;\n\t}\n\n\t_createClass(MediaElementPlayer, [{\n\t\tkey: 'getElement',\n\t\tvalue: function getElement(element) {\n\t\t\treturn element;\n\t\t}\n\t}, {\n\t\tkey: 'init',\n\t\tvalue: function init() {\n\t\t\tvar t = this,\n\t\t\t playerOptions = Object.assign({}, t.options, {\n\t\t\t\tsuccess: function success(media, domNode) {\n\t\t\t\t\tt._meReady(media, domNode);\n\t\t\t\t},\n\t\t\t\terror: function error(e) {\n\t\t\t\t\tt._handleError(e);\n\t\t\t\t}\n\t\t\t}),\n\t\t\t tagName = t.node.tagName.toLowerCase();\n\n\t\t\tt.isDynamic = tagName !== 'audio' && tagName !== 'video' && tagName !== 'iframe';\n\t\t\tt.isVideo = t.isDynamic ? t.options.isVideo : tagName !== 'audio' && t.options.isVideo;\n\t\t\tt.mediaFiles = null;\n\t\t\tt.trackFiles = null;\n\n\t\t\tif (_constants.IS_IPAD && t.options.iPadUseNativeControls || _constants.IS_IPHONE && t.options.iPhoneUseNativeControls) {\n\t\t\t\tt.node.setAttribute('controls', true);\n\n\t\t\t\tif (_constants.IS_IPAD && t.node.getAttribute('autoplay')) {\n\t\t\t\t\tt.play();\n\t\t\t\t}\n\t\t\t} else if ((t.isVideo || !t.isVideo && (t.options.features.length || t.options.useDefaultControls)) && !(_constants.IS_ANDROID && t.options.AndroidUseNativeControls)) {\n\t\t\t\tt.node.removeAttribute('controls');\n\t\t\t\tvar videoPlayerTitle = t.isVideo ? _i18n2.default.t('mejs.video-player') : _i18n2.default.t('mejs.audio-player');\n\n\t\t\t\tvar offscreen = _document2.default.createElement('span');\n\t\t\t\toffscreen.className = t.options.classPrefix + 'offscreen';\n\t\t\t\toffscreen.innerText = videoPlayerTitle;\n\t\t\t\tt.media.parentNode.insertBefore(offscreen, t.media);\n\n\t\t\t\tt.container = _document2.default.createElement('div');\n\t\t\t\tt.getElement(t.container).id = t.id;\n\t\t\t\tt.getElement(t.container).className = t.options.classPrefix + 'container ' + t.options.classPrefix + 'container-keyboard-inactive ' + t.media.className;\n\t\t\t\tt.getElement(t.container).tabIndex = 0;\n\t\t\t\tt.getElement(t.container).setAttribute('role', 'application');\n\t\t\t\tt.getElement(t.container).setAttribute('aria-label', videoPlayerTitle);\n\t\t\t\tt.getElement(t.container).innerHTML = '
        ' + ('
        ') + ('
        ') + ('
        ') + '
        ';\n\t\t\t\tt.getElement(t.container).addEventListener('focus', function (e) {\n\t\t\t\t\tif (!t.controlsAreVisible && !t.hasFocus && t.controlsEnabled) {\n\t\t\t\t\t\tt.showControls(true);\n\n\t\t\t\t\t\tvar btnSelector = (0, _general.isNodeAfter)(e.relatedTarget, t.getElement(t.container)) ? '.' + t.options.classPrefix + 'controls .' + t.options.classPrefix + 'button:last-child > button' : '.' + t.options.classPrefix + 'playpause-button > button',\n\t\t\t\t\t\t button = t.getElement(t.container).querySelector(btnSelector);\n\n\t\t\t\t\t\tbutton.focus();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tt.node.parentNode.insertBefore(t.getElement(t.container), t.node);\n\n\t\t\t\tif (!t.options.features.length && !t.options.useDefaultControls) {\n\t\t\t\t\tt.getElement(t.container).style.background = 'transparent';\n\t\t\t\t\tt.getElement(t.container).querySelector('.' + t.options.classPrefix + 'controls').style.display = 'none';\n\t\t\t\t}\n\n\t\t\t\tif (t.isVideo && t.options.stretching === 'fill' && !dom.hasClass(t.getElement(t.container).parentNode, t.options.classPrefix + 'fill-container')) {\n\t\t\t\t\tt.outerContainer = t.media.parentNode;\n\n\t\t\t\t\tvar wrapper = _document2.default.createElement('div');\n\t\t\t\t\twrapper.className = t.options.classPrefix + 'fill-container';\n\t\t\t\t\tt.getElement(t.container).parentNode.insertBefore(wrapper, t.getElement(t.container));\n\t\t\t\t\twrapper.appendChild(t.getElement(t.container));\n\t\t\t\t}\n\n\t\t\t\tif (_constants.IS_ANDROID) {\n\t\t\t\t\tdom.addClass(t.getElement(t.container), t.options.classPrefix + 'android');\n\t\t\t\t}\n\t\t\t\tif (_constants.IS_IOS) {\n\t\t\t\t\tdom.addClass(t.getElement(t.container), t.options.classPrefix + 'ios');\n\t\t\t\t}\n\t\t\t\tif (_constants.IS_IPAD) {\n\t\t\t\t\tdom.addClass(t.getElement(t.container), t.options.classPrefix + 'ipad');\n\t\t\t\t}\n\t\t\t\tif (_constants.IS_IPHONE) {\n\t\t\t\t\tdom.addClass(t.getElement(t.container), t.options.classPrefix + 'iphone');\n\t\t\t\t}\n\t\t\t\tdom.addClass(t.getElement(t.container), t.isVideo ? t.options.classPrefix + 'video' : t.options.classPrefix + 'audio');\n\n\t\t\t\tt.getElement(t.container).querySelector('.' + t.options.classPrefix + 'mediaelement').appendChild(t.node);\n\n\t\t\t\tt.media.player = t;\n\n\t\t\t\tt.controls = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'controls');\n\t\t\t\tt.layers = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'layers');\n\n\t\t\t\tvar tagType = t.isVideo ? 'video' : 'audio',\n\t\t\t\t capsTagName = tagType.substring(0, 1).toUpperCase() + tagType.substring(1);\n\n\t\t\t\tif (t.options[tagType + 'Width'] > 0 || t.options[tagType + 'Width'].toString().indexOf('%') > -1) {\n\t\t\t\t\tt.width = t.options[tagType + 'Width'];\n\t\t\t\t} else if (t.node.style.width !== '' && t.node.style.width !== null) {\n\t\t\t\t\tt.width = t.node.style.width;\n\t\t\t\t} else if (t.node.getAttribute('width')) {\n\t\t\t\t\tt.width = t.node.getAttribute('width');\n\t\t\t\t} else {\n\t\t\t\t\tt.width = t.options['default' + capsTagName + 'Width'];\n\t\t\t\t}\n\n\t\t\t\tif (t.options[tagType + 'Height'] > 0 || t.options[tagType + 'Height'].toString().indexOf('%') > -1) {\n\t\t\t\t\tt.height = t.options[tagType + 'Height'];\n\t\t\t\t} else if (t.node.style.height !== '' && t.node.style.height !== null) {\n\t\t\t\t\tt.height = t.node.style.height;\n\t\t\t\t} else if (t.node.getAttribute('height')) {\n\t\t\t\t\tt.height = t.node.getAttribute('height');\n\t\t\t\t} else {\n\t\t\t\t\tt.height = t.options['default' + capsTagName + 'Height'];\n\t\t\t\t}\n\n\t\t\t\tt.initialAspectRatio = t.height >= t.width ? t.width / t.height : t.height / t.width;\n\n\t\t\t\tt.setPlayerSize(t.width, t.height);\n\n\t\t\t\tplayerOptions.pluginWidth = t.width;\n\t\t\t\tplayerOptions.pluginHeight = t.height;\n\t\t\t} else if (!t.isVideo && !t.options.features.length && !t.options.useDefaultControls) {\n\t\t\t\t\tt.node.style.display = 'none';\n\t\t\t\t}\n\n\t\t\t_mejs2.default.MepDefaults = playerOptions;\n\n\t\t\tnew _mediaelement2.default(t.media, playerOptions, t.mediaFiles);\n\n\t\t\tif (t.getElement(t.container) !== undefined && t.options.features.length && t.controlsAreVisible && !t.options.hideVideoControlsOnLoad) {\n\t\t\t\tvar event = (0, _general.createEvent)('controlsshown', t.getElement(t.container));\n\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'showControls',\n\t\tvalue: function showControls(doAnimation) {\n\t\t\tvar t = this;\n\n\t\t\tdoAnimation = doAnimation === undefined || doAnimation;\n\n\t\t\tif (t.controlsAreVisible || !t.isVideo) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (doAnimation) {\n\t\t\t\t(function () {\n\t\t\t\t\tdom.fadeIn(t.getElement(t.controls), 200, function () {\n\t\t\t\t\t\tdom.removeClass(t.getElement(t.controls), t.options.classPrefix + 'offscreen');\n\t\t\t\t\t\tvar event = (0, _general.createEvent)('controlsshown', t.getElement(t.container));\n\t\t\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t\t\t});\n\n\t\t\t\t\tvar controls = t.getElement(t.container).querySelectorAll('.' + t.options.classPrefix + 'control');\n\n\t\t\t\t\tvar _loop = function _loop(i, total) {\n\t\t\t\t\t\tdom.fadeIn(controls[i], 200, function () {\n\t\t\t\t\t\t\tdom.removeClass(controls[i], t.options.classPrefix + 'offscreen');\n\t\t\t\t\t\t});\n\t\t\t\t\t};\n\n\t\t\t\t\tfor (var i = 0, total = controls.length; i < total; i++) {\n\t\t\t\t\t\t_loop(i, total);\n\t\t\t\t\t}\n\t\t\t\t})();\n\t\t\t} else {\n\t\t\t\tdom.removeClass(t.getElement(t.controls), t.options.classPrefix + 'offscreen');\n\t\t\t\tt.getElement(t.controls).style.display = '';\n\t\t\t\tt.getElement(t.controls).style.opacity = 1;\n\n\t\t\t\tvar controls = t.getElement(t.container).querySelectorAll('.' + t.options.classPrefix + 'control');\n\t\t\t\tfor (var i = 0, total = controls.length; i < total; i++) {\n\t\t\t\t\tdom.removeClass(controls[i], t.options.classPrefix + 'offscreen');\n\t\t\t\t\tcontrols[i].style.display = '';\n\t\t\t\t}\n\n\t\t\t\tvar event = (0, _general.createEvent)('controlsshown', t.getElement(t.container));\n\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t}\n\n\t\t\tt.controlsAreVisible = true;\n\t\t\tt.setControlsSize();\n\t\t}\n\t}, {\n\t\tkey: 'hideControls',\n\t\tvalue: function hideControls(doAnimation, forceHide) {\n\t\t\tvar t = this;\n\n\t\t\tdoAnimation = doAnimation === undefined || doAnimation;\n\n\t\t\tif (forceHide !== true && (!t.controlsAreVisible || t.options.alwaysShowControls || t.paused && t.readyState === 4 && (!t.options.hideVideoControlsOnLoad && t.currentTime <= 0 || !t.options.hideVideoControlsOnPause && t.currentTime > 0) || t.isVideo && !t.options.hideVideoControlsOnLoad && !t.readyState || t.ended)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (doAnimation) {\n\t\t\t\t(function () {\n\t\t\t\t\tdom.fadeOut(t.getElement(t.controls), 200, function () {\n\t\t\t\t\t\tdom.addClass(t.getElement(t.controls), t.options.classPrefix + 'offscreen');\n\t\t\t\t\t\tt.getElement(t.controls).style.display = '';\n\t\t\t\t\t\tvar event = (0, _general.createEvent)('controlshidden', t.getElement(t.container));\n\t\t\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t\t\t});\n\n\t\t\t\t\tvar controls = t.getElement(t.container).querySelectorAll('.' + t.options.classPrefix + 'control');\n\n\t\t\t\t\tvar _loop2 = function _loop2(i, total) {\n\t\t\t\t\t\tdom.fadeOut(controls[i], 200, function () {\n\t\t\t\t\t\t\tdom.addClass(controls[i], t.options.classPrefix + 'offscreen');\n\t\t\t\t\t\t\tcontrols[i].style.display = '';\n\t\t\t\t\t\t});\n\t\t\t\t\t};\n\n\t\t\t\t\tfor (var i = 0, total = controls.length; i < total; i++) {\n\t\t\t\t\t\t_loop2(i, total);\n\t\t\t\t\t}\n\t\t\t\t})();\n\t\t\t} else {\n\t\t\t\tdom.addClass(t.getElement(t.controls), t.options.classPrefix + 'offscreen');\n\t\t\t\tt.getElement(t.controls).style.display = '';\n\t\t\t\tt.getElement(t.controls).style.opacity = 0;\n\n\t\t\t\tvar controls = t.getElement(t.container).querySelectorAll('.' + t.options.classPrefix + 'control');\n\t\t\t\tfor (var i = 0, total = controls.length; i < total; i++) {\n\t\t\t\t\tdom.addClass(controls[i], t.options.classPrefix + 'offscreen');\n\t\t\t\t\tcontrols[i].style.display = '';\n\t\t\t\t}\n\n\t\t\t\tvar event = (0, _general.createEvent)('controlshidden', t.getElement(t.container));\n\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t}\n\n\t\t\tt.controlsAreVisible = false;\n\t\t}\n\t}, {\n\t\tkey: 'startControlsTimer',\n\t\tvalue: function startControlsTimer(timeout) {\n\t\t\tvar t = this;\n\n\t\t\ttimeout = typeof timeout !== 'undefined' ? timeout : t.options.controlsTimeoutDefault;\n\n\t\t\tt.killControlsTimer('start');\n\n\t\t\tt.controlsTimer = setTimeout(function () {\n\t\t\t\tt.hideControls();\n\t\t\t\tt.killControlsTimer('hide');\n\t\t\t}, timeout);\n\t\t}\n\t}, {\n\t\tkey: 'killControlsTimer',\n\t\tvalue: function killControlsTimer() {\n\t\t\tvar t = this;\n\n\t\t\tif (t.controlsTimer !== null) {\n\t\t\t\tclearTimeout(t.controlsTimer);\n\t\t\t\tdelete t.controlsTimer;\n\t\t\t\tt.controlsTimer = null;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'disableControls',\n\t\tvalue: function disableControls() {\n\t\t\tvar t = this;\n\n\t\t\tt.killControlsTimer();\n\t\t\tt.controlsEnabled = false;\n\t\t\tt.hideControls(false, true);\n\t\t}\n\t}, {\n\t\tkey: 'enableControls',\n\t\tvalue: function enableControls() {\n\t\t\tvar t = this;\n\n\t\t\tt.controlsEnabled = true;\n\t\t\tt.showControls(false);\n\t\t}\n\t}, {\n\t\tkey: '_setDefaultPlayer',\n\t\tvalue: function _setDefaultPlayer() {\n\t\t\tvar t = this;\n\t\t\tif (t.proxy) {\n\t\t\t\tt.proxy.pause();\n\t\t\t}\n\t\t\tt.proxy = new _default2.default(t);\n\t\t\tt.media.addEventListener('loadedmetadata', function () {\n\t\t\t\tif (t.getCurrentTime() > 0 && t.currentMediaTime > 0) {\n\t\t\t\t\tt.setCurrentTime(t.currentMediaTime);\n\t\t\t\t\tif (!_constants.IS_IOS && !_constants.IS_ANDROID) {\n\t\t\t\t\t\tt.play();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}, {\n\t\tkey: '_meReady',\n\t\tvalue: function _meReady(media, domNode) {\n\t\t\tvar t = this,\n\t\t\t autoplayAttr = domNode.getAttribute('autoplay'),\n\t\t\t autoplay = !(autoplayAttr === undefined || autoplayAttr === null || autoplayAttr === 'false'),\n\t\t\t isNative = media.rendererName !== null && /(native|html5)/i.test(media.rendererName);\n\n\t\t\tif (t.getElement(t.controls)) {\n\t\t\t\tt.enableControls();\n\t\t\t}\n\n\t\t\tif (t.getElement(t.container) && t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'overlay-play')) {\n\t\t\t\tt.getElement(t.container).querySelector('.' + t.options.classPrefix + 'overlay-play').style.display = '';\n\t\t\t}\n\n\t\t\tif (t.created) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tt.created = true;\n\t\t\tt.media = media;\n\t\t\tt.domNode = domNode;\n\n\t\t\tif (!(_constants.IS_ANDROID && t.options.AndroidUseNativeControls) && !(_constants.IS_IPAD && t.options.iPadUseNativeControls) && !(_constants.IS_IPHONE && t.options.iPhoneUseNativeControls)) {\n\t\t\t\tif (!t.isVideo && !t.options.features.length && !t.options.useDefaultControls) {\n\t\t\t\t\tif (autoplay && isNative) {\n\t\t\t\t\t\tt.play();\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.options.success) {\n\n\t\t\t\t\t\tif (typeof t.options.success === 'string') {\n\t\t\t\t\t\t\t_window2.default[t.options.success](t.media, t.domNode, t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tt.options.success(t.media, t.domNode, t);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tt.featurePosition = {};\n\n\t\t\t\tt._setDefaultPlayer();\n\n\t\t\t\tt.buildposter(t, t.getElement(t.controls), t.getElement(t.layers), t.media);\n\t\t\t\tt.buildkeyboard(t, t.getElement(t.controls), t.getElement(t.layers), t.media);\n\t\t\t\tt.buildoverlays(t, t.getElement(t.controls), t.getElement(t.layers), t.media);\n\n\t\t\t\tif (t.options.useDefaultControls) {\n\t\t\t\t\tvar defaultControls = ['playpause', 'current', 'progress', 'duration', 'tracks', 'volume', 'fullscreen'];\n\t\t\t\t\tt.options.features = defaultControls.concat(t.options.features.filter(function (item) {\n\t\t\t\t\t\treturn defaultControls.indexOf(item) === -1;\n\t\t\t\t\t}));\n\t\t\t\t}\n\n\t\t\t\tt.buildfeatures(t, t.getElement(t.controls), t.getElement(t.layers), t.media);\n\n\t\t\t\tvar event = (0, _general.createEvent)('controlsready', t.getElement(t.container));\n\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\n\t\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\t\tt.setControlsSize();\n\n\t\t\t\tif (t.isVideo) {\n\t\t\t\t\tt.clickToPlayPauseCallback = function () {\n\n\t\t\t\t\t\tif (t.options.clickToPlayPause) {\n\t\t\t\t\t\t\tvar button = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'overlay-button'),\n\t\t\t\t\t\t\t pressed = button.getAttribute('aria-pressed');\n\n\t\t\t\t\t\t\tif (t.paused && pressed) {\n\t\t\t\t\t\t\t\tt.pause();\n\t\t\t\t\t\t\t} else if (t.paused) {\n\t\t\t\t\t\t\t\tt.play();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tt.pause();\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tbutton.setAttribute('aria-pressed', !pressed);\n\t\t\t\t\t\t\tt.getElement(t.container).focus();\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\t\t\t\t\tt.createIframeLayer();\n\n\t\t\t\t\tt.media.addEventListener('click', t.clickToPlayPauseCallback);\n\n\t\t\t\t\tif ((_constants.IS_ANDROID || _constants.IS_IOS) && !t.options.alwaysShowControls) {\n\t\t\t\t\t\tt.node.addEventListener('touchstart', function () {\n\t\t\t\t\t\t\tif (t.controlsAreVisible) {\n\t\t\t\t\t\t\t\tt.hideControls(false);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tif (t.controlsEnabled) {\n\t\t\t\t\t\t\t\t\tt.showControls(false);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}, _constants.SUPPORT_PASSIVE_EVENT ? { passive: true } : false);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tt.getElement(t.container).addEventListener('mouseenter', function () {\n\t\t\t\t\t\t\tif (t.controlsEnabled) {\n\t\t\t\t\t\t\t\tif (!t.options.alwaysShowControls) {\n\t\t\t\t\t\t\t\t\tt.killControlsTimer('enter');\n\t\t\t\t\t\t\t\t\tt.showControls();\n\t\t\t\t\t\t\t\t\tt.startControlsTimer(t.options.controlsTimeoutMouseEnter);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tt.getElement(t.container).addEventListener('mousemove', function () {\n\t\t\t\t\t\t\tif (t.controlsEnabled) {\n\t\t\t\t\t\t\t\tif (!t.controlsAreVisible) {\n\t\t\t\t\t\t\t\t\tt.showControls();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (!t.options.alwaysShowControls) {\n\t\t\t\t\t\t\t\t\tt.startControlsTimer(t.options.controlsTimeoutMouseEnter);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tt.getElement(t.container).addEventListener('mouseleave', function () {\n\t\t\t\t\t\t\tif (t.controlsEnabled) {\n\t\t\t\t\t\t\t\tif (!t.paused && !t.options.alwaysShowControls) {\n\t\t\t\t\t\t\t\t\tt.startControlsTimer(t.options.controlsTimeoutMouseLeave);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.options.hideVideoControlsOnLoad) {\n\t\t\t\t\t\tt.hideControls(false);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.options.enableAutosize) {\n\t\t\t\t\t\tt.media.addEventListener('loadedmetadata', function (e) {\n\t\t\t\t\t\t\tvar target = e !== undefined ? e.detail.target || e.target : t.media;\n\t\t\t\t\t\t\tif (t.options.videoHeight <= 0 && !t.domNode.getAttribute('height') && !t.domNode.style.height && target !== null && !isNaN(target.videoHeight)) {\n\t\t\t\t\t\t\t\tt.setPlayerSize(target.videoWidth, target.videoHeight);\n\t\t\t\t\t\t\t\tt.setControlsSize();\n\t\t\t\t\t\t\t\tt.media.setSize(target.videoWidth, target.videoHeight);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tt.media.addEventListener('play', function () {\n\t\t\t\t\tt.hasFocus = true;\n\n\t\t\t\t\tfor (var playerIndex in _mejs2.default.players) {\n\t\t\t\t\t\tif (_mejs2.default.players.hasOwnProperty(playerIndex)) {\n\t\t\t\t\t\t\tvar p = _mejs2.default.players[playerIndex];\n\n\t\t\t\t\t\t\tif (p.id !== t.id && t.options.pauseOtherPlayers && !p.paused && !p.ended && p.options.ignorePauseOtherPlayersOption !== true) {\n\t\t\t\t\t\t\t\tp.pause();\n\t\t\t\t\t\t\t\tp.hasFocus = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!(_constants.IS_ANDROID || _constants.IS_IOS) && !t.options.alwaysShowControls && t.isVideo) {\n\t\t\t\t\t\tt.hideControls();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tt.media.addEventListener('ended', function () {\n\t\t\t\t\tif (t.options.autoRewind) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tt.setCurrentTime(0);\n\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tvar loadingElement = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'overlay-loading');\n\t\t\t\t\t\t\t\tif (loadingElement && loadingElement.parentNode) {\n\t\t\t\t\t\t\t\t\tloadingElement.parentNode.style.display = 'none';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}, 20);\n\t\t\t\t\t\t} catch (exp) {\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (typeof t.media.renderer.stop === 'function') {\n\t\t\t\t\t\tt.media.renderer.stop();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tt.pause();\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.setProgressRail) {\n\t\t\t\t\t\tt.setProgressRail();\n\t\t\t\t\t}\n\t\t\t\t\tif (t.setCurrentRail) {\n\t\t\t\t\t\tt.setCurrentRail();\n\t\t\t\t\t}\n\n\t\t\t\t\tif (t.options.loop) {\n\t\t\t\t\t\tt.play();\n\t\t\t\t\t} else if (!t.options.alwaysShowControls && t.controlsEnabled) {\n\t\t\t\t\t\tt.showControls();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tt.media.addEventListener('loadedmetadata', function () {\n\n\t\t\t\t\t(0, _time.calculateTimeFormat)(t.getDuration(), t.options, t.options.framesPerSecond || 25);\n\n\t\t\t\t\tif (t.updateDuration) {\n\t\t\t\t\t\tt.updateDuration();\n\t\t\t\t\t}\n\t\t\t\t\tif (t.updateCurrent) {\n\t\t\t\t\t\tt.updateCurrent();\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!t.isFullScreen) {\n\t\t\t\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\t\t\t\tt.setControlsSize();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tvar duration = null;\n\t\t\t\tt.media.addEventListener('timeupdate', function () {\n\t\t\t\t\tif (!isNaN(t.getDuration()) && duration !== t.getDuration()) {\n\t\t\t\t\t\tduration = t.getDuration();\n\t\t\t\t\t\t(0, _time.calculateTimeFormat)(duration, t.options, t.options.framesPerSecond || 25);\n\n\t\t\t\t\t\tif (t.updateDuration) {\n\t\t\t\t\t\t\tt.updateDuration();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (t.updateCurrent) {\n\t\t\t\t\t\t\tt.updateCurrent();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tt.setControlsSize();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tt.getElement(t.container).addEventListener('click', function (e) {\n\t\t\t\t\tdom.addClass(e.currentTarget, t.options.classPrefix + 'container-keyboard-inactive');\n\t\t\t\t});\n\n\t\t\t\tt.getElement(t.container).addEventListener('focusin', function (e) {\n\t\t\t\t\tdom.removeClass(e.currentTarget, t.options.classPrefix + 'container-keyboard-inactive');\n\t\t\t\t\tif (t.isVideo && !_constants.IS_ANDROID && !_constants.IS_IOS && t.controlsEnabled && !t.options.alwaysShowControls) {\n\t\t\t\t\t\tt.killControlsTimer('enter');\n\t\t\t\t\t\tt.showControls();\n\t\t\t\t\t\tt.startControlsTimer(t.options.controlsTimeoutMouseEnter);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tt.getElement(t.container).addEventListener('focusout', function (e) {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tif (e.relatedTarget) {\n\t\t\t\t\t\t\tif (t.keyboardAction && !e.relatedTarget.closest('.' + t.options.classPrefix + 'container')) {\n\t\t\t\t\t\t\t\tt.keyboardAction = false;\n\t\t\t\t\t\t\t\tif (t.isVideo && !t.options.alwaysShowControls && !t.paused) {\n\t\t\t\t\t\t\t\t\tt.startControlsTimer(t.options.controlsTimeoutMouseLeave);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}, 0);\n\t\t\t\t});\n\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\t\t\tt.setControlsSize();\n\t\t\t\t}, 0);\n\n\t\t\t\tt.globalResizeCallback = function () {\n\t\t\t\t\tif (!(t.isFullScreen || _constants.HAS_TRUE_NATIVE_FULLSCREEN && _document2.default.webkitIsFullScreen)) {\n\t\t\t\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\t\t\t}\n\n\t\t\t\t\tt.setControlsSize();\n\t\t\t\t};\n\n\t\t\t\tt.globalBind('resize', t.globalResizeCallback);\n\t\t\t}\n\n\t\t\tif (autoplay && isNative) {\n\t\t\t\tt.play();\n\t\t\t}\n\n\t\t\tif (t.options.success) {\n\t\t\t\tif (typeof t.options.success === 'string') {\n\t\t\t\t\t_window2.default[t.options.success](t.media, t.domNode, t);\n\t\t\t\t} else {\n\t\t\t\t\tt.options.success(t.media, t.domNode, t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: '_handleError',\n\t\tvalue: function _handleError(e, media, node) {\n\t\t\tvar t = this,\n\t\t\t play = t.getElement(t.layers).querySelector('.' + t.options.classPrefix + 'overlay-play');\n\n\t\t\tif (play) {\n\t\t\t\tplay.style.display = 'none';\n\t\t\t}\n\n\t\t\tif (t.options.error) {\n\t\t\t\tt.options.error(e, media, node);\n\t\t\t}\n\n\t\t\tif (t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'cannotplay')) {\n\t\t\t\tt.getElement(t.container).querySelector('.' + t.options.classPrefix + 'cannotplay').remove();\n\t\t\t}\n\n\t\t\tvar errorContainer = _document2.default.createElement('div');\n\t\t\terrorContainer.className = t.options.classPrefix + 'cannotplay';\n\t\t\terrorContainer.style.width = '100%';\n\t\t\terrorContainer.style.height = '100%';\n\n\t\t\tvar errorContent = typeof t.options.customError === 'function' ? t.options.customError(t.media, t.media.originalNode) : t.options.customError,\n\t\t\t imgError = '';\n\n\t\t\tif (!errorContent) {\n\t\t\t\tvar poster = t.media.originalNode.getAttribute('poster');\n\t\t\t\tif (poster) {\n\t\t\t\t\timgError = '\"'';\n\t\t\t\t}\n\n\t\t\t\tif (e.message) {\n\t\t\t\t\terrorContent = '

        ' + e.message + '

        ';\n\t\t\t\t}\n\n\t\t\t\tif (e.urls) {\n\t\t\t\t\tfor (var i = 0, total = e.urls.length; i < total; i++) {\n\t\t\t\t\t\tvar url = e.urls[i];\n\t\t\t\t\t\terrorContent += '' + _mejs2.default.i18n.t('mejs.download-file') + ': ' + url.src + '';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (errorContent && t.getElement(t.layers).querySelector('.' + t.options.classPrefix + 'overlay-error')) {\n\t\t\t\terrorContainer.innerHTML = errorContent;\n\t\t\t\tt.getElement(t.layers).querySelector('.' + t.options.classPrefix + 'overlay-error').innerHTML = '' + imgError + errorContainer.outerHTML;\n\t\t\t\tt.getElement(t.layers).querySelector('.' + t.options.classPrefix + 'overlay-error').parentNode.style.display = 'block';\n\t\t\t}\n\n\t\t\tif (t.controlsEnabled) {\n\t\t\t\tt.disableControls();\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'setPlayerSize',\n\t\tvalue: function setPlayerSize(width, height) {\n\t\t\tvar t = this;\n\n\t\t\tif (!t.options.setDimensions) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tif (typeof width !== 'undefined') {\n\t\t\t\tt.width = width;\n\t\t\t}\n\n\t\t\tif (typeof height !== 'undefined') {\n\t\t\t\tt.height = height;\n\t\t\t}\n\n\t\t\tswitch (t.options.stretching) {\n\t\t\t\tcase 'fill':\n\t\t\t\t\tif (t.isVideo) {\n\t\t\t\t\t\tt.setFillMode();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tt.setDimensions(t.width, t.height);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'responsive':\n\t\t\t\t\tt.setResponsiveMode();\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'none':\n\t\t\t\t\tt.setDimensions(t.width, t.height);\n\t\t\t\t\tbreak;\n\n\t\t\t\tdefault:\n\t\t\t\t\tif (t.hasFluidMode() === true) {\n\t\t\t\t\t\tt.setResponsiveMode();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tt.setDimensions(t.width, t.height);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'hasFluidMode',\n\t\tvalue: function hasFluidMode() {\n\t\t\tvar t = this;\n\n\t\t\treturn t.height.toString().indexOf('%') !== -1 || t.node && t.node.style.maxWidth && t.node.style.maxWidth !== 'none' && t.node.style.maxWidth !== t.width || t.node && t.node.currentStyle && t.node.currentStyle.maxWidth === '100%';\n\t\t}\n\t}, {\n\t\tkey: 'setResponsiveMode',\n\t\tvalue: function setResponsiveMode() {\n\t\t\tvar t = this,\n\t\t\t parent = function () {\n\n\t\t\t\tvar parentEl = void 0,\n\t\t\t\t el = t.getElement(t.container);\n\n\t\t\t\twhile (el) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (_constants.IS_FIREFOX && el.tagName.toLowerCase() === 'html' && _window2.default.self !== _window2.default.top && _window2.default.frameElement !== null) {\n\t\t\t\t\t\t\treturn _window2.default.frameElement;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tparentEl = el.parentElement;\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tparentEl = el.parentElement;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (parentEl && dom.visible(parentEl)) {\n\t\t\t\t\t\treturn parentEl;\n\t\t\t\t\t}\n\t\t\t\t\tel = parentEl;\n\t\t\t\t}\n\n\t\t\t\treturn null;\n\t\t\t}(),\n\t\t\t parentStyles = parent ? getComputedStyle(parent, null) : getComputedStyle(_document2.default.body, null),\n\t\t\t nativeWidth = function () {\n\t\t\t\tif (t.isVideo) {\n\t\t\t\t\tif (t.node && t.node.videoWidth && t.node.videoWidth > 0) {\n\t\t\t\t\t\treturn t.node.videoWidth;\n\t\t\t\t\t} else if (t.node && t.node.getAttribute('width')) {\n\t\t\t\t\t\treturn t.node.getAttribute('width');\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn t.options.defaultVideoWidth;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn t.options.defaultAudioWidth;\n\t\t\t\t}\n\t\t\t}(),\n\t\t\t nativeHeight = function () {\n\t\t\t\tif (t.isVideo) {\n\t\t\t\t\tif (t.node && t.node.videoHeight && t.node.videoHeight > 0) {\n\t\t\t\t\t\treturn t.node.videoHeight;\n\t\t\t\t\t} else if (t.node && t.node.getAttribute('height')) {\n\t\t\t\t\t\treturn t.node.getAttribute('height');\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn t.options.defaultVideoHeight;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn t.options.defaultAudioHeight;\n\t\t\t\t}\n\t\t\t}(),\n\t\t\t aspectRatio = function () {\n\t\t\t\tif (!t.options.enableAutosize) {\n\t\t\t\t\treturn t.initialAspectRatio;\n\t\t\t\t}\n\t\t\t\tvar ratio = 1;\n\t\t\t\tif (!t.isVideo) {\n\t\t\t\t\treturn ratio;\n\t\t\t\t}\n\n\t\t\t\tif (t.node && t.node.videoWidth && t.node.videoWidth > 0 && t.node.videoHeight && t.node.videoHeight > 0) {\n\t\t\t\t\tratio = t.height >= t.width ? t.node.videoWidth / t.node.videoHeight : t.node.videoHeight / t.node.videoWidth;\n\t\t\t\t} else {\n\t\t\t\t\tratio = t.initialAspectRatio;\n\t\t\t\t}\n\n\t\t\t\tif (isNaN(ratio) || ratio < 0.01 || ratio > 100) {\n\t\t\t\t\tratio = 1;\n\t\t\t\t}\n\n\t\t\t\treturn ratio;\n\t\t\t}(),\n\t\t\t parentHeight = parseFloat(parentStyles.height);\n\n\t\t\tvar newHeight = void 0,\n\t\t\t parentWidth = parseFloat(parentStyles.width);\n\n\t\t\tif (t.isVideo) {\n\t\t\t\tif (t.height === '100%') {\n\t\t\t\t\tnewHeight = parseFloat(parentWidth * nativeHeight / nativeWidth, 10);\n\t\t\t\t} else {\n\t\t\t\t\tnewHeight = t.height >= t.width ? parseFloat(parentWidth / aspectRatio, 10) : parseFloat(parentWidth * aspectRatio, 10);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tnewHeight = nativeHeight;\n\t\t\t}\n\n\t\t\tif (isNaN(newHeight)) {\n\t\t\t\tnewHeight = parentHeight;\n\t\t\t}\n\n\t\t\tif (t.getElement(t.container).parentNode && t.getElement(t.container).parentNode.length > 0 && t.getElement(t.container).parentNode.tagName.toLowerCase() === 'body') {\n\t\t\t\tparentWidth = _window2.default.innerWidth || _document2.default.documentElement.clientWidth || _document2.default.body.clientWidth;\n\t\t\t\tnewHeight = _window2.default.innerHeight || _document2.default.documentElement.clientHeight || _document2.default.body.clientHeight;\n\t\t\t}\n\n\t\t\tif (newHeight && parentWidth) {\n\t\t\t\tt.getElement(t.container).style.width = parentWidth + 'px';\n\t\t\t\tt.getElement(t.container).style.height = newHeight + 'px';\n\n\t\t\t\tif (t.node) {\n\t\t\t\t\tt.node.style.width = '100%';\n\t\t\t\t\tt.node.style.height = '100%';\n\t\t\t\t}\n\n\t\t\t\tif (t.isVideo && t.media.setSize) {\n\t\t\t\t\tt.media.setSize(parentWidth, newHeight);\n\t\t\t\t}\n\n\t\t\t\tvar layerChildren = t.getElement(t.layers).children;\n\t\t\t\tfor (var i = 0, total = layerChildren.length; i < total; i++) {\n\t\t\t\t\tlayerChildren[i].style.width = '100%';\n\t\t\t\t\tlayerChildren[i].style.height = '100%';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'setFillMode',\n\t\tvalue: function setFillMode() {\n\t\t\tvar t = this;\n\t\t\tvar isIframe = _window2.default.self !== _window2.default.top && _window2.default.frameElement !== null;\n\t\t\tvar parent = function () {\n\t\t\t\tvar parentEl = void 0,\n\t\t\t\t el = t.getElement(t.container);\n\n\t\t\t\twhile (el) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (_constants.IS_FIREFOX && el.tagName.toLowerCase() === 'html' && _window2.default.self !== _window2.default.top && _window2.default.frameElement !== null) {\n\t\t\t\t\t\t\treturn _window2.default.frameElement;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tparentEl = el.parentElement;\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tparentEl = el.parentElement;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (parentEl && dom.visible(parentEl)) {\n\t\t\t\t\t\treturn parentEl;\n\t\t\t\t\t}\n\t\t\t\t\tel = parentEl;\n\t\t\t\t}\n\n\t\t\t\treturn null;\n\t\t\t}();\n\t\t\tvar parentStyles = parent ? getComputedStyle(parent, null) : getComputedStyle(_document2.default.body, null);\n\n\t\t\tif (t.node.style.height !== 'none' && t.node.style.height !== t.height) {\n\t\t\t\tt.node.style.height = 'auto';\n\t\t\t}\n\t\t\tif (t.node.style.maxWidth !== 'none' && t.node.style.maxWidth !== t.width) {\n\t\t\t\tt.node.style.maxWidth = 'none';\n\t\t\t}\n\n\t\t\tif (t.node.style.maxHeight !== 'none' && t.node.style.maxHeight !== t.height) {\n\t\t\t\tt.node.style.maxHeight = 'none';\n\t\t\t}\n\n\t\t\tif (t.node.currentStyle) {\n\t\t\t\tif (t.node.currentStyle.height === '100%') {\n\t\t\t\t\tt.node.currentStyle.height = 'auto';\n\t\t\t\t}\n\t\t\t\tif (t.node.currentStyle.maxWidth === '100%') {\n\t\t\t\t\tt.node.currentStyle.maxWidth = 'none';\n\t\t\t\t}\n\t\t\t\tif (t.node.currentStyle.maxHeight === '100%') {\n\t\t\t\t\tt.node.currentStyle.maxHeight = 'none';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!isIframe && !parseFloat(parentStyles.width)) {\n\t\t\t\tparent.style.width = t.media.offsetWidth + 'px';\n\t\t\t}\n\n\t\t\tif (!isIframe && !parseFloat(parentStyles.height)) {\n\t\t\t\tparent.style.height = t.media.offsetHeight + 'px';\n\t\t\t}\n\n\t\t\tparentStyles = getComputedStyle(parent);\n\n\t\t\tvar parentWidth = parseFloat(parentStyles.width),\n\t\t\t parentHeight = parseFloat(parentStyles.height);\n\n\t\t\tt.setDimensions('100%', '100%');\n\n\t\t\tvar poster = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'poster>img');\n\t\t\tif (poster) {\n\t\t\t\tposter.style.display = '';\n\t\t\t}\n\n\t\t\tvar targetElement = t.getElement(t.container).querySelectorAll('object, embed, iframe, video'),\n\t\t\t initHeight = t.height,\n\t\t\t initWidth = t.width,\n\t\t\t scaleX1 = parentWidth,\n\t\t\t scaleY1 = initHeight * parentWidth / initWidth,\n\t\t\t scaleX2 = initWidth * parentHeight / initHeight,\n\t\t\t scaleY2 = parentHeight,\n\t\t\t bScaleOnWidth = scaleX2 > parentWidth === false,\n\t\t\t finalWidth = bScaleOnWidth ? Math.floor(scaleX1) : Math.floor(scaleX2),\n\t\t\t finalHeight = bScaleOnWidth ? Math.floor(scaleY1) : Math.floor(scaleY2),\n\t\t\t width = bScaleOnWidth ? parentWidth + 'px' : finalWidth + 'px',\n\t\t\t height = bScaleOnWidth ? finalHeight + 'px' : parentHeight + 'px';\n\n\t\t\tfor (var i = 0, total = targetElement.length; i < total; i++) {\n\t\t\t\ttargetElement[i].style.height = height;\n\t\t\t\ttargetElement[i].style.width = width;\n\t\t\t\tif (t.media.setSize) {\n\t\t\t\t\tt.media.setSize(width, height);\n\t\t\t\t}\n\n\t\t\t\ttargetElement[i].style.marginLeft = Math.floor((parentWidth - finalWidth) / 2) + 'px';\n\t\t\t\ttargetElement[i].style.marginTop = 0;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'setDimensions',\n\t\tvalue: function setDimensions(width, height) {\n\t\t\tvar t = this;\n\n\t\t\twidth = (0, _general.isString)(width) && width.indexOf('%') > -1 ? width : parseFloat(width) + 'px';\n\t\t\theight = (0, _general.isString)(height) && height.indexOf('%') > -1 ? height : parseFloat(height) + 'px';\n\n\t\t\tt.getElement(t.container).style.width = width;\n\t\t\tt.getElement(t.container).style.height = height;\n\n\t\t\tvar layers = t.getElement(t.layers).children;\n\t\t\tfor (var i = 0, total = layers.length; i < total; i++) {\n\t\t\t\tlayers[i].style.width = width;\n\t\t\t\tlayers[i].style.height = height;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'setControlsSize',\n\t\tvalue: function setControlsSize() {\n\t\t\tvar t = this;\n\n\t\t\tif (!dom.visible(t.getElement(t.container))) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (t.rail && dom.visible(t.rail)) {\n\t\t\t\tvar totalStyles = t.total ? getComputedStyle(t.total, null) : null,\n\t\t\t\t totalMargin = totalStyles ? parseFloat(totalStyles.marginLeft) + parseFloat(totalStyles.marginRight) : 0,\n\t\t\t\t railStyles = getComputedStyle(t.rail),\n\t\t\t\t railMargin = parseFloat(railStyles.marginLeft) + parseFloat(railStyles.marginRight);\n\n\t\t\t\tvar siblingsWidth = 0;\n\n\t\t\t\tvar siblings = dom.siblings(t.rail, function (el) {\n\t\t\t\t\treturn el !== t.rail;\n\t\t\t\t}),\n\t\t\t\t total = siblings.length;\n\t\t\t\tfor (var i = 0; i < total; i++) {\n\t\t\t\t\tsiblingsWidth += siblings[i].offsetWidth;\n\t\t\t\t}\n\n\t\t\t\tsiblingsWidth += totalMargin + (totalMargin === 0 ? railMargin * 2 : railMargin) + 1;\n\n\t\t\t\tt.getElement(t.container).style.minWidth = siblingsWidth + 'px';\n\n\t\t\t\tvar event = (0, _general.createEvent)('controlsresize', t.getElement(t.container));\n\t\t\t\tt.getElement(t.container).dispatchEvent(event);\n\t\t\t} else {\n\t\t\t\tvar children = t.getElement(t.controls).children;\n\t\t\t\tvar minWidth = 0;\n\n\t\t\t\tfor (var _i = 0, _total = children.length; _i < _total; _i++) {\n\t\t\t\t\tminWidth += children[_i].offsetWidth;\n\t\t\t\t}\n\n\t\t\t\tt.getElement(t.container).style.minWidth = minWidth + 'px';\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'addControlElement',\n\t\tvalue: function addControlElement(element, key) {\n\n\t\t\tvar t = this;\n\n\t\t\tif (t.featurePosition[key] !== undefined) {\n\t\t\t\tvar child = t.getElement(t.controls).children[t.featurePosition[key] - 1];\n\t\t\t\tchild.parentNode.insertBefore(element, child.nextSibling);\n\t\t\t} else {\n\t\t\t\tt.getElement(t.controls).appendChild(element);\n\t\t\t\tvar children = t.getElement(t.controls).children;\n\t\t\t\tfor (var i = 0, total = children.length; i < total; i++) {\n\t\t\t\t\tif (element === children[i]) {\n\t\t\t\t\t\tt.featurePosition[key] = i;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'createIframeLayer',\n\t\tvalue: function createIframeLayer() {\n\t\t\tvar t = this;\n\n\t\t\tif (t.isVideo && t.media.rendererName !== null && t.media.rendererName.indexOf('iframe') > -1 && !_document2.default.getElementById(t.media.id + '-iframe-overlay')) {\n\n\t\t\t\tvar layer = _document2.default.createElement('div'),\n\t\t\t\t target = _document2.default.getElementById(t.media.id + '_' + t.media.rendererName);\n\n\t\t\t\tlayer.id = t.media.id + '-iframe-overlay';\n\t\t\t\tlayer.className = t.options.classPrefix + 'iframe-overlay';\n\t\t\t\tlayer.addEventListener('click', function (e) {\n\t\t\t\t\tif (t.options.clickToPlayPause) {\n\t\t\t\t\t\tif (t.paused) {\n\t\t\t\t\t\t\tt.play();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tt.pause();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\ttarget.parentNode.insertBefore(layer, target);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'resetSize',\n\t\tvalue: function resetSize() {\n\t\t\tvar t = this;\n\n\t\t\tsetTimeout(function () {\n\t\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\t\tt.setControlsSize();\n\t\t\t}, 50);\n\t\t}\n\t}, {\n\t\tkey: 'setPoster',\n\t\tvalue: function setPoster(url) {\n\t\t\tvar t = this;\n\n\t\t\tif (t.getElement(t.container)) {\n\t\t\t\tvar posterDiv = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'poster');\n\n\t\t\t\tif (!posterDiv) {\n\t\t\t\t\tposterDiv = _document2.default.createElement('div');\n\t\t\t\t\tposterDiv.className = t.options.classPrefix + 'poster ' + t.options.classPrefix + 'layer';\n\t\t\t\t\tt.getElement(t.layers).appendChild(posterDiv);\n\t\t\t\t}\n\n\t\t\t\tvar posterImg = posterDiv.querySelector('img');\n\n\t\t\t\tif (!posterImg && url) {\n\t\t\t\t\tposterImg = _document2.default.createElement('img');\n\t\t\t\t\tposterImg.className = t.options.classPrefix + 'poster-img';\n\t\t\t\t\tposterImg.width = '100%';\n\t\t\t\t\tposterImg.height = '100%';\n\t\t\t\t\tposterDiv.style.display = '';\n\t\t\t\t\tposterDiv.appendChild(posterImg);\n\t\t\t\t}\n\n\t\t\t\tif (url) {\n\t\t\t\t\tposterImg.setAttribute('src', url);\n\t\t\t\t\tposterDiv.style.backgroundImage = 'url(\"' + url + '\")';\n\t\t\t\t\tposterDiv.style.display = '';\n\t\t\t\t} else if (posterImg) {\n\t\t\t\t\tposterDiv.style.backgroundImage = 'none';\n\t\t\t\t\tposterDiv.style.display = 'none';\n\t\t\t\t\tposterImg.remove();\n\t\t\t\t} else {\n\t\t\t\t\tposterDiv.style.display = 'none';\n\t\t\t\t}\n\t\t\t} else if (_constants.IS_IPAD && t.options.iPadUseNativeControls || _constants.IS_IPHONE && t.options.iPhoneUseNativeControls || _constants.IS_ANDROID && t.options.AndroidUseNativeControls) {\n\t\t\t\tt.media.originalNode.poster = url;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'changeSkin',\n\t\tvalue: function changeSkin(className) {\n\t\t\tvar t = this;\n\n\t\t\tt.getElement(t.container).className = t.options.classPrefix + 'container ' + className;\n\t\t\tt.setPlayerSize(t.width, t.height);\n\t\t\tt.setControlsSize();\n\t\t}\n\t}, {\n\t\tkey: 'globalBind',\n\t\tvalue: function globalBind(events, callback) {\n\t\t\tvar t = this,\n\t\t\t doc = t.node ? t.node.ownerDocument : _document2.default;\n\n\t\t\tevents = (0, _general.splitEvents)(events, t.id);\n\t\t\tif (events.d) {\n\t\t\t\tvar eventList = events.d.split(' ');\n\t\t\t\tfor (var i = 0, total = eventList.length; i < total; i++) {\n\t\t\t\t\teventList[i].split('.').reduce(function (part, e) {\n\t\t\t\t\t\tdoc.addEventListener(e, callback, false);\n\t\t\t\t\t\treturn e;\n\t\t\t\t\t}, '');\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (events.w) {\n\t\t\t\tvar _eventList = events.w.split(' ');\n\t\t\t\tfor (var _i2 = 0, _total2 = _eventList.length; _i2 < _total2; _i2++) {\n\t\t\t\t\t_eventList[_i2].split('.').reduce(function (part, e) {\n\t\t\t\t\t\t_window2.default.addEventListener(e, callback, false);\n\t\t\t\t\t\treturn e;\n\t\t\t\t\t}, '');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'globalUnbind',\n\t\tvalue: function globalUnbind(events, callback) {\n\t\t\tvar t = this,\n\t\t\t doc = t.node ? t.node.ownerDocument : _document2.default;\n\n\t\t\tevents = (0, _general.splitEvents)(events, t.id);\n\t\t\tif (events.d) {\n\t\t\t\tvar eventList = events.d.split(' ');\n\t\t\t\tfor (var i = 0, total = eventList.length; i < total; i++) {\n\t\t\t\t\teventList[i].split('.').reduce(function (part, e) {\n\t\t\t\t\t\tdoc.removeEventListener(e, callback, false);\n\t\t\t\t\t\treturn e;\n\t\t\t\t\t}, '');\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (events.w) {\n\t\t\t\tvar _eventList2 = events.w.split(' ');\n\t\t\t\tfor (var _i3 = 0, _total3 = _eventList2.length; _i3 < _total3; _i3++) {\n\t\t\t\t\t_eventList2[_i3].split('.').reduce(function (part, e) {\n\t\t\t\t\t\t_window2.default.removeEventListener(e, callback, false);\n\t\t\t\t\t\treturn e;\n\t\t\t\t\t}, '');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'buildfeatures',\n\t\tvalue: function buildfeatures(player, controls, layers, media) {\n\t\t\tvar t = this;\n\n\t\t\tfor (var i = 0, total = t.options.features.length; i < total; i++) {\n\t\t\t\tvar feature = t.options.features[i];\n\t\t\t\tif (t['build' + feature]) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tt['build' + feature](player, controls, layers, media);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.error('error building ' + feature, e);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'buildposter',\n\t\tvalue: function buildposter(player, controls, layers, media) {\n\t\t\tvar t = this,\n\t\t\t poster = _document2.default.createElement('div');\n\n\t\t\tposter.className = t.options.classPrefix + 'poster ' + t.options.classPrefix + 'layer';\n\t\t\tlayers.appendChild(poster);\n\n\t\t\tvar posterUrl = media.originalNode.getAttribute('poster');\n\n\t\t\tif (player.options.poster !== '') {\n\t\t\t\tif (posterUrl && _constants.IS_IOS) {\n\t\t\t\t\tmedia.originalNode.removeAttribute('poster');\n\t\t\t\t}\n\t\t\t\tposterUrl = player.options.poster;\n\t\t\t}\n\n\t\t\tif (posterUrl) {\n\t\t\t\tt.setPoster(posterUrl);\n\t\t\t} else if (t.media.renderer !== null && typeof t.media.renderer.getPosterUrl === 'function') {\n\t\t\t\tt.setPoster(t.media.renderer.getPosterUrl());\n\t\t\t} else {\n\t\t\t\tposter.style.display = 'none';\n\t\t\t}\n\n\t\t\tmedia.addEventListener('play', function () {\n\t\t\t\tposter.style.display = 'none';\n\t\t\t});\n\n\t\t\tmedia.addEventListener('playing', function () {\n\t\t\t\tposter.style.display = 'none';\n\t\t\t});\n\n\t\t\tif (player.options.showPosterWhenEnded && player.options.autoRewind) {\n\t\t\t\tmedia.addEventListener('ended', function () {\n\t\t\t\t\tposter.style.display = '';\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tmedia.addEventListener('error', function () {\n\t\t\t\tposter.style.display = 'none';\n\t\t\t});\n\n\t\t\tif (player.options.showPosterWhenPaused) {\n\t\t\t\tmedia.addEventListener('pause', function () {\n\t\t\t\t\tif (!player.ended) {\n\t\t\t\t\t\tposter.style.display = '';\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'buildoverlays',\n\t\tvalue: function buildoverlays(player, controls, layers, media) {\n\n\t\t\tif (!player.isVideo) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar t = this,\n\t\t\t loading = _document2.default.createElement('div'),\n\t\t\t error = _document2.default.createElement('div'),\n\t\t\t bigPlay = _document2.default.createElement('div');\n\n\t\t\tloading.style.display = 'none';\n\t\t\tloading.className = t.options.classPrefix + 'overlay ' + t.options.classPrefix + 'layer';\n\t\t\tloading.innerHTML = '
        ' + '
        ' + '
        ';\n\t\t\tlayers.appendChild(loading);\n\n\t\t\terror.style.display = 'none';\n\t\t\terror.className = t.options.classPrefix + 'overlay ' + t.options.classPrefix + 'layer';\n\t\t\terror.innerHTML = '
        ';\n\t\t\tlayers.appendChild(error);\n\n\t\t\tbigPlay.className = t.options.classPrefix + 'overlay ' + t.options.classPrefix + 'layer ' + t.options.classPrefix + 'overlay-play';\n\t\t\tbigPlay.innerHTML = '
        ');\n\t\t\tbigPlay.addEventListener('click', function () {\n\t\t\t\tif (t.options.clickToPlayPause) {\n\n\t\t\t\t\tvar button = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'overlay-button'),\n\t\t\t\t\t pressed = button.getAttribute('aria-pressed');\n\n\t\t\t\t\tif (t.paused) {\n\t\t\t\t\t\tt.play();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tt.pause();\n\t\t\t\t\t}\n\n\t\t\t\t\tbutton.setAttribute('aria-pressed', !!pressed);\n\t\t\t\t\tt.getElement(t.container).focus();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tbigPlay.addEventListener('keydown', function (e) {\n\t\t\t\tvar keyPressed = e.keyCode || e.which || 0;\n\n\t\t\t\tif (keyPressed === 13 || _constants.IS_FIREFOX && keyPressed === 32) {\n\t\t\t\t\tvar event = (0, _general.createEvent)('click', bigPlay);\n\t\t\t\t\tbigPlay.dispatchEvent(event);\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tlayers.appendChild(bigPlay);\n\n\t\t\tif (t.media.rendererName !== null && (/(youtube|facebook)/i.test(t.media.rendererName) && !(t.media.originalNode.getAttribute('poster') || player.options.poster || typeof t.media.renderer.getPosterUrl === 'function' && t.media.renderer.getPosterUrl()) || _constants.IS_STOCK_ANDROID || t.media.originalNode.getAttribute('autoplay'))) {\n\t\t\t\tbigPlay.style.display = 'none';\n\t\t\t}\n\n\t\t\tvar hasError = false;\n\n\t\t\tmedia.addEventListener('play', function () {\n\t\t\t\tbigPlay.style.display = 'none';\n\t\t\t\tloading.style.display = 'none';\n\t\t\t\terror.style.display = 'none';\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('playing', function () {\n\t\t\t\tbigPlay.style.display = 'none';\n\t\t\t\tloading.style.display = 'none';\n\t\t\t\terror.style.display = 'none';\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('seeking', function () {\n\t\t\t\tbigPlay.style.display = 'none';\n\t\t\t\tloading.style.display = '';\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('seeked', function () {\n\t\t\t\tbigPlay.style.display = t.paused && !_constants.IS_STOCK_ANDROID ? '' : 'none';\n\t\t\t\tloading.style.display = 'none';\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('pause', function () {\n\t\t\t\tloading.style.display = 'none';\n\t\t\t\tif (!_constants.IS_STOCK_ANDROID && !hasError) {\n\t\t\t\t\tbigPlay.style.display = '';\n\t\t\t\t}\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('waiting', function () {\n\t\t\t\tloading.style.display = '';\n\t\t\t\thasError = false;\n\t\t\t});\n\n\t\t\tmedia.addEventListener('loadeddata', function () {\n\t\t\t\tloading.style.display = '';\n\n\t\t\t\tif (_constants.IS_ANDROID) {\n\t\t\t\t\tmedia.canplayTimeout = setTimeout(function () {\n\t\t\t\t\t\tif (_document2.default.createEvent) {\n\t\t\t\t\t\t\tvar evt = _document2.default.createEvent('HTMLEvents');\n\t\t\t\t\t\t\tevt.initEvent('canplay', true, true);\n\t\t\t\t\t\t\treturn media.dispatchEvent(evt);\n\t\t\t\t\t\t}\n\t\t\t\t\t}, 300);\n\t\t\t\t}\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t\tmedia.addEventListener('canplay', function () {\n\t\t\t\tloading.style.display = 'none';\n\n\t\t\t\tclearTimeout(media.canplayTimeout);\n\t\t\t\thasError = false;\n\t\t\t});\n\n\t\t\tmedia.addEventListener('error', function (e) {\n\t\t\t\tt._handleError(e, t.media, t.node);\n\t\t\t\tloading.style.display = 'none';\n\t\t\t\tbigPlay.style.display = 'none';\n\t\t\t\thasError = true;\n\t\t\t});\n\n\t\t\tmedia.addEventListener('loadedmetadata', function () {\n\t\t\t\tif (!t.controlsEnabled) {\n\t\t\t\t\tt.enableControls();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tmedia.addEventListener('keydown', function (e) {\n\t\t\t\tt.onkeydown(player, media, e);\n\t\t\t\thasError = false;\n\t\t\t});\n\t\t}\n\t}, {\n\t\tkey: 'buildkeyboard',\n\t\tvalue: function buildkeyboard(player, controls, layers, media) {\n\n\t\t\tvar t = this;\n\n\t\t\tt.getElement(t.container).addEventListener('keydown', function () {\n\t\t\t\tt.keyboardAction = true;\n\t\t\t});\n\n\t\t\tt.globalKeydownCallback = function (event) {\n\t\t\t\tif (!_document2.default.activeElement) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tvar container = _document2.default.activeElement.closest('.' + t.options.classPrefix + 'container'),\n\t\t\t\t target = t.media.closest('.' + t.options.classPrefix + 'container');\n\t\t\t\tt.hasFocus = !!(container && target && container.id === target.id);\n\t\t\t\treturn t.onkeydown(player, media, event);\n\t\t\t};\n\n\t\t\tt.globalClickCallback = function (event) {\n\t\t\t\tt.hasFocus = !!event.target.closest('.' + t.options.classPrefix + 'container');\n\t\t\t};\n\n\t\t\tt.globalBind('keydown', t.globalKeydownCallback);\n\n\t\t\tt.globalBind('click', t.globalClickCallback);\n\t\t}\n\t}, {\n\t\tkey: 'onkeydown',\n\t\tvalue: function onkeydown(player, media, e) {\n\n\t\t\tif (player.hasFocus && player.options.enableKeyboard) {\n\t\t\t\tfor (var i = 0, total = player.options.keyActions.length; i < total; i++) {\n\t\t\t\t\tvar keyAction = player.options.keyActions[i];\n\n\t\t\t\t\tfor (var j = 0, jl = keyAction.keys.length; j < jl; j++) {\n\t\t\t\t\t\tif (e.keyCode === keyAction.keys[j]) {\n\t\t\t\t\t\t\tkeyAction.action(player, media, e.keyCode, e);\n\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn true;\n\t\t}\n\t}, {\n\t\tkey: 'play',\n\t\tvalue: function play() {\n\t\t\treturn this.proxy.play();\n\t\t}\n\t}, {\n\t\tkey: 'pause',\n\t\tvalue: function pause() {\n\t\t\treturn this.proxy.pause();\n\t\t}\n\t}, {\n\t\tkey: 'load',\n\t\tvalue: function load() {\n\t\t\treturn this.proxy.load();\n\t\t}\n\t}, {\n\t\tkey: 'setCurrentTime',\n\t\tvalue: function setCurrentTime(time) {\n\t\t\tthis.proxy.setCurrentTime(time);\n\t\t}\n\t}, {\n\t\tkey: 'getCurrentTime',\n\t\tvalue: function getCurrentTime() {\n\t\t\treturn this.proxy.currentTime;\n\t\t}\n\t}, {\n\t\tkey: 'getDuration',\n\t\tvalue: function getDuration() {\n\t\t\treturn this.proxy.duration;\n\t\t}\n\t}, {\n\t\tkey: 'setVolume',\n\t\tvalue: function setVolume(volume) {\n\t\t\tthis.proxy.volume = volume;\n\t\t}\n\t}, {\n\t\tkey: 'getVolume',\n\t\tvalue: function getVolume() {\n\t\t\treturn this.proxy.getVolume();\n\t\t}\n\t}, {\n\t\tkey: 'setMuted',\n\t\tvalue: function setMuted(value) {\n\t\t\tthis.proxy.setMuted(value);\n\t\t}\n\t}, {\n\t\tkey: 'setSrc',\n\t\tvalue: function setSrc(src) {\n\t\t\tif (!this.controlsEnabled) {\n\t\t\t\tthis.enableControls();\n\t\t\t}\n\t\t\tthis.proxy.setSrc(src);\n\t\t}\n\t}, {\n\t\tkey: 'getSrc',\n\t\tvalue: function getSrc() {\n\t\t\treturn this.proxy.getSrc();\n\t\t}\n\t}, {\n\t\tkey: 'canPlayType',\n\t\tvalue: function canPlayType(type) {\n\t\t\treturn this.proxy.canPlayType(type);\n\t\t}\n\t}, {\n\t\tkey: 'remove',\n\t\tvalue: function remove() {\n\t\t\tvar t = this,\n\t\t\t rendererName = t.media.rendererName,\n\t\t\t src = t.media.originalNode.src;\n\n\t\t\tfor (var featureIndex in t.options.features) {\n\t\t\t\tvar feature = t.options.features[featureIndex];\n\t\t\t\tif (t['clean' + feature]) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tt['clean' + feature](t, t.getElement(t.layers), t.getElement(t.controls), t.media);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.error('error cleaning ' + feature, e);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tvar nativeWidth = t.node.getAttribute('width'),\n\t\t\t nativeHeight = t.node.getAttribute('height');\n\n\t\t\tif (nativeWidth) {\n\t\t\t\tif (nativeWidth.indexOf('%') === -1) {\n\t\t\t\t\tnativeWidth = nativeWidth + 'px';\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tnativeWidth = 'auto';\n\t\t\t}\n\n\t\t\tif (nativeHeight) {\n\t\t\t\tif (nativeHeight.indexOf('%') === -1) {\n\t\t\t\t\tnativeHeight = nativeHeight + 'px';\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tnativeHeight = 'auto';\n\t\t\t}\n\n\t\t\tt.node.style.width = nativeWidth;\n\t\t\tt.node.style.height = nativeHeight;\n\n\t\t\tt.setPlayerSize(0, 0);\n\n\t\t\tif (!t.isDynamic) {\n\t\t\t\t(function () {\n\t\t\t\t\tt.node.setAttribute('controls', true);\n\t\t\t\t\tt.node.setAttribute('id', t.node.getAttribute('id').replace('_' + rendererName, '').replace('_from_mejs', ''));\n\t\t\t\t\tvar poster = t.getElement(t.container).querySelector('.' + t.options.classPrefix + 'poster>img');\n\t\t\t\t\tif (poster) {\n\t\t\t\t\t\tt.node.setAttribute('poster', poster.src);\n\t\t\t\t\t}\n\n\t\t\t\t\tdelete t.node.autoplay;\n\n\t\t\t\t\tt.node.setAttribute('src', '');\n\t\t\t\t\tif (t.media.canPlayType((0, _media.getTypeFromFile)(src)) !== '') {\n\t\t\t\t\t\tt.node.setAttribute('src', src);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (rendererName && rendererName.indexOf('iframe') > -1) {\n\t\t\t\t\t\tvar layer = _document2.default.getElementById(t.media.id + '-iframe-overlay');\n\t\t\t\t\t\tlayer.remove();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar node = t.node.cloneNode();\n\t\t\t\t\tnode.style.display = '';\n\t\t\t\t\tt.getElement(t.container).parentNode.insertBefore(node, t.getElement(t.container));\n\t\t\t\t\tt.node.remove();\n\n\t\t\t\t\tif (t.mediaFiles) {\n\t\t\t\t\t\tfor (var i = 0, total = t.mediaFiles.length; i < total; i++) {\n\t\t\t\t\t\t\tvar source = _document2.default.createElement('source');\n\t\t\t\t\t\t\tsource.setAttribute('src', t.mediaFiles[i].src);\n\t\t\t\t\t\t\tsource.setAttribute('type', t.mediaFiles[i].type);\n\t\t\t\t\t\t\tnode.appendChild(source);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (t.trackFiles) {\n\t\t\t\t\t\tvar _loop3 = function _loop3(_i4, _total4) {\n\t\t\t\t\t\t\tvar track = t.trackFiles[_i4];\n\t\t\t\t\t\t\tvar newTrack = _document2.default.createElement('track');\n\t\t\t\t\t\t\tnewTrack.kind = track.kind;\n\t\t\t\t\t\t\tnewTrack.label = track.label;\n\t\t\t\t\t\t\tnewTrack.srclang = track.srclang;\n\t\t\t\t\t\t\tnewTrack.src = track.src;\n\n\t\t\t\t\t\t\tnode.appendChild(newTrack);\n\t\t\t\t\t\t\tnewTrack.addEventListener('load', function () {\n\t\t\t\t\t\t\t\tthis.mode = 'showing';\n\t\t\t\t\t\t\t\tnode.textTracks[_i4].mode = 'showing';\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tfor (var _i4 = 0, _total4 = t.trackFiles.length; _i4 < _total4; _i4++) {\n\t\t\t\t\t\t\t_loop3(_i4, _total4);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tdelete t.node;\n\t\t\t\t\tdelete t.mediaFiles;\n\t\t\t\t\tdelete t.trackFiles;\n\t\t\t\t})();\n\t\t\t} else {\n\t\t\t\tt.getElement(t.container).parentNode.insertBefore(t.node, t.getElement(t.container));\n\t\t\t}\n\n\t\t\tif (t.media.renderer && typeof t.media.renderer.destroy === 'function') {\n\t\t\t\tt.media.renderer.destroy();\n\t\t\t}\n\n\t\t\tdelete _mejs2.default.players[t.id];\n\n\t\t\tif (_typeof(t.getElement(t.container)) === 'object') {\n\t\t\t\tvar offscreen = t.getElement(t.container).parentNode.querySelector('.' + t.options.classPrefix + 'offscreen');\n\t\t\t\tif (offscreen) {\n\t\t\t\t\toffscreen.remove();\n\t\t\t\t}\n\t\t\t\tt.getElement(t.container).remove();\n\t\t\t}\n\t\t\tt.globalUnbind('resize', t.globalResizeCallback);\n\t\t\tt.globalUnbind('keydown', t.globalKeydownCallback);\n\t\t\tt.globalUnbind('click', t.globalClickCallback);\n\n\t\t\tdelete t.media.player;\n\t\t}\n\t}, {\n\t\tkey: 'paused',\n\t\tget: function get() {\n\t\t\treturn this.proxy.paused;\n\t\t}\n\t}, {\n\t\tkey: 'muted',\n\t\tget: function get() {\n\t\t\treturn this.proxy.muted;\n\t\t},\n\t\tset: function set(muted) {\n\t\t\tthis.setMuted(muted);\n\t\t}\n\t}, {\n\t\tkey: 'ended',\n\t\tget: function get() {\n\t\t\treturn this.proxy.ended;\n\t\t}\n\t}, {\n\t\tkey: 'readyState',\n\t\tget: function get() {\n\t\t\treturn this.proxy.readyState;\n\t\t}\n\t}, {\n\t\tkey: 'currentTime',\n\t\tset: function set(time) {\n\t\t\tthis.setCurrentTime(time);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getCurrentTime();\n\t\t}\n\t}, {\n\t\tkey: 'duration',\n\t\tget: function get() {\n\t\t\treturn this.getDuration();\n\t\t}\n\t}, {\n\t\tkey: 'volume',\n\t\tset: function set(volume) {\n\t\t\tthis.setVolume(volume);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getVolume();\n\t\t}\n\t}, {\n\t\tkey: 'src',\n\t\tset: function set(src) {\n\t\t\tthis.setSrc(src);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getSrc();\n\t\t}\n\t}]);\n\n\treturn MediaElementPlayer;\n}();\n\n_window2.default.MediaElementPlayer = MediaElementPlayer;\n_mejs2.default.MediaElementPlayer = MediaElementPlayer;\n\nexports.default = MediaElementPlayer;\n\n},{\"17\":17,\"2\":2,\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"30\":30,\"5\":5,\"6\":6,\"7\":7}],17:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar DefaultPlayer = function () {\n\tfunction DefaultPlayer(player) {\n\t\t_classCallCheck(this, DefaultPlayer);\n\n\t\tthis.media = player.media;\n\t\tthis.isVideo = player.isVideo;\n\t\tthis.classPrefix = player.options.classPrefix;\n\t\tif (player.options.duration) {\n\t\t\tthis._duration = player.options.duration;\n\t\t}\n\t\tthis.createIframeLayer = function () {\n\t\t\treturn player.createIframeLayer();\n\t\t};\n\t\tthis.setPoster = function (url) {\n\t\t\treturn player.setPoster(url);\n\t\t};\n\t\treturn this;\n\t}\n\n\t_createClass(DefaultPlayer, [{\n\t\tkey: 'play',\n\t\tvalue: function play() {\n\t\t\treturn this.media.play();\n\t\t}\n\t}, {\n\t\tkey: 'pause',\n\t\tvalue: function pause() {\n\t\t\treturn this.media.pause();\n\t\t}\n\t}, {\n\t\tkey: 'load',\n\t\tvalue: function load() {\n\t\t\tvar t = this;\n\n\t\t\tif (!t.isLoaded) {\n\t\t\t\tt.media.load();\n\t\t\t}\n\n\t\t\tt.isLoaded = true;\n\t\t}\n\t}, {\n\t\tkey: 'setCurrentTime',\n\t\tvalue: function setCurrentTime(time) {\n\t\t\tvar duration = this.getOriginalDuration();\n\t\t\tif (time > duration) return false;\n\t\t\tthis.media.setCurrentTime(time);\n\t\t\treturn true;\n\t\t}\n\t}, {\n\t\tkey: 'getCurrentTime',\n\t\tvalue: function getCurrentTime() {\n\t\t\treturn this.media.currentTime;\n\t\t}\n\t}, {\n\t\tkey: 'getOriginalDuration',\n\t\tvalue: function getOriginalDuration() {\n\t\t\tvar duration = this.media.getDuration();\n\t\t\tif (duration === Infinity && this.media.seekable && this.media.seekable.length) {\n\t\t\t\tduration = this.media.seekable.end(0);\n\t\t\t}\n\t\t\treturn duration;\n\t\t}\n\t}, {\n\t\tkey: 'getDuration',\n\t\tvalue: function getDuration() {\n\t\t\tvar duration = this.getOriginalDuration();\n\t\t\tif (this._duration) {\n\t\t\t\tvar d = this._duration();\n\t\t\t\tif (d) duration = d;\n\t\t\t}\n\t\t\treturn duration;\n\t\t}\n\t}, {\n\t\tkey: 'setVolume',\n\t\tvalue: function setVolume(volume) {\n\t\t\tthis.media.setVolume(volume);\n\t\t}\n\t}, {\n\t\tkey: 'getVolume',\n\t\tvalue: function getVolume() {\n\t\t\treturn this.media.getVolume();\n\t\t}\n\t}, {\n\t\tkey: 'setMuted',\n\t\tvalue: function setMuted(value) {\n\t\t\tthis.media.setMuted(value);\n\t\t}\n\t}, {\n\t\tkey: 'setSrc',\n\t\tvalue: function setSrc(src) {\n\t\t\tvar t = this,\n\t\t\t layer = document.getElementById(t.media.id + '-iframe-overlay');\n\n\t\t\tif (layer) {\n\t\t\t\tlayer.remove();\n\t\t\t}\n\n\t\t\tt.media.setSrc(src);\n\t\t\tt.createIframeLayer();\n\t\t\tif (t.media.renderer !== null && typeof t.media.renderer.getPosterUrl === 'function') {\n\t\t\t\tt.setPoster(t.media.renderer.getPosterUrl());\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'getSrc',\n\t\tvalue: function getSrc() {\n\t\t\treturn this.media.getSrc();\n\t\t}\n\t}, {\n\t\tkey: 'canPlayType',\n\t\tvalue: function canPlayType(type) {\n\t\t\treturn this.media.canPlayType(type);\n\t\t}\n\t}, {\n\t\tkey: 'paused',\n\t\tget: function get() {\n\t\t\treturn this.media.paused;\n\t\t}\n\t}, {\n\t\tkey: 'muted',\n\t\tset: function set(muted) {\n\t\t\tthis.setMuted(muted);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.media.muted;\n\t\t}\n\t}, {\n\t\tkey: 'ended',\n\t\tget: function get() {\n\t\t\treturn this.media.ended;\n\t\t}\n\t}, {\n\t\tkey: 'readyState',\n\t\tget: function get() {\n\t\t\treturn this.media.readyState;\n\t\t}\n\t}, {\n\t\tkey: 'currentTime',\n\t\tset: function set(time) {\n\t\t\tthis.setCurrentTime(time);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getCurrentTime();\n\t\t}\n\t}, {\n\t\tkey: 'duration',\n\t\tget: function get() {\n\t\t\treturn this.getDuration();\n\t\t}\n\t}, {\n\t\tkey: 'remainingTime',\n\t\tget: function get() {\n\t\t\treturn this.getDuration() - this.currentTime();\n\t\t}\n\t}, {\n\t\tkey: 'volume',\n\t\tset: function set(volume) {\n\t\t\tthis.setVolume(volume);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getVolume();\n\t\t}\n\t}, {\n\t\tkey: 'src',\n\t\tset: function set(src) {\n\t\t\tthis.setSrc(src);\n\t\t},\n\t\tget: function get() {\n\t\t\treturn this.getSrc();\n\t\t}\n\t}]);\n\n\treturn DefaultPlayer;\n}();\n\nexports.default = DefaultPlayer;\n\n\n_window2.default.DefaultPlayer = DefaultPlayer;\n\n},{\"3\":3}],18:[function(_dereq_,module,exports){\n'use strict';\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _player = _dereq_(16);\n\nvar _player2 = _interopRequireDefault(_player);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nif (typeof jQuery !== 'undefined') {\n\t_mejs2.default.$ = jQuery;\n} else if (typeof Zepto !== 'undefined') {\n\t_mejs2.default.$ = Zepto;\n} else if (typeof ender !== 'undefined') {\n\t_mejs2.default.$ = ender;\n}\n\n(function ($) {\n\tif (typeof $ !== 'undefined') {\n\t\t$.fn.mediaelementplayer = function (options) {\n\t\t\tif (options === false) {\n\t\t\t\tthis.each(function () {\n\t\t\t\t\tvar player = $(this).data('mediaelementplayer');\n\t\t\t\t\tif (player) {\n\t\t\t\t\t\tplayer.remove();\n\t\t\t\t\t}\n\t\t\t\t\t$(this).removeData('mediaelementplayer');\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.each(function () {\n\t\t\t\t\t$(this).data('mediaelementplayer', new _player2.default(this, options));\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn this;\n\t\t};\n\n\t\t$(document).ready(function () {\n\t\t\t$('.' + _mejs2.default.MepDefaults.classPrefix + 'player').mediaelementplayer();\n\t\t});\n\t}\n})(_mejs2.default.$);\n\n},{\"16\":16,\"3\":3,\"7\":7}],19:[function(_dereq_,module,exports){\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _media = _dereq_(28);\n\nvar _constants = _dereq_(25);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar NativeDash = {\n\n\tpromise: null,\n\n\tload: function load(settings) {\n\t\tif (typeof dashjs !== 'undefined') {\n\t\t\tNativeDash.promise = new Promise(function (resolve) {\n\t\t\t\tresolve();\n\t\t\t}).then(function () {\n\t\t\t\tNativeDash._createPlayer(settings);\n\t\t\t});\n\t\t} else {\n\t\t\tsettings.options.path = typeof settings.options.path === 'string' ? settings.options.path : 'https://cdn.dashjs.org/latest/dash.all.min.js';\n\n\t\t\tNativeDash.promise = NativeDash.promise || (0, _dom.loadScript)(settings.options.path);\n\t\t\tNativeDash.promise.then(function () {\n\t\t\t\tNativeDash._createPlayer(settings);\n\t\t\t});\n\t\t}\n\n\t\treturn NativeDash.promise;\n\t},\n\n\t_createPlayer: function _createPlayer(settings) {\n\t\tvar player = dashjs.MediaPlayer().create();\n\t\t_window2.default['__ready__' + settings.id](player);\n\t\treturn player;\n\t}\n};\n\nvar DashNativeRenderer = {\n\tname: 'native_dash',\n\toptions: {\n\t\tprefix: 'native_dash',\n\t\tdash: {\n\t\t\tpath: 'https://cdn.dashjs.org/latest/dash.all.min.js',\n\t\t\tdebug: false,\n\t\t\tdrm: {},\n\n\t\t\trobustnessLevel: ''\n\t\t}\n\t},\n\n\tcanPlayType: function canPlayType(type) {\n\t\treturn _constants.HAS_MSE && ['application/dash+xml'].indexOf(type.toLowerCase()) > -1;\n\t},\n\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar originalNode = mediaElement.originalNode,\n\t\t id = mediaElement.id + '_' + options.prefix,\n\t\t autoplay = originalNode.autoplay,\n\t\t children = originalNode.children;\n\n\t\tvar node = null,\n\t\t dashPlayer = null;\n\n\t\toriginalNode.removeAttribute('type');\n\t\tfor (var i = 0, total = children.length; i < total; i++) {\n\t\t\tchildren[i].removeAttribute('type');\n\t\t}\n\n\t\tnode = originalNode.cloneNode(true);\n\t\toptions = Object.assign(options, mediaElement.options);\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t events = _mejs2.default.html5media.events.concat(['click', 'mouseover', 'mouseout']).filter(function (e) {\n\t\t\treturn e !== 'error';\n\t\t}),\n\t\t attachNativeEvents = function attachNativeEvents(e) {\n\t\t\tvar event = (0, _general.createEvent)(e.type, mediaElement);\n\t\t\tmediaElement.dispatchEvent(event);\n\t\t},\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tnode['get' + capName] = function () {\n\t\t\t\treturn dashPlayer !== null ? node[propName] : null;\n\t\t\t};\n\n\t\t\tnode['set' + capName] = function (value) {\n\t\t\t\tif (_mejs2.default.html5media.readOnlyProperties.indexOf(propName) === -1) {\n\t\t\t\t\tif (propName === 'src') {\n\t\t\t\t\t\tvar source = (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.src ? value.src : value;\n\t\t\t\t\t\tnode[propName] = source;\n\t\t\t\t\t\tif (dashPlayer !== null) {\n\t\t\t\t\t\t\tdashPlayer.reset();\n\t\t\t\t\t\t\tfor (var _i = 0, _total = events.length; _i < _total; _i++) {\n\t\t\t\t\t\t\t\tnode.removeEventListener(events[_i], attachNativeEvents);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdashPlayer = NativeDash._createPlayer({\n\t\t\t\t\t\t\t\toptions: options.dash,\n\t\t\t\t\t\t\t\tid: id\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\tif (value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && _typeof(value.drm) === 'object') {\n\t\t\t\t\t\t\t\tdashPlayer.setProtectionData(value.drm);\n\t\t\t\t\t\t\t\tif ((0, _general.isString)(options.dash.robustnessLevel) && options.dash.robustnessLevel) {\n\t\t\t\t\t\t\t\t\tdashPlayer.getProtectionController().setRobustnessLevel(options.dash.robustnessLevel);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdashPlayer.attachSource(source);\n\t\t\t\t\t\t\tif (autoplay) {\n\t\t\t\t\t\t\t\tdashPlayer.play();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnode[propName] = value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var _i2 = 0, _total2 = props.length; _i2 < _total2; _i2++) {\n\t\t\tassignGettersSetters(props[_i2]);\n\t\t}\n\n\t\t_window2.default['__ready__' + id] = function (_dashPlayer) {\n\t\t\tmediaElement.dashPlayer = dashPlayer = _dashPlayer;\n\n\t\t\tvar dashEvents = dashjs.MediaPlayer.events,\n\t\t\t assignEvents = function assignEvents(eventName) {\n\t\t\t\tif (eventName === 'loadedmetadata') {\n\t\t\t\t\tdashPlayer.initialize();\n\t\t\t\t\tdashPlayer.attachView(node);\n\t\t\t\t\tdashPlayer.setAutoPlay(false);\n\n\t\t\t\t\tif (_typeof(options.dash.drm) === 'object' && !_mejs2.default.Utils.isObjectEmpty(options.dash.drm)) {\n\t\t\t\t\t\tdashPlayer.setProtectionData(options.dash.drm);\n\t\t\t\t\t\tif ((0, _general.isString)(options.dash.robustnessLevel) && options.dash.robustnessLevel) {\n\t\t\t\t\t\t\tdashPlayer.getProtectionController().setRobustnessLevel(options.dash.robustnessLevel);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tdashPlayer.attachSource(node.getSrc());\n\t\t\t\t}\n\n\t\t\t\tnode.addEventListener(eventName, attachNativeEvents);\n\t\t\t};\n\n\t\t\tfor (var _i3 = 0, _total3 = events.length; _i3 < _total3; _i3++) {\n\t\t\t\tassignEvents(events[_i3]);\n\t\t\t}\n\n\t\t\tvar assignMdashEvents = function assignMdashEvents(e) {\n\t\t\t\tif (e.type.toLowerCase() === 'error') {\n\t\t\t\t\tmediaElement.generateError(e.message, node.src);\n\t\t\t\t\tconsole.error(e);\n\t\t\t\t} else {\n\t\t\t\t\tvar _event = (0, _general.createEvent)(e.type, mediaElement);\n\t\t\t\t\t_event.data = e;\n\t\t\t\t\tmediaElement.dispatchEvent(_event);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tfor (var eventType in dashEvents) {\n\t\t\t\tif (dashEvents.hasOwnProperty(eventType)) {\n\t\t\t\t\tdashPlayer.on(dashEvents[eventType], function (e) {\n\t\t\t\t\t\treturn assignMdashEvents(e);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tif (mediaFiles && mediaFiles.length > 0) {\n\t\t\tfor (var _i4 = 0, _total4 = mediaFiles.length; _i4 < _total4; _i4++) {\n\t\t\t\tif (_renderer.renderer.renderers[options.prefix].canPlayType(mediaFiles[_i4].type)) {\n\t\t\t\t\tnode.setAttribute('src', mediaFiles[_i4].src);\n\t\t\t\t\tif (typeof mediaFiles[_i4].drm !== 'undefined') {\n\t\t\t\t\t\toptions.dash.drm = mediaFiles[_i4].drm;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tnode.setAttribute('id', id);\n\n\t\toriginalNode.parentNode.insertBefore(node, originalNode);\n\t\toriginalNode.autoplay = false;\n\t\toriginalNode.style.display = 'none';\n\n\t\tnode.setSize = function (width, height) {\n\t\t\tnode.style.width = width + 'px';\n\t\t\tnode.style.height = height + 'px';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.hide = function () {\n\t\t\tnode.pause();\n\t\t\tnode.style.display = 'none';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.show = function () {\n\t\t\tnode.style.display = '';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.destroy = function () {\n\t\t\tif (dashPlayer !== null) {\n\t\t\t\tdashPlayer.reset();\n\t\t\t}\n\t\t};\n\n\t\tvar event = (0, _general.createEvent)('rendererready', node);\n\t\tmediaElement.dispatchEvent(event);\n\n\t\tmediaElement.promises.push(NativeDash.load({\n\t\t\toptions: options.dash,\n\t\t\tid: id\n\t\t}));\n\n\t\treturn node;\n\t}\n};\n\n_media.typeChecks.push(function (url) {\n\treturn ~url.toLowerCase().indexOf('.mpd') ? 'application/dash+xml' : null;\n});\n\n_renderer.renderer.add(DashNativeRenderer);\n\n},{\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"7\":7,\"8\":8}],20:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.PluginDetector = undefined;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _i18n = _dereq_(5);\n\nvar _i18n2 = _interopRequireDefault(_i18n);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _constants = _dereq_(25);\n\nvar _media = _dereq_(28);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar PluginDetector = exports.PluginDetector = {\n\tplugins: [],\n\n\thasPluginVersion: function hasPluginVersion(plugin, v) {\n\t\tvar pv = PluginDetector.plugins[plugin];\n\t\tv[1] = v[1] || 0;\n\t\tv[2] = v[2] || 0;\n\t\treturn pv[0] > v[0] || pv[0] === v[0] && pv[1] > v[1] || pv[0] === v[0] && pv[1] === v[1] && pv[2] >= v[2];\n\t},\n\n\taddPlugin: function addPlugin(p, pluginName, mimeType, activeX, axDetect) {\n\t\tPluginDetector.plugins[p] = PluginDetector.detectPlugin(pluginName, mimeType, activeX, axDetect);\n\t},\n\n\tdetectPlugin: function detectPlugin(pluginName, mimeType, activeX, axDetect) {\n\n\t\tvar version = [0, 0, 0],\n\t\t description = void 0,\n\t\t ax = void 0;\n\n\t\tif (_constants.NAV.plugins !== null && _constants.NAV.plugins !== undefined && _typeof(_constants.NAV.plugins[pluginName]) === 'object') {\n\t\t\tdescription = _constants.NAV.plugins[pluginName].description;\n\t\t\tif (description && !(typeof _constants.NAV.mimeTypes !== 'undefined' && _constants.NAV.mimeTypes[mimeType] && !_constants.NAV.mimeTypes[mimeType].enabledPlugin)) {\n\t\t\t\tversion = description.replace(pluginName, '').replace(/^\\s+/, '').replace(/\\sr/gi, '.').split('.');\n\t\t\t\tfor (var i = 0, total = version.length; i < total; i++) {\n\t\t\t\t\tversion[i] = parseInt(version[i].match(/\\d+/), 10);\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (_window2.default.ActiveXObject !== undefined) {\n\t\t\ttry {\n\t\t\t\tax = new ActiveXObject(activeX);\n\t\t\t\tif (ax) {\n\t\t\t\t\tversion = axDetect(ax);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t\n\t\t\t}\n\t\t}\n\t\treturn version;\n\t}\n};\n\nPluginDetector.addPlugin('flash', 'Shockwave Flash', 'application/x-shockwave-flash', 'ShockwaveFlash.ShockwaveFlash', function (ax) {\n\tvar version = [],\n\t d = ax.GetVariable(\"$version\");\n\n\tif (d) {\n\t\td = d.split(\" \")[1].split(\",\");\n\t\tversion = [parseInt(d[0], 10), parseInt(d[1], 10), parseInt(d[2], 10)];\n\t}\n\treturn version;\n});\n\nvar FlashMediaElementRenderer = {\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar flash = {};\n\t\tvar isActive = false;\n\n\t\tflash.options = options;\n\t\tflash.id = mediaElement.id + '_' + flash.options.prefix;\n\t\tflash.mediaElement = mediaElement;\n\t\tflash.flashState = {};\n\t\tflash.flashApi = null;\n\t\tflash.flashApiStack = [];\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\t\tflash.flashState[propName] = null;\n\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tflash['get' + capName] = function () {\n\t\t\t\tif (flash.flashApi !== null) {\n\t\t\t\t\tif (typeof flash.flashApi['get_' + propName] === 'function') {\n\t\t\t\t\t\tvar value = flash.flashApi['get_' + propName]();\n\n\t\t\t\t\t\tif (propName === 'buffered') {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstart: function start() {\n\t\t\t\t\t\t\t\t\treturn 0;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tend: function end() {\n\t\t\t\t\t\t\t\t\treturn value;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tlength: 1\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn value;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tflash['set' + capName] = function (value) {\n\t\t\t\tif (propName === 'src') {\n\t\t\t\t\tvalue = (0, _media.absolutizeUrl)(value);\n\t\t\t\t}\n\n\t\t\t\tif (flash.flashApi !== null && flash.flashApi['set_' + propName] !== undefined) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tflash.flashApi['set_' + propName](value);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tflash.flashApiStack.push({\n\t\t\t\t\t\ttype: 'set',\n\t\t\t\t\t\tpropName: propName,\n\t\t\t\t\t\tvalue: value\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var i = 0, total = props.length; i < total; i++) {\n\t\t\tassignGettersSetters(props[i]);\n\t\t}\n\n\t\tvar methods = _mejs2.default.html5media.methods,\n\t\t assignMethods = function assignMethods(methodName) {\n\t\t\tflash[methodName] = function () {\n\t\t\t\tif (isActive) {\n\t\t\t\t\tif (flash.flashApi !== null) {\n\t\t\t\t\t\tif (flash.flashApi['fire_' + methodName]) {\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tflash.flashApi['fire_' + methodName]();\n\t\t\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tflash.flashApiStack.push({\n\t\t\t\t\t\t\ttype: 'call',\n\t\t\t\t\t\t\tmethodName: methodName\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\t\tmethods.push('stop');\n\t\tfor (var _i = 0, _total = methods.length; _i < _total; _i++) {\n\t\t\tassignMethods(methods[_i]);\n\t\t}\n\n\t\tvar initEvents = ['rendererready'];\n\n\t\tfor (var _i2 = 0, _total2 = initEvents.length; _i2 < _total2; _i2++) {\n\t\t\tvar event = (0, _general.createEvent)(initEvents[_i2], flash);\n\t\t\tmediaElement.dispatchEvent(event);\n\t\t}\n\n\t\t_window2.default['__ready__' + flash.id] = function () {\n\n\t\t\tflash.flashReady = true;\n\t\t\tflash.flashApi = _document2.default.getElementById('__' + flash.id);\n\n\t\t\tif (flash.flashApiStack.length) {\n\t\t\t\tfor (var _i3 = 0, _total3 = flash.flashApiStack.length; _i3 < _total3; _i3++) {\n\t\t\t\t\tvar stackItem = flash.flashApiStack[_i3];\n\n\t\t\t\t\tif (stackItem.type === 'set') {\n\t\t\t\t\t\tvar propName = stackItem.propName,\n\t\t\t\t\t\t capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\t\t\t\tflash['set' + capName](stackItem.value);\n\t\t\t\t\t} else if (stackItem.type === 'call') {\n\t\t\t\t\t\tflash[stackItem.methodName]();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t_window2.default['__event__' + flash.id] = function (eventName, message) {\n\t\t\tvar event = (0, _general.createEvent)(eventName, flash);\n\t\t\tif (message) {\n\t\t\t\ttry {\n\t\t\t\t\tevent.data = JSON.parse(message);\n\t\t\t\t\tevent.details.data = JSON.parse(message);\n\t\t\t\t} catch (e) {\n\t\t\t\t\tevent.message = message;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tflash.mediaElement.dispatchEvent(event);\n\t\t};\n\n\t\tflash.flashWrapper = _document2.default.createElement('div');\n\n\t\tif (['always', 'sameDomain'].indexOf(flash.options.shimScriptAccess) === -1) {\n\t\t\tflash.options.shimScriptAccess = 'sameDomain';\n\t\t}\n\n\t\tvar autoplay = mediaElement.originalNode.autoplay,\n\t\t flashVars = ['uid=' + flash.id, 'autoplay=' + autoplay, 'allowScriptAccess=' + flash.options.shimScriptAccess, 'preload=' + (mediaElement.originalNode.getAttribute('preload') || '')],\n\t\t isVideo = mediaElement.originalNode !== null && mediaElement.originalNode.tagName.toLowerCase() === 'video',\n\t\t flashHeight = isVideo ? mediaElement.originalNode.height : 1,\n\t\t flashWidth = isVideo ? mediaElement.originalNode.width : 1;\n\n\t\tif (mediaElement.originalNode.getAttribute('src')) {\n\t\t\tflashVars.push('src=' + mediaElement.originalNode.getAttribute('src'));\n\t\t}\n\n\t\tif (flash.options.enablePseudoStreaming === true) {\n\t\t\tflashVars.push('pseudostreamstart=' + flash.options.pseudoStreamingStartQueryParam);\n\t\t\tflashVars.push('pseudostreamtype=' + flash.options.pseudoStreamingType);\n\t\t}\n\n\t\tif (flash.options.streamDelimiter) {\n\t\t\tflashVars.push('streamdelimiter=' + encodeURIComponent(flash.options.streamDelimiter));\n\t\t}\n\n\t\tif (flash.options.proxyType) {\n\t\t\tflashVars.push('proxytype=' + flash.options.proxyType);\n\t\t}\n\n\t\tmediaElement.appendChild(flash.flashWrapper);\n\t\tmediaElement.originalNode.style.display = 'none';\n\n\t\tvar settings = [];\n\n\t\tif (_constants.IS_IE || _constants.IS_EDGE) {\n\t\t\tvar specialIEContainer = _document2.default.createElement('div');\n\t\t\tflash.flashWrapper.appendChild(specialIEContainer);\n\n\t\t\tif (_constants.IS_EDGE) {\n\t\t\t\tsettings = ['type=\"application/x-shockwave-flash\"', 'data=\"' + flash.options.pluginPath + flash.options.filename + '\"', 'id=\"__' + flash.id + '\"', 'width=\"' + flashWidth + '\"', 'height=\"' + flashHeight + '\\'\"'];\n\t\t\t} else {\n\t\t\t\tsettings = ['classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"', 'codebase=\"//download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab\"', 'id=\"__' + flash.id + '\"', 'width=\"' + flashWidth + '\"', 'height=\"' + flashHeight + '\"'];\n\t\t\t}\n\n\t\t\tif (!isVideo) {\n\t\t\t\tsettings.push('style=\"clip: rect(0 0 0 0); position: absolute;\"');\n\t\t\t}\n\n\t\t\tspecialIEContainer.outerHTML = '' + ('') + ('') + '' + '' + '' + ('') + '' + ('
        ' + _i18n2.default.t('mejs.install-flash') + '
        ') + '
        ';\n\t\t} else {\n\n\t\t\tsettings = ['id=\"__' + flash.id + '\"', 'name=\"__' + flash.id + '\"', 'play=\"true\"', 'loop=\"false\"', 'quality=\"high\"', 'bgcolor=\"#000000\"', 'wmode=\"transparent\"', 'allowScriptAccess=\"' + flash.options.shimScriptAccess + '\"', 'allowFullScreen=\"true\"', 'type=\"application/x-shockwave-flash\"', 'pluginspage=\"//www.macromedia.com/go/getflashplayer\"', 'src=\"' + flash.options.pluginPath + flash.options.filename + '\"', 'flashvars=\"' + flashVars.join('&') + '\"'];\n\n\t\t\tif (isVideo) {\n\t\t\t\tsettings.push('width=\"' + flashWidth + '\"');\n\t\t\t\tsettings.push('height=\"' + flashHeight + '\"');\n\t\t\t} else {\n\t\t\t\tsettings.push('style=\"position: fixed; left: -9999em; top: -9999em;\"');\n\t\t\t}\n\n\t\t\tflash.flashWrapper.innerHTML = '';\n\t\t}\n\n\t\tflash.flashNode = flash.flashWrapper.lastChild;\n\n\t\tflash.hide = function () {\n\t\t\tisActive = false;\n\t\t\tif (isVideo) {\n\t\t\t\tflash.flashNode.style.display = 'none';\n\t\t\t}\n\t\t};\n\t\tflash.show = function () {\n\t\t\tisActive = true;\n\t\t\tif (isVideo) {\n\t\t\t\tflash.flashNode.style.display = '';\n\t\t\t}\n\t\t};\n\t\tflash.setSize = function (width, height) {\n\t\t\tflash.flashNode.style.width = width + 'px';\n\t\t\tflash.flashNode.style.height = height + 'px';\n\n\t\t\tif (flash.flashApi !== null && typeof flash.flashApi.fire_setSize === 'function') {\n\t\t\t\tflash.flashApi.fire_setSize(width, height);\n\t\t\t}\n\t\t};\n\n\t\tflash.destroy = function () {\n\t\t\tflash.flashNode.remove();\n\t\t};\n\n\t\tif (mediaFiles && mediaFiles.length > 0) {\n\t\t\tfor (var _i4 = 0, _total4 = mediaFiles.length; _i4 < _total4; _i4++) {\n\t\t\t\tif (_renderer.renderer.renderers[options.prefix].canPlayType(mediaFiles[_i4].type)) {\n\t\t\t\t\tflash.setSrc(mediaFiles[_i4].src);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn flash;\n\t}\n};\n\nvar hasFlash = PluginDetector.hasPluginVersion('flash', [10, 0, 0]);\n\nif (hasFlash) {\n\t_media.typeChecks.push(function (url) {\n\t\turl = url.toLowerCase();\n\n\t\tif (url.startsWith('rtmp')) {\n\t\t\tif (~url.indexOf('.mp3')) {\n\t\t\t\treturn 'audio/rtmp';\n\t\t\t} else {\n\t\t\t\treturn 'video/rtmp';\n\t\t\t}\n\t\t} else if (/\\.og(a|g)/i.test(url)) {\n\t\t\treturn 'audio/ogg';\n\t\t} else if (~url.indexOf('.m3u8')) {\n\t\t\treturn 'application/x-mpegURL';\n\t\t} else if (~url.indexOf('.mpd')) {\n\t\t\treturn 'application/dash+xml';\n\t\t} else if (~url.indexOf('.flv')) {\n\t\t\treturn 'video/flv';\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t});\n\n\tvar FlashMediaElementVideoRenderer = {\n\t\tname: 'flash_video',\n\t\toptions: {\n\t\t\tprefix: 'flash_video',\n\t\t\tfilename: 'mediaelement-flash-video.swf',\n\t\t\tenablePseudoStreaming: false,\n\n\t\t\tpseudoStreamingStartQueryParam: 'start',\n\n\t\t\tpseudoStreamingType: 'byte',\n\n\t\t\tproxyType: '',\n\n\t\t\tstreamDelimiter: ''\n\t\t},\n\n\t\tcanPlayType: function canPlayType(type) {\n\t\t\treturn ~['video/mp4', 'video/rtmp', 'audio/rtmp', 'rtmp/mp4', 'audio/mp4', 'video/flv', 'video/x-flv'].indexOf(type.toLowerCase());\n\t\t},\n\n\t\tcreate: FlashMediaElementRenderer.create\n\n\t};\n\t_renderer.renderer.add(FlashMediaElementVideoRenderer);\n\n\tvar FlashMediaElementHlsVideoRenderer = {\n\t\tname: 'flash_hls',\n\t\toptions: {\n\t\t\tprefix: 'flash_hls',\n\t\t\tfilename: 'mediaelement-flash-video-hls.swf'\n\t\t},\n\n\t\tcanPlayType: function canPlayType(type) {\n\t\t\treturn ~['application/x-mpegurl', 'application/vnd.apple.mpegurl', 'audio/mpegurl', 'audio/hls', 'video/hls'].indexOf(type.toLowerCase());\n\t\t},\n\n\t\tcreate: FlashMediaElementRenderer.create\n\t};\n\t_renderer.renderer.add(FlashMediaElementHlsVideoRenderer);\n\n\tvar FlashMediaElementMdashVideoRenderer = {\n\t\tname: 'flash_dash',\n\t\toptions: {\n\t\t\tprefix: 'flash_dash',\n\t\t\tfilename: 'mediaelement-flash-video-mdash.swf'\n\t\t},\n\n\t\tcanPlayType: function canPlayType(type) {\n\t\t\treturn ~['application/dash+xml'].indexOf(type.toLowerCase());\n\t\t},\n\n\t\tcreate: FlashMediaElementRenderer.create\n\t};\n\t_renderer.renderer.add(FlashMediaElementMdashVideoRenderer);\n\n\tvar FlashMediaElementAudioRenderer = {\n\t\tname: 'flash_audio',\n\t\toptions: {\n\t\t\tprefix: 'flash_audio',\n\t\t\tfilename: 'mediaelement-flash-audio.swf'\n\t\t},\n\n\t\tcanPlayType: function canPlayType(type) {\n\t\t\treturn ~['audio/mp3'].indexOf(type.toLowerCase());\n\t\t},\n\n\t\tcreate: FlashMediaElementRenderer.create\n\t};\n\t_renderer.renderer.add(FlashMediaElementAudioRenderer);\n\n\tvar FlashMediaElementAudioOggRenderer = {\n\t\tname: 'flash_audio_ogg',\n\t\toptions: {\n\t\t\tprefix: 'flash_audio_ogg',\n\t\t\tfilename: 'mediaelement-flash-audio-ogg.swf'\n\t\t},\n\n\t\tcanPlayType: function canPlayType(type) {\n\t\t\treturn ~['audio/ogg', 'audio/oga', 'audio/ogv'].indexOf(type.toLowerCase());\n\t\t},\n\n\t\tcreate: FlashMediaElementRenderer.create\n\t};\n\t_renderer.renderer.add(FlashMediaElementAudioOggRenderer);\n}\n\n},{\"2\":2,\"25\":25,\"27\":27,\"28\":28,\"3\":3,\"5\":5,\"7\":7,\"8\":8}],21:[function(_dereq_,module,exports){\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _constants = _dereq_(25);\n\nvar _media = _dereq_(28);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar NativeFlv = {\n\n\tpromise: null,\n\n\tload: function load(settings) {\n\t\tif (typeof flvjs !== 'undefined') {\n\t\t\tNativeFlv.promise = new Promise(function (resolve) {\n\t\t\t\tresolve();\n\t\t\t}).then(function () {\n\t\t\t\tNativeFlv._createPlayer(settings);\n\t\t\t});\n\t\t} else {\n\t\t\tsettings.options.path = typeof settings.options.path === 'string' ? settings.options.path : 'https://cdn.jsdelivr.net/npm/flv.js@latest';\n\n\t\t\tNativeFlv.promise = NativeFlv.promise || (0, _dom.loadScript)(settings.options.path);\n\t\t\tNativeFlv.promise.then(function () {\n\t\t\t\tNativeFlv._createPlayer(settings);\n\t\t\t});\n\t\t}\n\n\t\treturn NativeFlv.promise;\n\t},\n\n\t_createPlayer: function _createPlayer(settings) {\n\t\tflvjs.LoggingControl.enableDebug = settings.options.debug;\n\t\tflvjs.LoggingControl.enableVerbose = settings.options.debug;\n\t\tvar player = flvjs.createPlayer(settings.options, settings.configs);\n\t\t_window2.default['__ready__' + settings.id](player);\n\t\treturn player;\n\t}\n};\n\nvar FlvNativeRenderer = {\n\tname: 'native_flv',\n\toptions: {\n\t\tprefix: 'native_flv',\n\t\tflv: {\n\t\t\tpath: 'https://cdn.jsdelivr.net/npm/flv.js@latest',\n\n\t\t\tcors: true,\n\t\t\tdebug: false\n\t\t}\n\t},\n\n\tcanPlayType: function canPlayType(type) {\n\t\treturn _constants.HAS_MSE && ['video/x-flv', 'video/flv'].indexOf(type.toLowerCase()) > -1;\n\t},\n\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar originalNode = mediaElement.originalNode,\n\t\t id = mediaElement.id + '_' + options.prefix;\n\n\t\tvar node = null,\n\t\t flvPlayer = null;\n\n\t\tnode = originalNode.cloneNode(true);\n\t\toptions = Object.assign(options, mediaElement.options);\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t events = _mejs2.default.html5media.events.concat(['click', 'mouseover', 'mouseout']).filter(function (e) {\n\t\t\treturn e !== 'error';\n\t\t}),\n\t\t attachNativeEvents = function attachNativeEvents(e) {\n\t\t\tvar event = (0, _general.createEvent)(e.type, mediaElement);\n\t\t\tmediaElement.dispatchEvent(event);\n\t\t},\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tnode['get' + capName] = function () {\n\t\t\t\treturn flvPlayer !== null ? node[propName] : null;\n\t\t\t};\n\n\t\t\tnode['set' + capName] = function (value) {\n\t\t\t\tif (_mejs2.default.html5media.readOnlyProperties.indexOf(propName) === -1) {\n\t\t\t\t\tif (propName === 'src') {\n\t\t\t\t\t\tnode[propName] = (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.src ? value.src : value;\n\t\t\t\t\t\tif (flvPlayer !== null) {\n\t\t\t\t\t\t\tvar _flvOptions = {};\n\t\t\t\t\t\t\t_flvOptions.type = 'flv';\n\t\t\t\t\t\t\t_flvOptions.url = value;\n\t\t\t\t\t\t\t_flvOptions.cors = options.flv.cors;\n\t\t\t\t\t\t\t_flvOptions.debug = options.flv.debug;\n\t\t\t\t\t\t\t_flvOptions.path = options.flv.path;\n\t\t\t\t\t\t\tvar _flvConfigs = options.flv.configs;\n\n\t\t\t\t\t\t\tflvPlayer.destroy();\n\t\t\t\t\t\t\tfor (var i = 0, total = events.length; i < total; i++) {\n\t\t\t\t\t\t\t\tnode.removeEventListener(events[i], attachNativeEvents);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tflvPlayer = NativeFlv._createPlayer({\n\t\t\t\t\t\t\t\toptions: _flvOptions,\n\t\t\t\t\t\t\t\tconfigs: _flvConfigs,\n\t\t\t\t\t\t\t\tid: id\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tflvPlayer.attachMediaElement(node);\n\t\t\t\t\t\t\tflvPlayer.load();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnode[propName] = value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var i = 0, total = props.length; i < total; i++) {\n\t\t\tassignGettersSetters(props[i]);\n\t\t}\n\n\t\t_window2.default['__ready__' + id] = function (_flvPlayer) {\n\t\t\tmediaElement.flvPlayer = flvPlayer = _flvPlayer;\n\n\t\t\tvar flvEvents = flvjs.Events,\n\t\t\t assignEvents = function assignEvents(eventName) {\n\t\t\t\tif (eventName === 'loadedmetadata') {\n\t\t\t\t\tflvPlayer.unload();\n\t\t\t\t\tflvPlayer.detachMediaElement();\n\t\t\t\t\tflvPlayer.attachMediaElement(node);\n\t\t\t\t\tflvPlayer.load();\n\t\t\t\t}\n\n\t\t\t\tnode.addEventListener(eventName, attachNativeEvents);\n\t\t\t};\n\n\t\t\tfor (var _i = 0, _total = events.length; _i < _total; _i++) {\n\t\t\t\tassignEvents(events[_i]);\n\t\t\t}\n\n\t\t\tvar assignFlvEvents = function assignFlvEvents(name, data) {\n\t\t\t\tif (name === 'error') {\n\t\t\t\t\tvar message = data[0] + ': ' + data[1] + ' ' + data[2].msg;\n\t\t\t\t\tmediaElement.generateError(message, node.src);\n\t\t\t\t} else {\n\t\t\t\t\tvar _event = (0, _general.createEvent)(name, mediaElement);\n\t\t\t\t\t_event.data = data;\n\t\t\t\t\tmediaElement.dispatchEvent(_event);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tvar _loop = function _loop(eventType) {\n\t\t\t\tif (flvEvents.hasOwnProperty(eventType)) {\n\t\t\t\t\tflvPlayer.on(flvEvents[eventType], function () {\n\t\t\t\t\t\tfor (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t\t\t\t\t\t\targs[_key] = arguments[_key];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn assignFlvEvents(flvEvents[eventType], args);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tfor (var eventType in flvEvents) {\n\t\t\t\t_loop(eventType);\n\t\t\t}\n\t\t};\n\n\t\tif (mediaFiles && mediaFiles.length > 0) {\n\t\t\tfor (var _i2 = 0, _total2 = mediaFiles.length; _i2 < _total2; _i2++) {\n\t\t\t\tif (_renderer.renderer.renderers[options.prefix].canPlayType(mediaFiles[_i2].type)) {\n\t\t\t\t\tnode.setAttribute('src', mediaFiles[_i2].src);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tnode.setAttribute('id', id);\n\n\t\toriginalNode.parentNode.insertBefore(node, originalNode);\n\t\toriginalNode.autoplay = false;\n\t\toriginalNode.style.display = 'none';\n\n\t\tvar flvOptions = {};\n\t\tflvOptions.type = 'flv';\n\t\tflvOptions.url = node.src;\n\t\tflvOptions.cors = options.flv.cors;\n\t\tflvOptions.debug = options.flv.debug;\n\t\tflvOptions.path = options.flv.path;\n\t\tvar flvConfigs = options.flv.configs;\n\n\t\tnode.setSize = function (width, height) {\n\t\t\tnode.style.width = width + 'px';\n\t\t\tnode.style.height = height + 'px';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.hide = function () {\n\t\t\tif (flvPlayer !== null) {\n\t\t\t\tflvPlayer.pause();\n\t\t\t}\n\t\t\tnode.style.display = 'none';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.show = function () {\n\t\t\tnode.style.display = '';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.destroy = function () {\n\t\t\tif (flvPlayer !== null) {\n\t\t\t\tflvPlayer.destroy();\n\t\t\t}\n\t\t};\n\n\t\tvar event = (0, _general.createEvent)('rendererready', node);\n\t\tmediaElement.dispatchEvent(event);\n\n\t\tmediaElement.promises.push(NativeFlv.load({\n\t\t\toptions: flvOptions,\n\t\t\tconfigs: flvConfigs,\n\t\t\tid: id\n\t\t}));\n\n\t\treturn node;\n\t}\n};\n\n_media.typeChecks.push(function (url) {\n\treturn ~url.toLowerCase().indexOf('.flv') ? 'video/flv' : null;\n});\n\n_renderer.renderer.add(FlvNativeRenderer);\n\n},{\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"7\":7,\"8\":8}],22:[function(_dereq_,module,exports){\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _constants = _dereq_(25);\n\nvar _media = _dereq_(28);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar NativeHls = {\n\n\tpromise: null,\n\n\tload: function load(settings) {\n\t\tif (typeof Hls !== 'undefined') {\n\t\t\tNativeHls.promise = new Promise(function (resolve) {\n\t\t\t\tresolve();\n\t\t\t}).then(function () {\n\t\t\t\tNativeHls._createPlayer(settings);\n\t\t\t});\n\t\t} else {\n\t\t\tsettings.options.path = typeof settings.options.path === 'string' ? settings.options.path : 'https://cdn.jsdelivr.net/npm/hls.js@latest';\n\n\t\t\tNativeHls.promise = NativeHls.promise || (0, _dom.loadScript)(settings.options.path);\n\t\t\tNativeHls.promise.then(function () {\n\t\t\t\tNativeHls._createPlayer(settings);\n\t\t\t});\n\t\t}\n\n\t\treturn NativeHls.promise;\n\t},\n\n\t_createPlayer: function _createPlayer(settings) {\n\t\tvar player = new Hls(settings.options);\n\t\t_window2.default['__ready__' + settings.id](player);\n\t\treturn player;\n\t}\n};\n\nvar HlsNativeRenderer = {\n\tname: 'native_hls',\n\toptions: {\n\t\tprefix: 'native_hls',\n\t\thls: {\n\t\t\tpath: 'https://cdn.jsdelivr.net/npm/hls.js@latest',\n\n\t\t\tautoStartLoad: false,\n\t\t\tdebug: false\n\t\t}\n\t},\n\n\tcanPlayType: function canPlayType(type) {\n\t\treturn _constants.HAS_MSE && ['application/x-mpegurl', 'application/vnd.apple.mpegurl', 'audio/mpegurl', 'audio/hls', 'video/hls'].indexOf(type.toLowerCase()) > -1;\n\t},\n\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar originalNode = mediaElement.originalNode,\n\t\t id = mediaElement.id + '_' + options.prefix,\n\t\t preload = originalNode.getAttribute('preload'),\n\t\t autoplay = originalNode.autoplay;\n\n\t\tvar hlsPlayer = null,\n\t\t node = null,\n\t\t index = 0,\n\t\t total = mediaFiles.length;\n\n\t\tnode = originalNode.cloneNode(true);\n\t\toptions = Object.assign(options, mediaElement.options);\n\t\toptions.hls.autoStartLoad = preload && preload !== 'none' || autoplay;\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t events = _mejs2.default.html5media.events.concat(['click', 'mouseover', 'mouseout']).filter(function (e) {\n\t\t\treturn e !== 'error';\n\t\t}),\n\t\t attachNativeEvents = function attachNativeEvents(e) {\n\t\t\tvar event = (0, _general.createEvent)(e.type, mediaElement);\n\t\t\tmediaElement.dispatchEvent(event);\n\t\t},\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tnode['get' + capName] = function () {\n\t\t\t\treturn hlsPlayer !== null ? node[propName] : null;\n\t\t\t};\n\n\t\t\tnode['set' + capName] = function (value) {\n\t\t\t\tif (_mejs2.default.html5media.readOnlyProperties.indexOf(propName) === -1) {\n\t\t\t\t\tif (propName === 'src') {\n\t\t\t\t\t\tnode[propName] = (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.src ? value.src : value;\n\t\t\t\t\t\tif (hlsPlayer !== null) {\n\t\t\t\t\t\t\thlsPlayer.destroy();\n\t\t\t\t\t\t\tfor (var i = 0, _total = events.length; i < _total; i++) {\n\t\t\t\t\t\t\t\tnode.removeEventListener(events[i], attachNativeEvents);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thlsPlayer = NativeHls._createPlayer({\n\t\t\t\t\t\t\t\toptions: options.hls,\n\t\t\t\t\t\t\t\tid: id\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\thlsPlayer.loadSource(value);\n\t\t\t\t\t\t\thlsPlayer.attachMedia(node);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnode[propName] = value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var i = 0, _total2 = props.length; i < _total2; i++) {\n\t\t\tassignGettersSetters(props[i]);\n\t\t}\n\n\t\t_window2.default['__ready__' + id] = function (_hlsPlayer) {\n\t\t\tmediaElement.hlsPlayer = hlsPlayer = _hlsPlayer;\n\t\t\tvar hlsEvents = Hls.Events,\n\t\t\t assignEvents = function assignEvents(eventName) {\n\t\t\t\tif (eventName === 'loadedmetadata') {\n\t\t\t\t\tvar url = mediaElement.originalNode.src;\n\t\t\t\t\thlsPlayer.detachMedia();\n\t\t\t\t\thlsPlayer.loadSource(url);\n\t\t\t\t\thlsPlayer.attachMedia(node);\n\t\t\t\t}\n\n\t\t\t\tnode.addEventListener(eventName, attachNativeEvents);\n\t\t\t};\n\n\t\t\tfor (var _i = 0, _total3 = events.length; _i < _total3; _i++) {\n\t\t\t\tassignEvents(events[_i]);\n\t\t\t}\n\n\t\t\tvar recoverDecodingErrorDate = void 0,\n\t\t\t recoverSwapAudioCodecDate = void 0;\n\t\t\tvar assignHlsEvents = function assignHlsEvents(name, data) {\n\t\t\t\tif (name === 'hlsError') {\n\t\t\t\t\tconsole.warn(data);\n\t\t\t\t\tdata = data[1];\n\n\t\t\t\t\tif (data.fatal) {\n\t\t\t\t\t\tswitch (data.type) {\n\t\t\t\t\t\t\tcase 'mediaError':\n\t\t\t\t\t\t\t\tvar now = new Date().getTime();\n\t\t\t\t\t\t\t\tif (!recoverDecodingErrorDate || now - recoverDecodingErrorDate > 3000) {\n\t\t\t\t\t\t\t\t\trecoverDecodingErrorDate = new Date().getTime();\n\t\t\t\t\t\t\t\t\thlsPlayer.recoverMediaError();\n\t\t\t\t\t\t\t\t} else if (!recoverSwapAudioCodecDate || now - recoverSwapAudioCodecDate > 3000) {\n\t\t\t\t\t\t\t\t\trecoverSwapAudioCodecDate = new Date().getTime();\n\t\t\t\t\t\t\t\t\tconsole.warn('Attempting to swap Audio Codec and recover from media error');\n\t\t\t\t\t\t\t\t\thlsPlayer.swapAudioCodec();\n\t\t\t\t\t\t\t\t\thlsPlayer.recoverMediaError();\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tvar message = 'Cannot recover, last media error recovery failed';\n\t\t\t\t\t\t\t\t\tmediaElement.generateError(message, node.src);\n\t\t\t\t\t\t\t\t\tconsole.error(message);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'networkError':\n\t\t\t\t\t\t\t\tif (data.details === 'manifestLoadError') {\n\t\t\t\t\t\t\t\t\tif (index < total && mediaFiles[index + 1] !== undefined) {\n\t\t\t\t\t\t\t\t\t\tnode.setSrc(mediaFiles[index++].src);\n\t\t\t\t\t\t\t\t\t\tnode.load();\n\t\t\t\t\t\t\t\t\t\tnode.play();\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tvar _message = 'Network error';\n\t\t\t\t\t\t\t\t\t\tmediaElement.generateError(_message, mediaFiles);\n\t\t\t\t\t\t\t\t\t\tconsole.error(_message);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tvar _message2 = 'Network error';\n\t\t\t\t\t\t\t\t\tmediaElement.generateError(_message2, mediaFiles);\n\t\t\t\t\t\t\t\t\tconsole.error(_message2);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\thlsPlayer.destroy();\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tvar event = (0, _general.createEvent)(name, mediaElement);\n\t\t\t\tevent.data = data;\n\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t};\n\n\t\t\tvar _loop = function _loop(eventType) {\n\t\t\t\tif (hlsEvents.hasOwnProperty(eventType)) {\n\t\t\t\t\thlsPlayer.on(hlsEvents[eventType], function () {\n\t\t\t\t\t\tfor (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t\t\t\t\t\t\targs[_key] = arguments[_key];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn assignHlsEvents(hlsEvents[eventType], args);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tfor (var eventType in hlsEvents) {\n\t\t\t\t_loop(eventType);\n\t\t\t}\n\t\t};\n\n\t\tif (total > 0) {\n\t\t\tfor (; index < total; index++) {\n\t\t\t\tif (_renderer.renderer.renderers[options.prefix].canPlayType(mediaFiles[index].type)) {\n\t\t\t\t\tnode.setAttribute('src', mediaFiles[index].src);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (preload !== 'auto' && !autoplay) {\n\t\t\tnode.addEventListener('play', function () {\n\t\t\t\tif (hlsPlayer !== null) {\n\t\t\t\t\thlsPlayer.startLoad();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tnode.addEventListener('pause', function () {\n\t\t\t\tif (hlsPlayer !== null) {\n\t\t\t\t\thlsPlayer.stopLoad();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tnode.setAttribute('id', id);\n\n\t\toriginalNode.parentNode.insertBefore(node, originalNode);\n\t\toriginalNode.autoplay = false;\n\t\toriginalNode.style.display = 'none';\n\n\t\tnode.setSize = function (width, height) {\n\t\t\tnode.style.width = width + 'px';\n\t\t\tnode.style.height = height + 'px';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.hide = function () {\n\t\t\tnode.pause();\n\t\t\tnode.style.display = 'none';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.show = function () {\n\t\t\tnode.style.display = '';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.destroy = function () {\n\t\t\tif (hlsPlayer !== null) {\n\t\t\t\thlsPlayer.stopLoad();\n\t\t\t\thlsPlayer.destroy();\n\t\t\t}\n\t\t};\n\n\t\tvar event = (0, _general.createEvent)('rendererready', node);\n\t\tmediaElement.dispatchEvent(event);\n\n\t\tmediaElement.promises.push(NativeHls.load({\n\t\t\toptions: options.hls,\n\t\t\tid: id\n\t\t}));\n\n\t\treturn node;\n\t}\n};\n\n_media.typeChecks.push(function (url) {\n\treturn ~url.toLowerCase().indexOf('.m3u8') ? 'application/x-mpegURL' : null;\n});\n\n_renderer.renderer.add(HlsNativeRenderer);\n\n},{\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"7\":7,\"8\":8}],23:[function(_dereq_,module,exports){\n'use strict';\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _constants = _dereq_(25);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar HtmlMediaElement = {\n\tname: 'html5',\n\toptions: {\n\t\tprefix: 'html5'\n\t},\n\n\tcanPlayType: function canPlayType(type) {\n\n\t\tvar mediaElement = _document2.default.createElement('video');\n\n\t\tif (_constants.IS_ANDROID && /\\/mp(3|4)$/i.test(type) || ~['application/x-mpegurl', 'vnd.apple.mpegurl', 'audio/mpegurl', 'audio/hls', 'video/hls'].indexOf(type.toLowerCase()) && _constants.SUPPORTS_NATIVE_HLS) {\n\t\t\treturn 'yes';\n\t\t} else if (mediaElement.canPlayType) {\n\t\t\treturn mediaElement.canPlayType(type.toLowerCase()).replace(/no/, '');\n\t\t} else {\n\t\t\treturn '';\n\t\t}\n\t},\n\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar id = mediaElement.id + '_' + options.prefix;\n\t\tvar isActive = false;\n\n\t\tvar node = null;\n\n\t\tif (mediaElement.originalNode === undefined || mediaElement.originalNode === null) {\n\t\t\tnode = _document2.default.createElement('audio');\n\t\t\tmediaElement.appendChild(node);\n\t\t} else {\n\t\t\tnode = mediaElement.originalNode;\n\t\t}\n\n\t\tnode.setAttribute('id', id);\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tnode['get' + capName] = function () {\n\t\t\t\treturn node[propName];\n\t\t\t};\n\n\t\t\tnode['set' + capName] = function (value) {\n\t\t\t\tif (_mejs2.default.html5media.readOnlyProperties.indexOf(propName) === -1) {\n\t\t\t\t\tnode[propName] = value;\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var i = 0, _total = props.length; i < _total; i++) {\n\t\t\tassignGettersSetters(props[i]);\n\t\t}\n\n\t\tvar events = _mejs2.default.html5media.events.concat(['click', 'mouseover', 'mouseout']).filter(function (e) {\n\t\t\treturn e !== 'error';\n\t\t}),\n\t\t assignEvents = function assignEvents(eventName) {\n\t\t\tnode.addEventListener(eventName, function (e) {\n\t\t\t\tif (isActive) {\n\t\t\t\t\tvar _event = (0, _general.createEvent)(e.type, e.target);\n\t\t\t\t\tmediaElement.dispatchEvent(_event);\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\n\t\tfor (var _i = 0, _total2 = events.length; _i < _total2; _i++) {\n\t\t\tassignEvents(events[_i]);\n\t\t}\n\n\t\tnode.setSize = function (width, height) {\n\t\t\tnode.style.width = width + 'px';\n\t\t\tnode.style.height = height + 'px';\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.hide = function () {\n\t\t\tisActive = false;\n\t\t\tnode.style.display = 'none';\n\n\t\t\treturn node;\n\t\t};\n\n\t\tnode.show = function () {\n\t\t\tisActive = true;\n\t\t\tnode.style.display = '';\n\n\t\t\treturn node;\n\t\t};\n\n\t\tvar index = 0,\n\t\t total = mediaFiles.length;\n\t\tif (total > 0) {\n\t\t\tfor (; index < total; index++) {\n\t\t\t\tif (_renderer.renderer.renderers[options.prefix].canPlayType(mediaFiles[index].type)) {\n\t\t\t\t\tnode.setAttribute('src', mediaFiles[index].src);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tnode.addEventListener('error', function (e) {\n\t\t\tif (e && e.target && e.target.error && e.target.error.code === 4 && isActive) {\n\t\t\t\tif (index < total && mediaFiles[index + 1] !== undefined) {\n\t\t\t\t\tnode.src = mediaFiles[index++].src;\n\t\t\t\t\tnode.load();\n\t\t\t\t\tnode.play();\n\t\t\t\t} else {\n\t\t\t\t\tmediaElement.generateError('Media error: Format(s) not supported or source(s) not found', mediaFiles);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tvar event = (0, _general.createEvent)('rendererready', node);\n\t\tmediaElement.dispatchEvent(event);\n\n\t\treturn node;\n\t}\n};\n\n_window2.default.HtmlMediaElement = _mejs2.default.HtmlMediaElement = HtmlMediaElement;\n\n_renderer.renderer.add(HtmlMediaElement);\n\n},{\"2\":2,\"25\":25,\"27\":27,\"3\":3,\"7\":7,\"8\":8}],24:[function(_dereq_,module,exports){\n'use strict';\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _renderer = _dereq_(8);\n\nvar _general = _dereq_(27);\n\nvar _media = _dereq_(28);\n\nvar _dom = _dereq_(26);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar YouTubeApi = {\n\tisIframeStarted: false,\n\n\tisIframeLoaded: false,\n\n\tiframeQueue: [],\n\n\tenqueueIframe: function enqueueIframe(settings) {\n\t\tYouTubeApi.isLoaded = typeof YT !== 'undefined' && YT.loaded;\n\n\t\tif (YouTubeApi.isLoaded) {\n\t\t\tYouTubeApi.createIframe(settings);\n\t\t} else {\n\t\t\tYouTubeApi.loadIframeApi();\n\t\t\tYouTubeApi.iframeQueue.push(settings);\n\t\t}\n\t},\n\n\tloadIframeApi: function loadIframeApi() {\n\t\tif (!YouTubeApi.isIframeStarted) {\n\t\t\t(0, _dom.loadScript)('https://www.youtube.com/player_api');\n\t\t\tYouTubeApi.isIframeStarted = true;\n\t\t}\n\t},\n\n\tiFrameReady: function iFrameReady() {\n\n\t\tYouTubeApi.isLoaded = true;\n\t\tYouTubeApi.isIframeLoaded = true;\n\n\t\twhile (YouTubeApi.iframeQueue.length > 0) {\n\t\t\tvar settings = YouTubeApi.iframeQueue.pop();\n\t\t\tYouTubeApi.createIframe(settings);\n\t\t}\n\t},\n\n\tcreateIframe: function createIframe(settings) {\n\t\treturn new YT.Player(settings.containerId, settings);\n\t},\n\n\tgetYouTubeId: function getYouTubeId(url) {\n\n\t\tvar youTubeId = '';\n\n\t\tif (url.indexOf('?') > 0) {\n\t\t\tyouTubeId = YouTubeApi.getYouTubeIdFromParam(url);\n\n\t\t\tif (youTubeId === '') {\n\t\t\t\tyouTubeId = YouTubeApi.getYouTubeIdFromUrl(url);\n\t\t\t}\n\t\t} else {\n\t\t\tyouTubeId = YouTubeApi.getYouTubeIdFromUrl(url);\n\t\t}\n\n\t\tvar id = youTubeId.substring(youTubeId.lastIndexOf('/') + 1);\n\t\tyouTubeId = id.split('?');\n\t\treturn youTubeId[0];\n\t},\n\n\tgetYouTubeIdFromParam: function getYouTubeIdFromParam(url) {\n\n\t\tif (url === undefined || url === null || !url.trim().length) {\n\t\t\treturn null;\n\t\t}\n\n\t\tvar parts = url.split('?'),\n\t\t parameters = parts[1].split('&');\n\n\t\tvar youTubeId = '';\n\n\t\tfor (var i = 0, total = parameters.length; i < total; i++) {\n\t\t\tvar paramParts = parameters[i].split('=');\n\t\t\tif (paramParts[0] === 'v') {\n\t\t\t\tyouTubeId = paramParts[1];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\treturn youTubeId;\n\t},\n\n\tgetYouTubeIdFromUrl: function getYouTubeIdFromUrl(url) {\n\n\t\tif (url === undefined || url === null || !url.trim().length) {\n\t\t\treturn null;\n\t\t}\n\n\t\tvar parts = url.split('?');\n\t\turl = parts[0];\n\t\treturn url.substring(url.lastIndexOf('/') + 1);\n\t},\n\n\tgetYouTubeNoCookieUrl: function getYouTubeNoCookieUrl(url) {\n\t\tif (url === undefined || url === null || !url.trim().length || url.indexOf('//www.youtube') === -1) {\n\t\t\treturn url;\n\t\t}\n\n\t\tvar parts = url.split('/');\n\t\tparts[2] = parts[2].replace('.com', '-nocookie.com');\n\t\treturn parts.join('/');\n\t}\n};\n\nvar YouTubeIframeRenderer = {\n\tname: 'youtube_iframe',\n\n\toptions: {\n\t\tprefix: 'youtube_iframe',\n\n\t\tyoutube: {\n\t\t\tautoplay: 0,\n\t\t\tcontrols: 0,\n\t\t\tdisablekb: 1,\n\t\t\tend: 0,\n\t\t\tloop: 0,\n\t\t\tmodestbranding: 0,\n\t\t\tplaysinline: 0,\n\t\t\trel: 0,\n\t\t\tshowinfo: 0,\n\t\t\tstart: 0,\n\t\t\tiv_load_policy: 3,\n\n\t\t\tnocookie: false,\n\n\t\t\timageQuality: null\n\t\t}\n\t},\n\n\tcanPlayType: function canPlayType(type) {\n\t\treturn ~['video/youtube', 'video/x-youtube'].indexOf(type.toLowerCase());\n\t},\n\n\tcreate: function create(mediaElement, options, mediaFiles) {\n\n\t\tvar youtube = {},\n\t\t apiStack = [],\n\t\t readyState = 4;\n\n\t\tvar youTubeApi = null,\n\t\t paused = true,\n\t\t ended = false,\n\t\t youTubeIframe = null,\n\t\t volume = 1;\n\n\t\tyoutube.options = options;\n\t\tyoutube.id = mediaElement.id + '_' + options.prefix;\n\t\tyoutube.mediaElement = mediaElement;\n\n\t\tvar props = _mejs2.default.html5media.properties,\n\t\t assignGettersSetters = function assignGettersSetters(propName) {\n\n\t\t\tvar capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\tyoutube['get' + capName] = function () {\n\t\t\t\tif (youTubeApi !== null) {\n\t\t\t\t\tvar value = null;\n\n\t\t\t\t\tswitch (propName) {\n\t\t\t\t\t\tcase 'currentTime':\n\t\t\t\t\t\t\treturn youTubeApi.getCurrentTime();\n\t\t\t\t\t\tcase 'duration':\n\t\t\t\t\t\t\treturn youTubeApi.getDuration();\n\t\t\t\t\t\tcase 'volume':\n\t\t\t\t\t\t\tvolume = youTubeApi.getVolume() / 100;\n\t\t\t\t\t\t\treturn volume;\n\t\t\t\t\t\tcase 'playbackRate':\n\t\t\t\t\t\t\treturn youTubeApi.getPlaybackRate();\n\t\t\t\t\t\tcase 'paused':\n\t\t\t\t\t\t\treturn paused;\n\t\t\t\t\t\tcase 'ended':\n\t\t\t\t\t\t\treturn ended;\n\t\t\t\t\t\tcase 'muted':\n\t\t\t\t\t\t\treturn youTubeApi.isMuted();\n\t\t\t\t\t\tcase 'buffered':\n\t\t\t\t\t\t\tvar percentLoaded = youTubeApi.getVideoLoadedFraction(),\n\t\t\t\t\t\t\t duration = youTubeApi.getDuration();\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstart: function start() {\n\t\t\t\t\t\t\t\t\treturn 0;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tend: function end() {\n\t\t\t\t\t\t\t\t\treturn percentLoaded * duration;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tlength: 1\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\tcase 'src':\n\t\t\t\t\t\t\treturn youTubeApi.getVideoUrl();\n\t\t\t\t\t\tcase 'readyState':\n\t\t\t\t\t\t\treturn readyState;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn value;\n\t\t\t\t} else {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tyoutube['set' + capName] = function (value) {\n\t\t\t\tif (youTubeApi !== null) {\n\t\t\t\t\tswitch (propName) {\n\t\t\t\t\t\tcase 'src':\n\t\t\t\t\t\t\tvar url = typeof value === 'string' ? value : value[0].src,\n\t\t\t\t\t\t\t _videoId = YouTubeApi.getYouTubeId(url);\n\n\t\t\t\t\t\t\tif (mediaElement.originalNode.autoplay) {\n\t\t\t\t\t\t\t\tyouTubeApi.loadVideoById(_videoId);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tyouTubeApi.cueVideoById(_videoId);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'currentTime':\n\t\t\t\t\t\t\tyouTubeApi.seekTo(value);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'muted':\n\t\t\t\t\t\t\tif (value) {\n\t\t\t\t\t\t\t\tyouTubeApi.mute();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tyouTubeApi.unMute();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tvar event = (0, _general.createEvent)('volumechange', youtube);\n\t\t\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t\t\t}, 50);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'volume':\n\t\t\t\t\t\t\tvolume = value;\n\t\t\t\t\t\t\tyouTubeApi.setVolume(value * 100);\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tvar event = (0, _general.createEvent)('volumechange', youtube);\n\t\t\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t\t\t}, 50);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'playbackRate':\n\t\t\t\t\t\t\tyouTubeApi.setPlaybackRate(value);\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tvar event = (0, _general.createEvent)('ratechange', youtube);\n\t\t\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t\t\t}, 50);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'readyState':\n\t\t\t\t\t\t\tvar event = (0, _general.createEvent)('canplay', youtube);\n\t\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tapiStack.push({ type: 'set', propName: propName, value: value });\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var i = 0, total = props.length; i < total; i++) {\n\t\t\tassignGettersSetters(props[i]);\n\t\t}\n\n\t\tvar methods = _mejs2.default.html5media.methods,\n\t\t assignMethods = function assignMethods(methodName) {\n\t\t\tyoutube[methodName] = function () {\n\t\t\t\tif (youTubeApi !== null) {\n\t\t\t\t\tswitch (methodName) {\n\t\t\t\t\t\tcase 'play':\n\t\t\t\t\t\t\tpaused = false;\n\t\t\t\t\t\t\treturn youTubeApi.playVideo();\n\t\t\t\t\t\tcase 'pause':\n\t\t\t\t\t\t\tpaused = true;\n\t\t\t\t\t\t\treturn youTubeApi.pauseVideo();\n\t\t\t\t\t\tcase 'load':\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tapiStack.push({ type: 'call', methodName: methodName });\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\n\t\tfor (var _i = 0, _total = methods.length; _i < _total; _i++) {\n\t\t\tassignMethods(methods[_i]);\n\t\t}\n\n\t\tvar errorHandler = function errorHandler(error) {\n\t\t\tvar message = '';\n\t\t\tswitch (error.data) {\n\t\t\t\tcase 2:\n\t\t\t\t\tmessage = 'The request contains an invalid parameter value. Verify that video ID has 11 characters and that contains no invalid characters, such as exclamation points or asterisks.';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 5:\n\t\t\t\t\tmessage = 'The requested content cannot be played in an HTML5 player or another error related to the HTML5 player has occurred.';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 100:\n\t\t\t\t\tmessage = 'The video requested was not found. Either video has been removed or has been marked as private.';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 101:\n\t\t\t\tcase 105:\n\t\t\t\t\tmessage = 'The owner of the requested video does not allow it to be played in embedded players.';\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tmessage = 'Unknown error.';\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tmediaElement.generateError('Code ' + error.data + ': ' + message, mediaFiles);\n\t\t};\n\n\t\tvar youtubeContainer = _document2.default.createElement('div');\n\t\tyoutubeContainer.id = youtube.id;\n\n\t\tif (youtube.options.youtube.nocookie) {\n\t\t\tmediaElement.originalNode.src = YouTubeApi.getYouTubeNoCookieUrl(mediaFiles[0].src);\n\t\t}\n\n\t\tmediaElement.originalNode.parentNode.insertBefore(youtubeContainer, mediaElement.originalNode);\n\t\tmediaElement.originalNode.style.display = 'none';\n\n\t\tvar isAudio = mediaElement.originalNode.tagName.toLowerCase() === 'audio',\n\t\t height = isAudio ? '1' : mediaElement.originalNode.height,\n\t\t width = isAudio ? '1' : mediaElement.originalNode.width,\n\t\t videoId = YouTubeApi.getYouTubeId(mediaFiles[0].src),\n\t\t youtubeSettings = {\n\t\t\tid: youtube.id,\n\t\t\tcontainerId: youtubeContainer.id,\n\t\t\tvideoId: videoId,\n\t\t\theight: height,\n\t\t\twidth: width,\n\t\t\thost: youtube.options.youtube && youtube.options.youtube.nocookie ? 'https://www.youtube-nocookie.com' : undefined,\n\t\t\tplayerVars: Object.assign({\n\t\t\t\tcontrols: 0,\n\t\t\t\trel: 0,\n\t\t\t\tdisablekb: 1,\n\t\t\t\tshowinfo: 0,\n\t\t\t\tmodestbranding: 0,\n\t\t\t\thtml5: 1,\n\t\t\t\tiv_load_policy: 3\n\t\t\t}, youtube.options.youtube),\n\t\t\torigin: _window2.default.location.host,\n\t\t\tevents: {\n\t\t\t\tonReady: function onReady(e) {\n\t\t\t\t\tmediaElement.youTubeApi = youTubeApi = e.target;\n\t\t\t\t\tmediaElement.youTubeState = {\n\t\t\t\t\t\tpaused: true,\n\t\t\t\t\t\tended: false\n\t\t\t\t\t};\n\n\t\t\t\t\tif (apiStack.length) {\n\t\t\t\t\t\tfor (var _i2 = 0, _total2 = apiStack.length; _i2 < _total2; _i2++) {\n\n\t\t\t\t\t\t\tvar stackItem = apiStack[_i2];\n\n\t\t\t\t\t\t\tif (stackItem.type === 'set') {\n\t\t\t\t\t\t\t\tvar propName = stackItem.propName,\n\t\t\t\t\t\t\t\t capName = '' + propName.substring(0, 1).toUpperCase() + propName.substring(1);\n\n\t\t\t\t\t\t\t\tyoutube['set' + capName](stackItem.value);\n\t\t\t\t\t\t\t} else if (stackItem.type === 'call') {\n\t\t\t\t\t\t\t\tyoutube[stackItem.methodName]();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tyouTubeIframe = youTubeApi.getIframe();\n\n\t\t\t\t\tif (mediaElement.originalNode.muted) {\n\t\t\t\t\t\tyouTubeApi.mute();\n\t\t\t\t\t}\n\n\t\t\t\t\tvar events = ['mouseover', 'mouseout'],\n\t\t\t\t\t assignEvents = function assignEvents(e) {\n\t\t\t\t\t\tvar newEvent = (0, _general.createEvent)(e.type, youtube);\n\t\t\t\t\t\tmediaElement.dispatchEvent(newEvent);\n\t\t\t\t\t};\n\n\t\t\t\t\tfor (var _i3 = 0, _total3 = events.length; _i3 < _total3; _i3++) {\n\t\t\t\t\t\tyouTubeIframe.addEventListener(events[_i3], assignEvents, false);\n\t\t\t\t\t}\n\n\t\t\t\t\tvar initEvents = ['rendererready', 'loadedmetadata', 'loadeddata', 'canplay'];\n\n\t\t\t\t\tfor (var _i4 = 0, _total4 = initEvents.length; _i4 < _total4; _i4++) {\n\t\t\t\t\t\tvar event = (0, _general.createEvent)(initEvents[_i4], youtube);\n\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tonStateChange: function onStateChange(e) {\n\t\t\t\t\tvar events = [];\n\n\t\t\t\t\tswitch (e.data) {\n\t\t\t\t\t\tcase -1:\n\t\t\t\t\t\t\tevents = ['loadedmetadata'];\n\t\t\t\t\t\t\tpaused = true;\n\t\t\t\t\t\t\tended = false;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\tevents = ['ended'];\n\t\t\t\t\t\t\tpaused = false;\n\t\t\t\t\t\t\tended = !youtube.options.youtube.loop;\n\t\t\t\t\t\t\tif (!youtube.options.youtube.loop) {\n\t\t\t\t\t\t\t\tyoutube.stopInterval();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\tevents = ['play', 'playing'];\n\t\t\t\t\t\t\tpaused = false;\n\t\t\t\t\t\t\tended = false;\n\t\t\t\t\t\t\tyoutube.startInterval();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 2:\n\t\t\t\t\t\t\tevents = ['pause'];\n\t\t\t\t\t\t\tpaused = true;\n\t\t\t\t\t\t\tended = false;\n\t\t\t\t\t\t\tyoutube.stopInterval();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 3:\n\t\t\t\t\t\t\tevents = ['progress'];\n\t\t\t\t\t\t\tended = false;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 5:\n\t\t\t\t\t\t\tevents = ['loadeddata', 'loadedmetadata', 'canplay'];\n\t\t\t\t\t\t\tpaused = true;\n\t\t\t\t\t\t\tended = false;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tfor (var _i5 = 0, _total5 = events.length; _i5 < _total5; _i5++) {\n\t\t\t\t\t\tvar event = (0, _general.createEvent)(events[_i5], youtube);\n\t\t\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tonError: function onError(e) {\n\t\t\t\t\treturn errorHandler(e);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tif (isAudio || mediaElement.originalNode.hasAttribute('playsinline')) {\n\t\t\tyoutubeSettings.playerVars.playsinline = 1;\n\t\t}\n\n\t\tif (mediaElement.originalNode.controls) {\n\t\t\tyoutubeSettings.playerVars.controls = 1;\n\t\t}\n\t\tif (mediaElement.originalNode.autoplay) {\n\t\t\tyoutubeSettings.playerVars.autoplay = 1;\n\t\t}\n\t\tif (mediaElement.originalNode.loop) {\n\t\t\tyoutubeSettings.playerVars.loop = 1;\n\t\t}\n\n\t\tif ((youtubeSettings.playerVars.loop && parseInt(youtubeSettings.playerVars.loop, 10) === 1 || mediaElement.originalNode.src.indexOf('loop=') > -1) && !youtubeSettings.playerVars.playlist && mediaElement.originalNode.src.indexOf('playlist=') === -1) {\n\t\t\tyoutubeSettings.playerVars.playlist = YouTubeApi.getYouTubeId(mediaElement.originalNode.src);\n\t\t}\n\n\t\tYouTubeApi.enqueueIframe(youtubeSettings);\n\n\t\tyoutube.onEvent = function (eventName, player, _youTubeState) {\n\t\t\tif (_youTubeState !== null && _youTubeState !== undefined) {\n\t\t\t\tmediaElement.youTubeState = _youTubeState;\n\t\t\t}\n\t\t};\n\n\t\tyoutube.setSize = function (width, height) {\n\t\t\tif (youTubeApi !== null) {\n\t\t\t\tyouTubeApi.setSize(width, height);\n\t\t\t}\n\t\t};\n\t\tyoutube.hide = function () {\n\t\t\tyoutube.stopInterval();\n\t\t\tyoutube.pause();\n\t\t\tif (youTubeIframe) {\n\t\t\t\tyouTubeIframe.style.display = 'none';\n\t\t\t}\n\t\t};\n\t\tyoutube.show = function () {\n\t\t\tif (youTubeIframe) {\n\t\t\t\tyouTubeIframe.style.display = '';\n\t\t\t}\n\t\t};\n\t\tyoutube.destroy = function () {\n\t\t\tyouTubeApi.destroy();\n\t\t};\n\t\tyoutube.interval = null;\n\n\t\tyoutube.startInterval = function () {\n\t\t\tyoutube.interval = setInterval(function () {\n\t\t\t\tvar event = (0, _general.createEvent)('timeupdate', youtube);\n\t\t\t\tmediaElement.dispatchEvent(event);\n\t\t\t}, 250);\n\t\t};\n\t\tyoutube.stopInterval = function () {\n\t\t\tif (youtube.interval) {\n\t\t\t\tclearInterval(youtube.interval);\n\t\t\t}\n\t\t};\n\t\tyoutube.getPosterUrl = function () {\n\t\t\tvar quality = options.youtube.imageQuality,\n\t\t\t resolutions = ['default', 'hqdefault', 'mqdefault', 'sddefault', 'maxresdefault'],\n\t\t\t id = YouTubeApi.getYouTubeId(mediaElement.originalNode.src);\n\t\t\treturn quality && resolutions.indexOf(quality) > -1 && id ? 'https://img.youtube.com/vi/' + id + '/' + quality + '.jpg' : '';\n\t\t};\n\n\t\treturn youtube;\n\t}\n};\n\n_window2.default.onYouTubePlayerAPIReady = function () {\n\tYouTubeApi.iFrameReady();\n};\n\n_media.typeChecks.push(function (url) {\n\treturn (/\\/\\/(www\\.youtube|youtu\\.?be)/i.test(url) ? 'video/x-youtube' : null\n\t);\n});\n\n_renderer.renderer.add(YouTubeIframeRenderer);\n\n},{\"2\":2,\"26\":26,\"27\":27,\"28\":28,\"3\":3,\"7\":7,\"8\":8}],25:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.cancelFullScreen = exports.requestFullScreen = exports.isFullScreen = exports.FULLSCREEN_EVENT_NAME = exports.HAS_NATIVE_FULLSCREEN_ENABLED = exports.HAS_TRUE_NATIVE_FULLSCREEN = exports.HAS_IOS_FULLSCREEN = exports.HAS_MS_NATIVE_FULLSCREEN = exports.HAS_MOZ_NATIVE_FULLSCREEN = exports.HAS_WEBKIT_NATIVE_FULLSCREEN = exports.HAS_NATIVE_FULLSCREEN = exports.SUPPORTS_NATIVE_HLS = exports.SUPPORT_PASSIVE_EVENT = exports.SUPPORT_POINTER_EVENTS = exports.HAS_MSE = exports.IS_STOCK_ANDROID = exports.IS_SAFARI = exports.IS_FIREFOX = exports.IS_CHROME = exports.IS_EDGE = exports.IS_IE = exports.IS_ANDROID = exports.IS_IOS = exports.IS_IPOD = exports.IS_IPHONE = exports.IS_IPAD = exports.UA = exports.NAV = undefined;\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar NAV = exports.NAV = _window2.default.navigator;\nvar UA = exports.UA = NAV.userAgent.toLowerCase();\nvar IS_IPAD = exports.IS_IPAD = /ipad/i.test(UA) && !_window2.default.MSStream;\nvar IS_IPHONE = exports.IS_IPHONE = /iphone/i.test(UA) && !_window2.default.MSStream;\nvar IS_IPOD = exports.IS_IPOD = /ipod/i.test(UA) && !_window2.default.MSStream;\nvar IS_IOS = exports.IS_IOS = /ipad|iphone|ipod/i.test(UA) && !_window2.default.MSStream;\nvar IS_ANDROID = exports.IS_ANDROID = /android/i.test(UA);\nvar IS_IE = exports.IS_IE = /(trident|microsoft)/i.test(NAV.appName);\nvar IS_EDGE = exports.IS_EDGE = 'msLaunchUri' in NAV && !('documentMode' in _document2.default);\nvar IS_CHROME = exports.IS_CHROME = /chrome/i.test(UA);\nvar IS_FIREFOX = exports.IS_FIREFOX = /firefox/i.test(UA);\nvar IS_SAFARI = exports.IS_SAFARI = /safari/i.test(UA) && !IS_CHROME;\nvar IS_STOCK_ANDROID = exports.IS_STOCK_ANDROID = /^mozilla\\/\\d+\\.\\d+\\s\\(linux;\\su;/i.test(UA);\nvar HAS_MSE = exports.HAS_MSE = 'MediaSource' in _window2.default;\nvar SUPPORT_POINTER_EVENTS = exports.SUPPORT_POINTER_EVENTS = function () {\n\tvar element = _document2.default.createElement('x'),\n\t documentElement = _document2.default.documentElement,\n\t getComputedStyle = _window2.default.getComputedStyle;\n\n\tif (!('pointerEvents' in element.style)) {\n\t\treturn false;\n\t}\n\n\telement.style.pointerEvents = 'auto';\n\telement.style.pointerEvents = 'x';\n\tdocumentElement.appendChild(element);\n\tvar supports = getComputedStyle && (getComputedStyle(element, '') || {}).pointerEvents === 'auto';\n\telement.remove();\n\treturn !!supports;\n}();\n\nvar SUPPORT_PASSIVE_EVENT = exports.SUPPORT_PASSIVE_EVENT = function () {\n\tvar supportsPassive = false;\n\ttry {\n\t\tvar opts = Object.defineProperty({}, 'passive', {\n\t\t\tget: function get() {\n\t\t\t\tsupportsPassive = true;\n\t\t\t}\n\t\t});\n\t\t_window2.default.addEventListener('test', null, opts);\n\t} catch (e) {}\n\n\treturn supportsPassive;\n}();\n\nvar html5Elements = ['source', 'track', 'audio', 'video'];\nvar video = void 0;\n\nfor (var i = 0, total = html5Elements.length; i < total; i++) {\n\tvideo = _document2.default.createElement(html5Elements[i]);\n}\n\nvar SUPPORTS_NATIVE_HLS = exports.SUPPORTS_NATIVE_HLS = IS_SAFARI || IS_IE && /edge/i.test(UA);\n\nvar hasiOSFullScreen = video.webkitEnterFullscreen !== undefined;\n\nvar hasNativeFullscreen = video.requestFullscreen !== undefined;\n\nif (hasiOSFullScreen && /mac os x 10_5/i.test(UA)) {\n\thasNativeFullscreen = false;\n\thasiOSFullScreen = false;\n}\n\nvar hasWebkitNativeFullScreen = video.webkitRequestFullScreen !== undefined;\nvar hasMozNativeFullScreen = video.mozRequestFullScreen !== undefined;\nvar hasMsNativeFullScreen = video.msRequestFullscreen !== undefined;\nvar hasTrueNativeFullScreen = hasWebkitNativeFullScreen || hasMozNativeFullScreen || hasMsNativeFullScreen;\nvar nativeFullScreenEnabled = hasTrueNativeFullScreen;\nvar fullScreenEventName = '';\nvar isFullScreen = void 0,\n requestFullScreen = void 0,\n cancelFullScreen = void 0;\n\nif (hasMozNativeFullScreen) {\n\tnativeFullScreenEnabled = _document2.default.mozFullScreenEnabled;\n} else if (hasMsNativeFullScreen) {\n\tnativeFullScreenEnabled = _document2.default.msFullscreenEnabled;\n}\n\nif (IS_CHROME) {\n\thasiOSFullScreen = false;\n}\n\nif (hasTrueNativeFullScreen) {\n\tif (hasWebkitNativeFullScreen) {\n\t\tfullScreenEventName = 'webkitfullscreenchange';\n\t} else if (hasMozNativeFullScreen) {\n\t\tfullScreenEventName = 'fullscreenchange';\n\t} else if (hasMsNativeFullScreen) {\n\t\tfullScreenEventName = 'MSFullscreenChange';\n\t}\n\n\texports.isFullScreen = isFullScreen = function isFullScreen() {\n\t\tif (hasMozNativeFullScreen) {\n\t\t\treturn _document2.default.mozFullScreen;\n\t\t} else if (hasWebkitNativeFullScreen) {\n\t\t\treturn _document2.default.webkitIsFullScreen;\n\t\t} else if (hasMsNativeFullScreen) {\n\t\t\treturn _document2.default.msFullscreenElement !== null;\n\t\t}\n\t};\n\n\texports.requestFullScreen = requestFullScreen = function requestFullScreen(el) {\n\t\tif (hasWebkitNativeFullScreen) {\n\t\t\tel.webkitRequestFullScreen();\n\t\t} else if (hasMozNativeFullScreen) {\n\t\t\tel.mozRequestFullScreen();\n\t\t} else if (hasMsNativeFullScreen) {\n\t\t\tel.msRequestFullscreen();\n\t\t}\n\t};\n\n\texports.cancelFullScreen = cancelFullScreen = function cancelFullScreen() {\n\t\tif (hasWebkitNativeFullScreen) {\n\t\t\t_document2.default.webkitCancelFullScreen();\n\t\t} else if (hasMozNativeFullScreen) {\n\t\t\t_document2.default.mozCancelFullScreen();\n\t\t} else if (hasMsNativeFullScreen) {\n\t\t\t_document2.default.msExitFullscreen();\n\t\t}\n\t};\n}\n\nvar HAS_NATIVE_FULLSCREEN = exports.HAS_NATIVE_FULLSCREEN = hasNativeFullscreen;\nvar HAS_WEBKIT_NATIVE_FULLSCREEN = exports.HAS_WEBKIT_NATIVE_FULLSCREEN = hasWebkitNativeFullScreen;\nvar HAS_MOZ_NATIVE_FULLSCREEN = exports.HAS_MOZ_NATIVE_FULLSCREEN = hasMozNativeFullScreen;\nvar HAS_MS_NATIVE_FULLSCREEN = exports.HAS_MS_NATIVE_FULLSCREEN = hasMsNativeFullScreen;\nvar HAS_IOS_FULLSCREEN = exports.HAS_IOS_FULLSCREEN = hasiOSFullScreen;\nvar HAS_TRUE_NATIVE_FULLSCREEN = exports.HAS_TRUE_NATIVE_FULLSCREEN = hasTrueNativeFullScreen;\nvar HAS_NATIVE_FULLSCREEN_ENABLED = exports.HAS_NATIVE_FULLSCREEN_ENABLED = nativeFullScreenEnabled;\nvar FULLSCREEN_EVENT_NAME = exports.FULLSCREEN_EVENT_NAME = fullScreenEventName;\nexports.isFullScreen = isFullScreen;\nexports.requestFullScreen = requestFullScreen;\nexports.cancelFullScreen = cancelFullScreen;\n\n\n_mejs2.default.Features = _mejs2.default.Features || {};\n_mejs2.default.Features.isiPad = IS_IPAD;\n_mejs2.default.Features.isiPod = IS_IPOD;\n_mejs2.default.Features.isiPhone = IS_IPHONE;\n_mejs2.default.Features.isiOS = _mejs2.default.Features.isiPhone || _mejs2.default.Features.isiPad;\n_mejs2.default.Features.isAndroid = IS_ANDROID;\n_mejs2.default.Features.isIE = IS_IE;\n_mejs2.default.Features.isEdge = IS_EDGE;\n_mejs2.default.Features.isChrome = IS_CHROME;\n_mejs2.default.Features.isFirefox = IS_FIREFOX;\n_mejs2.default.Features.isSafari = IS_SAFARI;\n_mejs2.default.Features.isStockAndroid = IS_STOCK_ANDROID;\n_mejs2.default.Features.hasMSE = HAS_MSE;\n_mejs2.default.Features.supportsNativeHLS = SUPPORTS_NATIVE_HLS;\n_mejs2.default.Features.supportsPointerEvents = SUPPORT_POINTER_EVENTS;\n_mejs2.default.Features.supportsPassiveEvent = SUPPORT_PASSIVE_EVENT;\n_mejs2.default.Features.hasiOSFullScreen = HAS_IOS_FULLSCREEN;\n_mejs2.default.Features.hasNativeFullscreen = HAS_NATIVE_FULLSCREEN;\n_mejs2.default.Features.hasWebkitNativeFullScreen = HAS_WEBKIT_NATIVE_FULLSCREEN;\n_mejs2.default.Features.hasMozNativeFullScreen = HAS_MOZ_NATIVE_FULLSCREEN;\n_mejs2.default.Features.hasMsNativeFullScreen = HAS_MS_NATIVE_FULLSCREEN;\n_mejs2.default.Features.hasTrueNativeFullScreen = HAS_TRUE_NATIVE_FULLSCREEN;\n_mejs2.default.Features.nativeFullScreenEnabled = HAS_NATIVE_FULLSCREEN_ENABLED;\n_mejs2.default.Features.fullScreenEventName = FULLSCREEN_EVENT_NAME;\n_mejs2.default.Features.isFullScreen = isFullScreen;\n_mejs2.default.Features.requestFullScreen = requestFullScreen;\n_mejs2.default.Features.cancelFullScreen = cancelFullScreen;\n\n},{\"2\":2,\"3\":3,\"7\":7}],26:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.removeClass = exports.addClass = exports.hasClass = undefined;\nexports.loadScript = loadScript;\nexports.offset = offset;\nexports.toggleClass = toggleClass;\nexports.fadeOut = fadeOut;\nexports.fadeIn = fadeIn;\nexports.siblings = siblings;\nexports.visible = visible;\nexports.ajax = ajax;\n\nvar _window = _dereq_(3);\n\nvar _window2 = _interopRequireDefault(_window);\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction loadScript(url) {\n\treturn new Promise(function (resolve, reject) {\n\t\tvar script = _document2.default.createElement('script');\n\t\tscript.src = url;\n\t\tscript.async = true;\n\t\tscript.onload = function () {\n\t\t\tscript.remove();\n\t\t\tresolve();\n\t\t};\n\t\tscript.onerror = function () {\n\t\t\tscript.remove();\n\t\t\treject();\n\t\t};\n\t\t_document2.default.head.appendChild(script);\n\t});\n}\n\nfunction offset(el) {\n\tvar rect = el.getBoundingClientRect(),\n\t scrollLeft = _window2.default.pageXOffset || _document2.default.documentElement.scrollLeft,\n\t scrollTop = _window2.default.pageYOffset || _document2.default.documentElement.scrollTop;\n\treturn { top: rect.top + scrollTop, left: rect.left + scrollLeft };\n}\n\nvar hasClassMethod = void 0,\n addClassMethod = void 0,\n removeClassMethod = void 0;\n\nif ('classList' in _document2.default.documentElement) {\n\thasClassMethod = function hasClassMethod(el, className) {\n\t\treturn el.classList !== undefined && el.classList.contains(className);\n\t};\n\taddClassMethod = function addClassMethod(el, className) {\n\t\treturn el.classList.add(className);\n\t};\n\tremoveClassMethod = function removeClassMethod(el, className) {\n\t\treturn el.classList.remove(className);\n\t};\n} else {\n\thasClassMethod = function hasClassMethod(el, className) {\n\t\treturn new RegExp('\\\\b' + className + '\\\\b').test(el.className);\n\t};\n\taddClassMethod = function addClassMethod(el, className) {\n\t\tif (!hasClass(el, className)) {\n\t\t\tel.className += ' ' + className;\n\t\t}\n\t};\n\tremoveClassMethod = function removeClassMethod(el, className) {\n\t\tel.className = el.className.replace(new RegExp('\\\\b' + className + '\\\\b', 'g'), '');\n\t};\n}\n\nvar hasClass = exports.hasClass = hasClassMethod;\nvar addClass = exports.addClass = addClassMethod;\nvar removeClass = exports.removeClass = removeClassMethod;\n\nfunction toggleClass(el, className) {\n\thasClass(el, className) ? removeClass(el, className) : addClass(el, className);\n}\n\nfunction fadeOut(el) {\n\tvar duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 400;\n\tvar callback = arguments[2];\n\n\tif (!el.style.opacity) {\n\t\tel.style.opacity = 1;\n\t}\n\n\tvar start = null;\n\t_window2.default.requestAnimationFrame(function animate(timestamp) {\n\t\tstart = start || timestamp;\n\t\tvar progress = timestamp - start;\n\t\tvar opacity = parseFloat(1 - progress / duration, 2);\n\t\tel.style.opacity = opacity < 0 ? 0 : opacity;\n\t\tif (progress > duration) {\n\t\t\tif (callback && typeof callback === 'function') {\n\t\t\t\tcallback();\n\t\t\t}\n\t\t} else {\n\t\t\t_window2.default.requestAnimationFrame(animate);\n\t\t}\n\t});\n}\n\nfunction fadeIn(el) {\n\tvar duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 400;\n\tvar callback = arguments[2];\n\n\tif (!el.style.opacity) {\n\t\tel.style.opacity = 0;\n\t}\n\n\tvar start = null;\n\t_window2.default.requestAnimationFrame(function animate(timestamp) {\n\t\tstart = start || timestamp;\n\t\tvar progress = timestamp - start;\n\t\tvar opacity = parseFloat(progress / duration, 2);\n\t\tel.style.opacity = opacity > 1 ? 1 : opacity;\n\t\tif (progress > duration) {\n\t\t\tif (callback && typeof callback === 'function') {\n\t\t\t\tcallback();\n\t\t\t}\n\t\t} else {\n\t\t\t_window2.default.requestAnimationFrame(animate);\n\t\t}\n\t});\n}\n\nfunction siblings(el, filter) {\n\tvar siblings = [];\n\tel = el.parentNode.firstChild;\n\tdo {\n\t\tif (!filter || filter(el)) {\n\t\t\tsiblings.push(el);\n\t\t}\n\t} while (el = el.nextSibling);\n\treturn siblings;\n}\n\nfunction visible(elem) {\n\tif (elem.getClientRects !== undefined && elem.getClientRects === 'function') {\n\t\treturn !!(elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length);\n\t}\n\treturn !!(elem.offsetWidth || elem.offsetHeight);\n}\n\nfunction ajax(url, dataType, success, error) {\n\tvar xhr = _window2.default.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');\n\txhr.withCredentials = true;\n\n\tvar type = 'application/x-www-form-urlencoded; charset=UTF-8',\n\t completed = false,\n\t accept = '*/'.concat('*');\n\n\tswitch (dataType) {\n\t\tcase 'text':\n\t\t\ttype = 'text/plain';\n\t\t\tbreak;\n\t\tcase 'json':\n\t\t\ttype = 'application/json, text/javascript';\n\t\t\tbreak;\n\t\tcase 'html':\n\t\t\ttype = 'text/html';\n\t\t\tbreak;\n\t\tcase 'xml':\n\t\t\ttype = 'application/xml, text/xml';\n\t\t\tbreak;\n\t}\n\n\tif (type !== 'application/x-www-form-urlencoded') {\n\t\taccept = type + ', */*; q=0.01';\n\t}\n\n\tif (xhr) {\n\t\txhr.open('GET', url, true);\n\t\txhr.setRequestHeader('Accept', accept);\n\t\txhr.onreadystatechange = function () {\n\t\t\tif (completed) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (xhr.readyState === 4) {\n\t\t\t\tif (xhr.status === 200) {\n\t\t\t\t\tcompleted = true;\n\t\t\t\t\tvar data = void 0;\n\t\t\t\t\tswitch (dataType) {\n\t\t\t\t\t\tcase 'json':\n\t\t\t\t\t\t\tdata = JSON.parse(xhr.responseText);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'xml':\n\t\t\t\t\t\t\tdata = xhr.responseXML;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tdata = xhr.responseText;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tsuccess(data);\n\t\t\t\t} else if (typeof error === 'function') {\n\t\t\t\t\terror(xhr.status);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\txhr.send();\n\t}\n}\n\n_mejs2.default.Utils = _mejs2.default.Utils || {};\n_mejs2.default.Utils.offset = offset;\n_mejs2.default.Utils.hasClass = hasClass;\n_mejs2.default.Utils.addClass = addClass;\n_mejs2.default.Utils.removeClass = removeClass;\n_mejs2.default.Utils.toggleClass = toggleClass;\n_mejs2.default.Utils.fadeIn = fadeIn;\n_mejs2.default.Utils.fadeOut = fadeOut;\n_mejs2.default.Utils.siblings = siblings;\n_mejs2.default.Utils.visible = visible;\n_mejs2.default.Utils.ajax = ajax;\n_mejs2.default.Utils.loadScript = loadScript;\n\n},{\"2\":2,\"3\":3,\"7\":7}],27:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.escapeHTML = escapeHTML;\nexports.debounce = debounce;\nexports.isObjectEmpty = isObjectEmpty;\nexports.splitEvents = splitEvents;\nexports.createEvent = createEvent;\nexports.isNodeAfter = isNodeAfter;\nexports.isString = isString;\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction escapeHTML(input) {\n\n\tif (typeof input !== 'string') {\n\t\tthrow new Error('Argument passed must be a string');\n\t}\n\n\tvar map = {\n\t\t'&': '&',\n\t\t'<': '<',\n\t\t'>': '>',\n\t\t'\"': '"'\n\t};\n\n\treturn input.replace(/[&<>\"]/g, function (c) {\n\t\treturn map[c];\n\t});\n}\n\nfunction debounce(func, wait) {\n\tvar _this = this,\n\t _arguments = arguments;\n\n\tvar immediate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n\n\tif (typeof func !== 'function') {\n\t\tthrow new Error('First argument must be a function');\n\t}\n\n\tif (typeof wait !== 'number') {\n\t\tthrow new Error('Second argument must be a numeric value');\n\t}\n\n\tvar timeout = void 0;\n\treturn function () {\n\t\tvar context = _this,\n\t\t args = _arguments;\n\t\tvar later = function later() {\n\t\t\ttimeout = null;\n\t\t\tif (!immediate) {\n\t\t\t\tfunc.apply(context, args);\n\t\t\t}\n\t\t};\n\t\tvar callNow = immediate && !timeout;\n\t\tclearTimeout(timeout);\n\t\ttimeout = setTimeout(later, wait);\n\n\t\tif (callNow) {\n\t\t\tfunc.apply(context, args);\n\t\t}\n\t};\n}\n\nfunction isObjectEmpty(instance) {\n\treturn Object.getOwnPropertyNames(instance).length <= 0;\n}\n\nfunction splitEvents(events, id) {\n\tvar rwindow = /^((after|before)print|(before)?unload|hashchange|message|o(ff|n)line|page(hide|show)|popstate|resize|storage)\\b/;\n\n\tvar ret = { d: [], w: [] };\n\t(events || '').split(' ').forEach(function (v) {\n\t\tvar eventName = '' + v + (id ? '.' + id : '');\n\n\t\tif (eventName.startsWith('.')) {\n\t\t\tret.d.push(eventName);\n\t\t\tret.w.push(eventName);\n\t\t} else {\n\t\t\tret[rwindow.test(v) ? 'w' : 'd'].push(eventName);\n\t\t}\n\t});\n\n\tret.d = ret.d.join(' ');\n\tret.w = ret.w.join(' ');\n\treturn ret;\n}\n\nfunction createEvent(eventName, target) {\n\n\tif (typeof eventName !== 'string') {\n\t\tthrow new Error('Event name must be a string');\n\t}\n\n\tvar eventFrags = eventName.match(/([a-z]+\\.([a-z]+))/i),\n\t detail = {\n\t\ttarget: target\n\t};\n\n\tif (eventFrags !== null) {\n\t\teventName = eventFrags[1];\n\t\tdetail.namespace = eventFrags[2];\n\t}\n\n\treturn new window.CustomEvent(eventName, {\n\t\tdetail: detail\n\t});\n}\n\nfunction isNodeAfter(sourceNode, targetNode) {\n\n\treturn !!(sourceNode && targetNode && sourceNode.compareDocumentPosition(targetNode) & 2);\n}\n\nfunction isString(value) {\n\treturn typeof value === 'string';\n}\n\n_mejs2.default.Utils = _mejs2.default.Utils || {};\n_mejs2.default.Utils.escapeHTML = escapeHTML;\n_mejs2.default.Utils.debounce = debounce;\n_mejs2.default.Utils.isObjectEmpty = isObjectEmpty;\n_mejs2.default.Utils.splitEvents = splitEvents;\n_mejs2.default.Utils.createEvent = createEvent;\n_mejs2.default.Utils.isNodeAfter = isNodeAfter;\n_mejs2.default.Utils.isString = isString;\n\n},{\"7\":7}],28:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.typeChecks = undefined;\nexports.absolutizeUrl = absolutizeUrl;\nexports.formatType = formatType;\nexports.getMimeFromType = getMimeFromType;\nexports.getTypeFromFile = getTypeFromFile;\nexports.getExtension = getExtension;\nexports.normalizeExtension = normalizeExtension;\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nvar _general = _dereq_(27);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar typeChecks = exports.typeChecks = [];\n\nfunction absolutizeUrl(url) {\n\n\tif (typeof url !== 'string') {\n\t\tthrow new Error('`url` argument must be a string');\n\t}\n\n\tvar el = document.createElement('div');\n\tel.innerHTML = 'x';\n\treturn el.firstChild.href;\n}\n\nfunction formatType(url) {\n\tvar type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n\n\treturn url && !type ? getTypeFromFile(url) : type;\n}\n\nfunction getMimeFromType(type) {\n\n\tif (typeof type !== 'string') {\n\t\tthrow new Error('`type` argument must be a string');\n\t}\n\n\treturn type && type.indexOf(';') > -1 ? type.substr(0, type.indexOf(';')) : type;\n}\n\nfunction getTypeFromFile(url) {\n\n\tif (typeof url !== 'string') {\n\t\tthrow new Error('`url` argument must be a string');\n\t}\n\n\tfor (var i = 0, total = typeChecks.length; i < total; i++) {\n\t\tvar type = typeChecks[i](url);\n\n\t\tif (type) {\n\t\t\treturn type;\n\t\t}\n\t}\n\n\tvar ext = getExtension(url),\n\t normalizedExt = normalizeExtension(ext);\n\n\tvar mime = 'video/mp4';\n\n\tif (normalizedExt) {\n\t\tif (~['mp4', 'm4v', 'ogg', 'ogv', 'webm', 'flv', 'mpeg'].indexOf(normalizedExt)) {\n\t\t\tmime = 'video/' + normalizedExt;\n\t\t} else if ('mov' === normalizedExt) {\n\t\t\tmime = 'video/quicktime';\n\t\t} else if (~['mp3', 'oga', 'wav', 'mid', 'midi'].indexOf(normalizedExt)) {\n\t\t\tmime = 'audio/' + normalizedExt;\n\t\t}\n\t}\n\n\treturn mime;\n}\n\nfunction getExtension(url) {\n\n\tif (typeof url !== 'string') {\n\t\tthrow new Error('`url` argument must be a string');\n\t}\n\n\tvar baseUrl = url.split('?')[0],\n\t baseName = baseUrl.split('\\\\').pop().split('/').pop();\n\treturn ~baseName.indexOf('.') ? baseName.substring(baseName.lastIndexOf('.') + 1) : '';\n}\n\nfunction normalizeExtension(extension) {\n\n\tif (typeof extension !== 'string') {\n\t\tthrow new Error('`extension` argument must be a string');\n\t}\n\n\tswitch (extension) {\n\t\tcase 'mp4':\n\t\tcase 'm4v':\n\t\t\treturn 'mp4';\n\t\tcase 'webm':\n\t\tcase 'webma':\n\t\tcase 'webmv':\n\t\t\treturn 'webm';\n\t\tcase 'ogg':\n\t\tcase 'oga':\n\t\tcase 'ogv':\n\t\t\treturn 'ogg';\n\t\tdefault:\n\t\t\treturn extension;\n\t}\n}\n\n_mejs2.default.Utils = _mejs2.default.Utils || {};\n_mejs2.default.Utils.typeChecks = typeChecks;\n_mejs2.default.Utils.absolutizeUrl = absolutizeUrl;\n_mejs2.default.Utils.formatType = formatType;\n_mejs2.default.Utils.getMimeFromType = getMimeFromType;\n_mejs2.default.Utils.getTypeFromFile = getTypeFromFile;\n_mejs2.default.Utils.getExtension = getExtension;\n_mejs2.default.Utils.normalizeExtension = normalizeExtension;\n\n},{\"27\":27,\"7\":7}],29:[function(_dereq_,module,exports){\n'use strict';\n\nvar _document = _dereq_(2);\n\nvar _document2 = _interopRequireDefault(_document);\n\nvar _promisePolyfill = _dereq_(4);\n\nvar _promisePolyfill2 = _interopRequireDefault(_promisePolyfill);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n(function (arr) {\n\tarr.forEach(function (item) {\n\t\tif (item.hasOwnProperty('remove')) {\n\t\t\treturn;\n\t\t}\n\t\tObject.defineProperty(item, 'remove', {\n\t\t\tconfigurable: true,\n\t\t\tenumerable: true,\n\t\t\twritable: true,\n\t\t\tvalue: function remove() {\n\t\t\t\tthis.parentNode.removeChild(this);\n\t\t\t}\n\t\t});\n\t});\n})([Element.prototype, CharacterData.prototype, DocumentType.prototype]);\n\n(function () {\n\n\tif (typeof window.CustomEvent === 'function') {\n\t\treturn false;\n\t}\n\n\tfunction CustomEvent(event, params) {\n\t\tparams = params || { bubbles: false, cancelable: false, detail: undefined };\n\t\tvar evt = _document2.default.createEvent('CustomEvent');\n\t\tevt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\n\t\treturn evt;\n\t}\n\n\tCustomEvent.prototype = window.Event.prototype;\n\twindow.CustomEvent = CustomEvent;\n})();\n\nif (typeof Object.assign !== 'function') {\n\tObject.assign = function (target) {\n\n\t\tif (target === null || target === undefined) {\n\t\t\tthrow new TypeError('Cannot convert undefined or null to object');\n\t\t}\n\n\t\tvar to = Object(target);\n\n\t\tfor (var index = 1, total = arguments.length; index < total; index++) {\n\t\t\tvar nextSource = arguments[index];\n\n\t\t\tif (nextSource !== null) {\n\t\t\t\tfor (var nextKey in nextSource) {\n\t\t\t\t\tif (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {\n\t\t\t\t\t\tto[nextKey] = nextSource[nextKey];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn to;\n\t};\n}\n\nif (!String.prototype.startsWith) {\n\tString.prototype.startsWith = function (searchString, position) {\n\t\tposition = position || 0;\n\t\treturn this.substr(position, searchString.length) === searchString;\n\t};\n}\n\nif (!Element.prototype.matches) {\n\tElement.prototype.matches = Element.prototype.matchesSelector || Element.prototype.mozMatchesSelector || Element.prototype.msMatchesSelector || Element.prototype.oMatchesSelector || Element.prototype.webkitMatchesSelector || function (s) {\n\t\tvar matches = (this.document || this.ownerDocument).querySelectorAll(s),\n\t\t i = matches.length - 1;\n\t\twhile (--i >= 0 && matches.item(i) !== this) {}\n\t\treturn i > -1;\n\t};\n}\n\nif (window.Element && !Element.prototype.closest) {\n\tElement.prototype.closest = function (s) {\n\t\tvar matches = (this.document || this.ownerDocument).querySelectorAll(s),\n\t\t i = void 0,\n\t\t el = this;\n\t\tdo {\n\t\t\ti = matches.length;\n\t\t\twhile (--i >= 0 && matches.item(i) !== el) {}\n\t\t} while (i < 0 && (el = el.parentElement));\n\t\treturn el;\n\t};\n}\n\n(function () {\n\tvar lastTime = 0;\n\tvar vendors = ['ms', 'moz', 'webkit', 'o'];\n\tfor (var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {\n\t\twindow.requestAnimationFrame = window[vendors[x] + 'RequestAnimationFrame'];\n\t\twindow.cancelAnimationFrame = window[vendors[x] + 'CancelAnimationFrame'] || window[vendors[x] + 'CancelRequestAnimationFrame'];\n\t}\n\n\tif (!window.requestAnimationFrame) window.requestAnimationFrame = function (callback) {\n\t\tvar currTime = new Date().getTime();\n\t\tvar timeToCall = Math.max(0, 16 - (currTime - lastTime));\n\t\tvar id = window.setTimeout(function () {\n\t\t\tcallback(currTime + timeToCall);\n\t\t}, timeToCall);\n\t\tlastTime = currTime + timeToCall;\n\t\treturn id;\n\t};\n\n\tif (!window.cancelAnimationFrame) window.cancelAnimationFrame = function (id) {\n\t\tclearTimeout(id);\n\t};\n})();\n\nif (/firefox/i.test(navigator.userAgent)) {\n\tvar getComputedStyle = window.getComputedStyle;\n\twindow.getComputedStyle = function (el, pseudoEl) {\n\t\tvar t = getComputedStyle(el, pseudoEl);\n\t\treturn t === null ? { getPropertyValue: function getPropertyValue() {} } : t;\n\t};\n}\n\nif (!window.Promise) {\n\twindow.Promise = _promisePolyfill2.default;\n}\n\n(function (constructor) {\n\tif (constructor && constructor.prototype && constructor.prototype.children === null) {\n\t\tObject.defineProperty(constructor.prototype, 'children', {\n\t\t\tget: function get() {\n\t\t\t\tvar i = 0,\n\t\t\t\t node = void 0,\n\t\t\t\t nodes = this.childNodes,\n\t\t\t\t children = [];\n\t\t\t\twhile (node = nodes[i++]) {\n\t\t\t\t\tif (node.nodeType === 1) {\n\t\t\t\t\t\tchildren.push(node);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn children;\n\t\t\t}\n\t\t});\n\t}\n})(window.Node || window.Element);\n\n},{\"2\":2,\"4\":4}],30:[function(_dereq_,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.isDropFrame = isDropFrame;\nexports.secondsToTimeCode = secondsToTimeCode;\nexports.timeCodeToSeconds = timeCodeToSeconds;\nexports.calculateTimeFormat = calculateTimeFormat;\nexports.convertSMPTEtoSeconds = convertSMPTEtoSeconds;\n\nvar _mejs = _dereq_(7);\n\nvar _mejs2 = _interopRequireDefault(_mejs);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction isDropFrame() {\n\tvar fps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 25;\n\n\treturn !(fps % 1 === 0);\n}\nfunction secondsToTimeCode(time) {\n\tvar forceHours = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\tvar showFrameCount = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\tvar fps = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 25;\n\tvar secondsDecimalLength = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;\n\tvar timeFormat = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'hh:mm:ss';\n\n\n\ttime = !time || typeof time !== 'number' || time < 0 ? 0 : time;\n\n\tvar dropFrames = Math.round(fps * 0.066666),\n\t timeBase = Math.round(fps),\n\t framesPer24Hours = Math.round(fps * 3600) * 24,\n\t framesPer10Minutes = Math.round(fps * 600),\n\t frameSep = isDropFrame(fps) ? ';' : ':',\n\t hours = void 0,\n\t minutes = void 0,\n\t seconds = void 0,\n\t frames = void 0,\n\t f = Math.round(time * fps);\n\n\tif (isDropFrame(fps)) {\n\n\t\tif (f < 0) {\n\t\t\tf = framesPer24Hours + f;\n\t\t}\n\n\t\tf = f % framesPer24Hours;\n\n\t\tvar d = Math.floor(f / framesPer10Minutes);\n\t\tvar m = f % framesPer10Minutes;\n\t\tf = f + dropFrames * 9 * d;\n\t\tif (m > dropFrames) {\n\t\t\tf = f + dropFrames * Math.floor((m - dropFrames) / Math.round(timeBase * 60 - dropFrames));\n\t\t}\n\n\t\tvar timeBaseDivision = Math.floor(f / timeBase);\n\n\t\thours = Math.floor(Math.floor(timeBaseDivision / 60) / 60);\n\t\tminutes = Math.floor(timeBaseDivision / 60) % 60;\n\n\t\tif (showFrameCount) {\n\t\t\tseconds = timeBaseDivision % 60;\n\t\t} else {\n\t\t\tseconds = Math.floor(f / timeBase % 60).toFixed(secondsDecimalLength);\n\t\t}\n\t} else {\n\t\thours = Math.floor(time / 3600) % 24;\n\t\tminutes = Math.floor(time / 60) % 60;\n\t\tif (showFrameCount) {\n\t\t\tseconds = Math.floor(time % 60);\n\t\t} else {\n\t\t\tseconds = Math.floor(time % 60).toFixed(secondsDecimalLength);\n\t\t}\n\t}\n\thours = hours <= 0 ? 0 : hours;\n\tminutes = minutes <= 0 ? 0 : minutes;\n\tseconds = seconds <= 0 ? 0 : seconds;\n\n\tseconds = seconds === 60 ? 0 : seconds;\n\tminutes = minutes === 60 ? 0 : minutes;\n\n\tvar timeFormatFrags = timeFormat.split(':');\n\tvar timeFormatSettings = {};\n\tfor (var i = 0, total = timeFormatFrags.length; i < total; ++i) {\n\t\tvar unique = '';\n\t\tfor (var j = 0, t = timeFormatFrags[i].length; j < t; j++) {\n\t\t\tif (unique.indexOf(timeFormatFrags[i][j]) < 0) {\n\t\t\t\tunique += timeFormatFrags[i][j];\n\t\t\t}\n\t\t}\n\t\tif (~['f', 's', 'm', 'h'].indexOf(unique)) {\n\t\t\ttimeFormatSettings[unique] = timeFormatFrags[i].length;\n\t\t}\n\t}\n\n\tvar result = forceHours || hours > 0 ? (hours < 10 && timeFormatSettings.h > 1 ? '0' + hours : hours) + ':' : '';\n\tresult += (minutes < 10 && timeFormatSettings.m > 1 ? '0' + minutes : minutes) + ':';\n\tresult += '' + (seconds < 10 && timeFormatSettings.s > 1 ? '0' + seconds : seconds);\n\n\tif (showFrameCount) {\n\t\tframes = (f % timeBase).toFixed(0);\n\t\tframes = frames <= 0 ? 0 : frames;\n\t\tresult += frames < 10 && timeFormatSettings.f ? frameSep + '0' + frames : '' + frameSep + frames;\n\t}\n\n\treturn result;\n}\n\nfunction timeCodeToSeconds(time) {\n\tvar fps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 25;\n\n\n\tif (typeof time !== 'string') {\n\t\tthrow new TypeError('Time must be a string');\n\t}\n\n\tif (time.indexOf(';') > 0) {\n\t\ttime = time.replace(';', ':');\n\t}\n\n\tif (!/\\d{2}(\\:\\d{2}){0,3}/i.test(time)) {\n\t\tthrow new TypeError('Time code must have the format `00:00:00`');\n\t}\n\n\tvar parts = time.split(':');\n\n\tvar output = void 0,\n\t hours = 0,\n\t minutes = 0,\n\t seconds = 0,\n\t frames = 0,\n\t totalMinutes = 0,\n\t dropFrames = Math.round(fps * 0.066666),\n\t timeBase = Math.round(fps),\n\t hFrames = timeBase * 3600,\n\t mFrames = timeBase * 60;\n\n\tswitch (parts.length) {\n\t\tdefault:\n\t\tcase 1:\n\t\t\tseconds = parseInt(parts[0], 10);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tminutes = parseInt(parts[0], 10);\n\t\t\tseconds = parseInt(parts[1], 10);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\thours = parseInt(parts[0], 10);\n\t\t\tminutes = parseInt(parts[1], 10);\n\t\t\tseconds = parseInt(parts[2], 10);\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\thours = parseInt(parts[0], 10);\n\t\t\tminutes = parseInt(parts[1], 10);\n\t\t\tseconds = parseInt(parts[2], 10);\n\t\t\tframes = parseInt(parts[3], 10);\n\t\t\tbreak;\n\t}\n\n\tif (isDropFrame(fps)) {\n\t\ttotalMinutes = 60 * hours + minutes;\n\t\toutput = hFrames * hours + mFrames * minutes + timeBase * seconds + frames - dropFrames * (totalMinutes - Math.floor(totalMinutes / 10));\n\t} else {\n\t\toutput = (hFrames * hours + mFrames * minutes + fps * seconds + frames) / fps;\n\t}\n\n\treturn parseFloat(output.toFixed(3));\n}\n\nfunction calculateTimeFormat(time, options) {\n\tvar fps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 25;\n\n\n\ttime = !time || typeof time !== 'number' || time < 0 ? 0 : time;\n\n\tvar hours = Math.floor(time / 3600) % 24,\n\t minutes = Math.floor(time / 60) % 60,\n\t seconds = Math.floor(time % 60),\n\t frames = Math.floor((time % 1 * fps).toFixed(3)),\n\t lis = [[frames, 'f'], [seconds, 's'], [minutes, 'm'], [hours, 'h']];\n\n\tvar format = options.timeFormat,\n\t firstTwoPlaces = format[1] === format[0],\n\t separatorIndex = firstTwoPlaces ? 2 : 1,\n\t separator = format.length < separatorIndex ? format[separatorIndex] : ':',\n\t firstChar = format[0],\n\t required = false;\n\n\tfor (var i = 0, len = lis.length; i < len; i++) {\n\t\tif (~format.indexOf(lis[i][1])) {\n\t\t\trequired = true;\n\t\t} else if (required) {\n\t\t\tvar hasNextValue = false;\n\t\t\tfor (var j = i; j < len; j++) {\n\t\t\t\tif (lis[j][0] > 0) {\n\t\t\t\t\thasNextValue = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!hasNextValue) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (!firstTwoPlaces) {\n\t\t\t\tformat = firstChar + format;\n\t\t\t}\n\t\t\tformat = lis[i][1] + separator + format;\n\t\t\tif (firstTwoPlaces) {\n\t\t\t\tformat = lis[i][1] + format;\n\t\t\t}\n\t\t\tfirstChar = lis[i][1];\n\t\t}\n\t}\n\n\toptions.timeFormat = format;\n}\n\nfunction convertSMPTEtoSeconds(SMPTE) {\n\n\tif (typeof SMPTE !== 'string') {\n\t\tthrow new TypeError('Argument must be a string value');\n\t}\n\n\tSMPTE = SMPTE.replace(',', '.');\n\n\tvar decimalLen = ~SMPTE.indexOf('.') ? SMPTE.split('.')[1].length : 0;\n\n\tvar secs = 0,\n\t multiplier = 1;\n\n\tSMPTE = SMPTE.split(':').reverse();\n\n\tfor (var i = 0, total = SMPTE.length; i < total; i++) {\n\t\tmultiplier = 1;\n\t\tif (i > 0) {\n\t\t\tmultiplier = Math.pow(60, i);\n\t\t}\n\t\tsecs += Number(SMPTE[i]) * multiplier;\n\t}\n\treturn Number(secs.toFixed(decimalLen));\n}\n\n_mejs2.default.Utils = _mejs2.default.Utils || {};\n_mejs2.default.Utils.secondsToTimeCode = secondsToTimeCode;\n_mejs2.default.Utils.timeCodeToSeconds = timeCodeToSeconds;\n_mejs2.default.Utils.calculateTimeFormat = calculateTimeFormat;\n_mejs2.default.Utils.convertSMPTEtoSeconds = convertSMPTEtoSeconds;\n\n},{\"7\":7}]},{},[29,6,5,15,23,20,19,21,22,24,16,18,17,9,10,11,12,13,14]);\n"],"sourceRoot":""} \ No newline at end of file diff --git a/ui/dist/async_main_357f8768.dc63956c75681b023819.bundle.js.map.gz b/ui/dist/async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.map.gz similarity index 52% rename from ui/dist/async_main_357f8768.dc63956c75681b023819.bundle.js.map.gz rename to ui/dist/async_main_357f8768.c8a5d568b3002b296cb0.bundle.js.map.gz index b7067dc453625a7c7a3e3bd9d33748abd2774a84..fed065e60f83ad59ba24999b1f286d5933d573ac 100644 GIT binary patch delta 53596 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 KJ}>b;ga-iWVf^O+ diff --git a/ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.css b/ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.css similarity index 100% rename from ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.css rename to ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.css diff --git a/ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.css.gz b/ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.css.gz similarity index 100% rename from ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.css.gz rename to ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.css.gz diff --git a/ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.js b/ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js similarity index 99% rename from ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.js rename to ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js index 3fdac83..f15e21d 100644 --- a/ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.js +++ b/ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js @@ -10,4 +10,4 @@ * * @see core/i18n.js */!function(e){void 0===e.ru&&(e.ru={"mejs.plural-form":7,"mejs.download-file":"Скачать файл","mejs.install-flash":"Flash player в вашем браузере не установлен или отключен. Пожалуйста включите ваш Flash player или скачайте последнюю версию с https://get.adobe.com/flashplayer/","mejs.fullscreen":"Полноэкранный режим","mejs.play":"Воспроизвести","mejs.pause":"Пауза","mejs.time-slider":"Слайдер времени","mejs.time-help-text":"Используйте Левую/Правую клавиши со стрелками, чтобы продвинуться на одну секунду, клавиши со стрелками Вверх/Вниз, чтобы продвинуться на десять секунд.","mejs.live-broadcast":"Прямая трансляция","mejs.volume-help-text":"Используйте клавиши со стрелками Вверх/Вниз, чтобы увеличить или уменьшить громкость.","mejs.unmute":"Включить звук","mejs.mute":"Отключить звук","mejs.volume-slider":"Слайдер громкости","mejs.video-player":"Видеоплеер","mejs.audio-player":"Аудиоплеер","mejs.captions-subtitles":"Титры/Субтитры","mejs.captions-chapters":"Главы","mejs.none":"Нет","mejs.afrikaans":"Африканский","mejs.albanian":"Албанский","mejs.arabic":"Арабский","mejs.belarusian":"Белорусский","mejs.bulgarian":"Болгарский","mejs.catalan":"Каталонский","mejs.chinese":"Китайский","mejs.chinese-simplified":"Китайский (упрощенный)","mejs.chinese-traditional":"Chinese (традиционный)","mejs.croatian":"Хорватский","mejs.czech":"Чешский","mejs.danish":"Датский","mejs.dutch":"Голландский","mejs.english":"Английский","mejs.estonian":"Эстонский","mejs.filipino":"Филиппинский","mejs.finnish":"Финский","mejs.french":"Французский","mejs.galician":"Галисийский","mejs.german":"Немецкий","mejs.greek":"Греческий","mejs.haitian-creole":"Гаитянский креольский","mejs.hebrew":"Иврит","mejs.hindi":"Хинди","mejs.hungarian":"Венгерский","mejs.icelandic":"Исландский","mejs.indonesian":"Индонезийский","mejs.irish":"Ирландский","mejs.italian":"Итальянский","mejs.japanese":"Японский","mejs.korean":"Корейский","mejs.latvian":"Латышский","mejs.lithuanian":"Литовский","mejs.macedonian":"Македонский","mejs.malay":"Малайский","mejs.maltese":"Мальтийский","mejs.norwegian":"Норвежский","mejs.persian":"Персидский","mejs.polish":"Польский","mejs.portuguese":"Португальский","mejs.romanian":"Румынский","mejs.russian":"Русский","mejs.serbian":"Сербский","mejs.slovak":"Словацкий","mejs.slovenian":"Словенский","mejs.spanish":"Испанский","mejs.swahili":"Суахили","mejs.swedish":"Шведский","mejs.tagalog":"Тагальский","mejs.thai":"Тайский","mejs.turkish":"Турецкий","mejs.ukrainian":"Украинский","mejs.vietnamese":"Вьетнамский","mejs.welsh":"Валлийский","mejs.yiddish":"Идиш"})}(mejs.i18n)},1:function(e,t){},"1H9+":function(e,t,r){"use strict";(function(e){var s=r("gjdr"),n=r("pDVM"),i=r("Zm7i"),a=r("imkT"),o=r("KFw/"),l=r.n(o);const u=r("Ja68")("webtor:sdk:torrent");t.a=function(t={}){const r={params:t};return{fromUrl:t=>(u("fetch torrent from url=%s",t),new Promise((r,s)=>{const n=new XMLHttpRequest;n.addEventListener("error",s),n.onreadystatechange=async function(){if(this.readyState==XMLHttpRequest.DONE){const t=new Uint8Array(this.response),s=new e(t.byteLength),n=new Uint8Array(t);for(let e=0;ei.grpc.client(s.TorrentStore.Pull,{host:h,debug:c.grpcDebug}),p,(t,r,s)=>{if(""==t.torrent)return s("no torrent");let n=e.from(t.torrent,"base64");n=l()(n),u("and finally torrent=%o",n),r(n)},(e,t,r)=>{e==i.grpc.Code.PermissionDenied?r("abused"):e!==i.grpc.Code.OK&&r("failed to pull torrent code="+e)},o,c)},push(e,t,o={},c={}){const h=(c=Object.assign(r.params,c)).apiUrl+c.endpoints.torrent;u("push torrent url=%s metadata=%o",h,o);const p=new n.PushRequest;p.setTorrent(l.a.toTorrentFile(e));return Object(a.a)(()=>i.grpc.client(s.TorrentStore.Push,{host:h,debug:c.grpcDebug}),p,null,(e,t,r)=>{e===i.grpc.Code.OK?(u("torrent stored"),t()):e===i.grpc.Code.NotFound?r("not found"):e===i.grpc.Code.PermissionDenied?r("abused"):r("failed to push torrent code="+e)},o,c)},touch(e,t,o={},l={}){const c=(l=Object.assign(r.params,l)).apiUrl+l.endpoints.torrent;u("touch torrent url=%s metadata=%o",c,o);const h=new n.TouchRequest;h.setInfohash(e.infoHash);return Object(a.a)(()=>i.grpc.client(s.TorrentStore.Touch,{host:c,debug:l.grpcDebug}),h,null,(e,t,r)=>{e===i.grpc.Code.OK?(u("torrent touched"),t()):e===i.grpc.Code.PermissionDenied?r("abused"):e===i.grpc.Code.NotFound?r("not found"):r("failed to touch torrent code="+e)},o,l)}}}}).call(this,r("HDXh").Buffer)},2:function(e,t){},3:function(e,t){},4:function(e,t){},"8WpJ":function(e,t,r){var s=r("FSvW"),n=s,i={};n.exportSymbol("StatReply",null,i),n.exportSymbol("StatReply.Status",null,i),n.exportSymbol("StatRequest",null,i),i.StatRequest=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.StatRequest,s.Message),n.DEBUG&&!COMPILED&&(i.StatRequest.displayName="proto.StatRequest"),i.StatReply=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.StatReply,s.Message),n.DEBUG&&!COMPILED&&(i.StatReply.displayName="proto.StatReply"),s.Message.GENERATE_TO_OBJECT&&(i.StatRequest.prototype.toObject=function(e){return i.StatRequest.toObject(e,this)},i.StatRequest.toObject=function(e,t){var r={};return e&&(r.$jspbMessageInstance=t),r}),i.StatRequest.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.StatRequest;return i.StatRequest.deserializeBinaryFromReader(r,t)},i.StatRequest.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){t.getFieldNumber();t.skipField()}return e},i.StatRequest.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.StatRequest.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.StatRequest.serializeBinaryToWriter=function(e,t){},s.Message.GENERATE_TO_OBJECT&&(i.StatReply.prototype.toObject=function(e){return i.StatReply.toObject(e,this)},i.StatReply.toObject=function(e,t){var r={status:s.Message.getFieldWithDefault(t,1,0),downloaded:s.Message.getFieldWithDefault(t,2,0),rate:s.Message.getFieldWithDefault(t,3,0),length:s.Message.getFieldWithDefault(t,4,0)};return e&&(r.$jspbMessageInstance=t),r}),i.StatReply.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.StatReply;return i.StatReply.deserializeBinaryFromReader(r,t)},i.StatReply.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readEnum();e.setStatus(r);break;case 2:r=t.readInt64();e.setDownloaded(r);break;case 3:r=t.readInt64();e.setRate(r);break;case 4:r=t.readInt64();e.setLength(r);break;default:t.skipField()}}return e},i.StatReply.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.StatReply.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.StatReply.serializeBinaryToWriter=function(e,t){var r=void 0;0!==(r=e.getStatus())&&t.writeEnum(1,r),0!==(r=e.getDownloaded())&&t.writeInt64(2,r),0!==(r=e.getRate())&&t.writeInt64(3,r),0!==(r=e.getLength())&&t.writeInt64(4,r)},i.StatReply.Status={NOT_STARTED:0,PENDING:1,ACTIVE:2,DONE:3,FAILED:4},i.StatReply.prototype.getStatus=function(){return s.Message.getFieldWithDefault(this,1,0)},i.StatReply.prototype.setStatus=function(e){return s.Message.setProto3EnumField(this,1,e)},i.StatReply.prototype.getDownloaded=function(){return s.Message.getFieldWithDefault(this,2,0)},i.StatReply.prototype.setDownloaded=function(e){return s.Message.setProto3IntField(this,2,e)},i.StatReply.prototype.getRate=function(){return s.Message.getFieldWithDefault(this,3,0)},i.StatReply.prototype.setRate=function(e){return s.Message.setProto3IntField(this,3,e)},i.StatReply.prototype.getLength=function(){return s.Message.getFieldWithDefault(this,4,0)},i.StatReply.prototype.setLength=function(e){return s.Message.setProto3IntField(this,4,e)},n.object.extend(t,i)},DZhY:function(e,t,r){var s=r("OLJq"),n=r("Zm7i").grpc,i=function(){function e(){}return e.serviceName="Magnet2Torrent",e}();function a(e,t){this.serviceHost=e,this.options=t||{}}i.Magnet2Torrent={methodName:"Magnet2Torrent",service:i,requestStream:!1,responseStream:!1,requestType:s.Magnet2TorrentRequest,responseType:s.Magnet2TorrentReply},t.Magnet2Torrent=i,a.prototype.magnet2Torrent=function(e,t,r){2===arguments.length&&(r=arguments[1]);var s=n.unary(i.Magnet2Torrent,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onEnd:function(e){if(r)if(e.status!==n.Code.OK){var t=new Error(e.statusMessage);t.code=e.status,t.metadata=e.trailers,r(t,null)}else r(null,e.message)}});return{cancel:function(){r=null,s.close()}}},t.Magnet2TorrentClient=a},IV8F:function(e,t,r){"use strict";r.d(t,"a",(function(){return h}));var s=r("aACs"),n=r.n(s),i=r("KFw/"),a=r.n(i);class o{constructor({path:e,name:t,type:r},s,n){this.path=e,this.name=t,this.type=r,this.sdk=s,this.seeder=n}get isFile(){return"file"==this.type}get isDir(){return"dir"==this.type}get mediaType(){return this.isDir?null:this.sdk.util.getMediaType(this.name)}async getMimeType(){return this.isDir?null:this.sdk.util.getMimeType(await this.getStreamUrl())}async deliveryType(){return this.isDir?null:this.sdk.util.getDeliveryType(this.name)}async getStreamUrl(){return this.isDir?null:await this.seeder.streamUrl(this.path)}async getSegmentUrl(e,t){return this.isDir?null:await this.seeder.segmentUrl(this.path,e,t)}}class l extends o{constructor(e,t,r){super({path:"/"+e.path,name:e.name,type:"file"},t,r),this.length=e.length}}class u extends o{constructor(e,t,r,s){super({path:e,name:t,type:"dir"},r,s),this.content={}}}class c{constructor(e,t,r){n()(this,"type","torrent"),this.id=e.infoHash,this.torrent=e,this.sdk=t,this.seeder=r}get title(){return this.torrent.name}get shortType(){return this.type.charAt(0)}get magnetUri(){return a.a.toMagnetURI(this.torrent)}addBranch(e,t,r,s){if(0==t.length)return new l(r,this.sdk,this.seeder);const n=t.shift();return s.push(n),t.length>0?(null==e[n]&&(e[n]=new u("/"+s.join("/"),n,this.sdk,this.seeder)),e[n].content=this.addBranch(e[n].content,t,r,s)):e[n]=new l(r,this.sdk,this.seeder),e}get tree(){let e={};for(let t of this.torrent.files){const r=t.path.split("/");e=this.addBranch(e,r,t,[])}return e}get root(){return"/"+Object.keys(this.tree)[0]}dirname(e){e=(e=e.replace(/^\//,"").replace(/\/$/,"")).split("/");let t=this.tree,r=[];for(;;){const s=e.shift(e);if(!t[s]||!t[s].isDir)break;r.push(s),t=t[s].content}return"/"+r.join("/")}filename(e){e=(e=e.replace(/^\//,"").replace(/\/$/,"")).split("/");let t=this.tree;for(;;){const r=e.shift(e);if(!t[r])break;t=t[r]}return t.isFile&&t.isFile?t.name:null}ls(e){e=(e=e.replace(/^\//,"").replace(/\/$/,""))?e.split("/"):[];let t=this.tree;for(let r of e)t=t[r].content;let r=[];for(let e in t)r.push(t[e]);return e.length>1&&(e.pop(),r.push(new u(e.join("/"),".."))),r=r.sort((e,t)=>e.name.localeCompare(t.name)),r}}function h(e,t){const r=t.seeder.get(e.infoHash);return new c(e,t,r)}},IY8t:function(e,t,r){"use strict";(function(e){var s=r("KFw/"),n=r.n(s),i=r("IV8F");const a=r("Ja68")("webtor:sdk:loader");t.a=function(t,r){const s={params:t,sdk:r};return{async load(e,t,n={}){a("loading source=%o",e),n=Object.assign(s.params,n);let o=!1;if(0==o&&(o=await this.loadTorrentObject(e,t,n)),0==o&&(o=await this.loadTorrentFile(e,t,n)),0==o&&(o=await this.loadMagnet(e,t,n)),0==o&&(o=await this.loadTorrentUrl(e,t,n)),0!=o&&await this.pushTorrent(o,t,n),0==o)throw"failed to load resource";return Object(i.a)(o,r)},async loadById(e,t,n,o={}){if(a("loading type=%o id=%o",e,t),o=Object.assign(s.params,o),"torrent"==e||"t"==e){let e=!1;return 0==e&&(e=await this.loadMagnet(t,n,o)),0!=e&&await this.pushTorrent(e,n,o),Object(i.a)(e,r)}},async pushTorrent(e,t,n={}){n=Object.assign(s.params,n),a("push torrent infohash=%o",e.infoHash);try{return await r.torrent.touch(e,2592e3,t)}catch(s){if("not found"!=s)throw a(s),s;try{return await r.torrent.push(e,2592e3,t)}catch(e){throw a(e),e}}},loadTorrentObject:async(e,t,r={})=>"object"==typeof e&&null!=e.infoHash&&null!=e.files&&e,loadTorrentUrl:async(t,s,i={})=>!!t.match(/^http/)&&(!(!t.match(/\.torrent$/)&&!t.match(/[a-fA-F0-9]{40}/))&&(t=await r.ext.url(t),await new Promise((r,s)=>{const i=new XMLHttpRequest;i.addEventListener("error",s),i.onreadystatechange=async function(){if(this.readyState==XMLHttpRequest.DONE){const t=new Uint8Array(this.response),s=new e(t.byteLength),i=new Uint8Array(t);for(let e=0;enew Promise((r,s)=>{const n=new FileReader;n.addEventListener("load",t=>{const n=new Uint8Array(t.target.result),i=new e(n);try{r(i)}catch(t){s(t)}}),n.addEventListener("error",e=>{s(e)}),n.readAsArrayBuffer(t)})}}}).call(this,r("HDXh").Buffer)},OLJq:function(e,t,r){var s=r("FSvW"),n=s,i={};n.exportSymbol("Magnet2TorrentReply",null,i),n.exportSymbol("Magnet2TorrentRequest",null,i),i.Magnet2TorrentRequest=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.Magnet2TorrentRequest,s.Message),n.DEBUG&&!COMPILED&&(i.Magnet2TorrentRequest.displayName="proto.Magnet2TorrentRequest"),i.Magnet2TorrentReply=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.Magnet2TorrentReply,s.Message),n.DEBUG&&!COMPILED&&(i.Magnet2TorrentReply.displayName="proto.Magnet2TorrentReply"),s.Message.GENERATE_TO_OBJECT&&(i.Magnet2TorrentRequest.prototype.toObject=function(e){return i.Magnet2TorrentRequest.toObject(e,this)},i.Magnet2TorrentRequest.toObject=function(e,t){var r={magnet:s.Message.getFieldWithDefault(t,1,"")};return e&&(r.$jspbMessageInstance=t),r}),i.Magnet2TorrentRequest.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.Magnet2TorrentRequest;return i.Magnet2TorrentRequest.deserializeBinaryFromReader(r,t)},i.Magnet2TorrentRequest.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readString();e.setMagnet(r);break;default:t.skipField()}}return e},i.Magnet2TorrentRequest.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.Magnet2TorrentRequest.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.Magnet2TorrentRequest.serializeBinaryToWriter=function(e,t){var r;(r=e.getMagnet()).length>0&&t.writeString(1,r)},i.Magnet2TorrentRequest.prototype.getMagnet=function(){return s.Message.getFieldWithDefault(this,1,"")},i.Magnet2TorrentRequest.prototype.setMagnet=function(e){return s.Message.setProto3StringField(this,1,e)},s.Message.GENERATE_TO_OBJECT&&(i.Magnet2TorrentReply.prototype.toObject=function(e){return i.Magnet2TorrentReply.toObject(e,this)},i.Magnet2TorrentReply.toObject=function(e,t){var r={torrent:t.getTorrent_asB64()};return e&&(r.$jspbMessageInstance=t),r}),i.Magnet2TorrentReply.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.Magnet2TorrentReply;return i.Magnet2TorrentReply.deserializeBinaryFromReader(r,t)},i.Magnet2TorrentReply.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readBytes();e.setTorrent(r);break;default:t.skipField()}}return e},i.Magnet2TorrentReply.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.Magnet2TorrentReply.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.Magnet2TorrentReply.serializeBinaryToWriter=function(e,t){var r;(r=e.getTorrent_asU8()).length>0&&t.writeBytes(1,r)},i.Magnet2TorrentReply.prototype.getTorrent=function(){return s.Message.getFieldWithDefault(this,1,"")},i.Magnet2TorrentReply.prototype.getTorrent_asB64=function(){return s.Message.bytesAsB64(this.getTorrent())},i.Magnet2TorrentReply.prototype.getTorrent_asU8=function(){return s.Message.bytesAsU8(this.getTorrent())},i.Magnet2TorrentReply.prototype.setTorrent=function(e){return s.Message.setProto3BytesField(this,1,e)},n.object.extend(t,i)},Qeei:function(e,t,r){var s=r("FSvW"),n=s,i={};n.exportSymbol("CheckReply",null,i),n.exportSymbol("CheckRequest",null,i),n.exportSymbol("PushReply",null,i),n.exportSymbol("PushRequest",null,i),n.exportSymbol("PushRequest.Cause",null,i),n.exportSymbol("PushRequest.Source",null,i),i.PushReply=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.PushReply,s.Message),n.DEBUG&&!COMPILED&&(i.PushReply.displayName="proto.PushReply"),i.PushRequest=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.PushRequest,s.Message),n.DEBUG&&!COMPILED&&(i.PushRequest.displayName="proto.PushRequest"),i.CheckRequest=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.CheckRequest,s.Message),n.DEBUG&&!COMPILED&&(i.CheckRequest.displayName="proto.CheckRequest"),i.CheckReply=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.CheckReply,s.Message),n.DEBUG&&!COMPILED&&(i.CheckReply.displayName="proto.CheckReply"),s.Message.GENERATE_TO_OBJECT&&(i.PushReply.prototype.toObject=function(e){return i.PushReply.toObject(e,this)},i.PushReply.toObject=function(e,t){var r={};return e&&(r.$jspbMessageInstance=t),r}),i.PushReply.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.PushReply;return i.PushReply.deserializeBinaryFromReader(r,t)},i.PushReply.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){t.getFieldNumber();t.skipField()}return e},i.PushReply.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.PushReply.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.PushReply.serializeBinaryToWriter=function(e,t){},s.Message.GENERATE_TO_OBJECT&&(i.PushRequest.prototype.toObject=function(e){return i.PushRequest.toObject(e,this)},i.PushRequest.toObject=function(e,t){var r={noticeId:s.Message.getFieldWithDefault(t,1,""),infohash:s.Message.getFieldWithDefault(t,2,""),filename:s.Message.getFieldWithDefault(t,3,""),work:s.Message.getFieldWithDefault(t,4,""),startedAt:s.Message.getFieldWithDefault(t,5,0),email:s.Message.getFieldWithDefault(t,6,""),description:s.Message.getFieldWithDefault(t,7,""),subject:s.Message.getFieldWithDefault(t,8,""),cause:s.Message.getFieldWithDefault(t,9,0),source:s.Message.getFieldWithDefault(t,10,0)};return e&&(r.$jspbMessageInstance=t),r}),i.PushRequest.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.PushRequest;return i.PushRequest.deserializeBinaryFromReader(r,t)},i.PushRequest.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readString();e.setNoticeId(r);break;case 2:r=t.readString();e.setInfohash(r);break;case 3:r=t.readString();e.setFilename(r);break;case 4:r=t.readString();e.setWork(r);break;case 5:r=t.readInt64();e.setStartedAt(r);break;case 6:r=t.readString();e.setEmail(r);break;case 7:r=t.readString();e.setDescription(r);break;case 8:r=t.readString();e.setSubject(r);break;case 9:r=t.readEnum();e.setCause(r);break;case 10:r=t.readEnum();e.setSource(r);break;default:t.skipField()}}return e},i.PushRequest.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.PushRequest.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.PushRequest.serializeBinaryToWriter=function(e,t){var r=void 0;(r=e.getNoticeId()).length>0&&t.writeString(1,r),(r=e.getInfohash()).length>0&&t.writeString(2,r),(r=e.getFilename()).length>0&&t.writeString(3,r),(r=e.getWork()).length>0&&t.writeString(4,r),0!==(r=e.getStartedAt())&&t.writeInt64(5,r),(r=e.getEmail()).length>0&&t.writeString(6,r),(r=e.getDescription()).length>0&&t.writeString(7,r),(r=e.getSubject()).length>0&&t.writeString(8,r),0!==(r=e.getCause())&&t.writeEnum(9,r),0!==(r=e.getSource())&&t.writeEnum(10,r)},i.PushRequest.Cause={ILLEGAL_CONTENT:0,MALWARE:1,APP_ERROR:2,QUESTION:3},i.PushRequest.Source={MAIL:0,FORM:1},i.PushRequest.prototype.getNoticeId=function(){return s.Message.getFieldWithDefault(this,1,"")},i.PushRequest.prototype.setNoticeId=function(e){return s.Message.setProto3StringField(this,1,e)},i.PushRequest.prototype.getInfohash=function(){return s.Message.getFieldWithDefault(this,2,"")},i.PushRequest.prototype.setInfohash=function(e){return s.Message.setProto3StringField(this,2,e)},i.PushRequest.prototype.getFilename=function(){return s.Message.getFieldWithDefault(this,3,"")},i.PushRequest.prototype.setFilename=function(e){return s.Message.setProto3StringField(this,3,e)},i.PushRequest.prototype.getWork=function(){return s.Message.getFieldWithDefault(this,4,"")},i.PushRequest.prototype.setWork=function(e){return s.Message.setProto3StringField(this,4,e)},i.PushRequest.prototype.getStartedAt=function(){return s.Message.getFieldWithDefault(this,5,0)},i.PushRequest.prototype.setStartedAt=function(e){return s.Message.setProto3IntField(this,5,e)},i.PushRequest.prototype.getEmail=function(){return s.Message.getFieldWithDefault(this,6,"")},i.PushRequest.prototype.setEmail=function(e){return s.Message.setProto3StringField(this,6,e)},i.PushRequest.prototype.getDescription=function(){return s.Message.getFieldWithDefault(this,7,"")},i.PushRequest.prototype.setDescription=function(e){return s.Message.setProto3StringField(this,7,e)},i.PushRequest.prototype.getSubject=function(){return s.Message.getFieldWithDefault(this,8,"")},i.PushRequest.prototype.setSubject=function(e){return s.Message.setProto3StringField(this,8,e)},i.PushRequest.prototype.getCause=function(){return s.Message.getFieldWithDefault(this,9,0)},i.PushRequest.prototype.setCause=function(e){return s.Message.setProto3EnumField(this,9,e)},i.PushRequest.prototype.getSource=function(){return s.Message.getFieldWithDefault(this,10,0)},i.PushRequest.prototype.setSource=function(e){return s.Message.setProto3EnumField(this,10,e)},s.Message.GENERATE_TO_OBJECT&&(i.CheckRequest.prototype.toObject=function(e){return i.CheckRequest.toObject(e,this)},i.CheckRequest.toObject=function(e,t){var r={infohash:s.Message.getFieldWithDefault(t,1,"")};return e&&(r.$jspbMessageInstance=t),r}),i.CheckRequest.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.CheckRequest;return i.CheckRequest.deserializeBinaryFromReader(r,t)},i.CheckRequest.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readString();e.setInfohash(r);break;default:t.skipField()}}return e},i.CheckRequest.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.CheckRequest.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.CheckRequest.serializeBinaryToWriter=function(e,t){var r;(r=e.getInfohash()).length>0&&t.writeString(1,r)},i.CheckRequest.prototype.getInfohash=function(){return s.Message.getFieldWithDefault(this,1,"")},i.CheckRequest.prototype.setInfohash=function(e){return s.Message.setProto3StringField(this,1,e)},s.Message.GENERATE_TO_OBJECT&&(i.CheckReply.prototype.toObject=function(e){return i.CheckReply.toObject(e,this)},i.CheckReply.toObject=function(e,t){var r={exists:s.Message.getBooleanFieldWithDefault(t,1,!1)};return e&&(r.$jspbMessageInstance=t),r}),i.CheckReply.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.CheckReply;return i.CheckReply.deserializeBinaryFromReader(r,t)},i.CheckReply.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readBool();e.setExists(r);break;default:t.skipField()}}return e},i.CheckReply.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.CheckReply.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.CheckReply.serializeBinaryToWriter=function(e,t){var r;(r=e.getExists())&&t.writeBool(1,r)},i.CheckReply.prototype.getExists=function(){return s.Message.getBooleanFieldWithDefault(this,1,!1)},i.CheckReply.prototype.setExists=function(e){return s.Message.setProto3BooleanField(this,1,e)},n.object.extend(t,i)},T05x:function(e,t,r){var s=r("8WpJ"),n=r("Zm7i").grpc,i=function(){function e(){}return e.serviceName="DownloadProgress",e}();function a(e,t){this.serviceHost=e,this.options=t||{}}i.Stat={methodName:"Stat",service:i,requestStream:!1,responseStream:!1,requestType:s.StatRequest,responseType:s.StatReply},i.StatStream={methodName:"StatStream",service:i,requestStream:!1,responseStream:!0,requestType:s.StatRequest,responseType:s.StatReply},t.DownloadProgress=i,a.prototype.stat=function(e,t,r){2===arguments.length&&(r=arguments[1]);var s=n.unary(i.Stat,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onEnd:function(e){if(r)if(e.status!==n.Code.OK){var t=new Error(e.statusMessage);t.code=e.status,t.metadata=e.trailers,r(t,null)}else r(null,e.message)}});return{cancel:function(){r=null,s.close()}}},a.prototype.statStream=function(e,t){var r={data:[],end:[],status:[]},s=n.invoke(i.StatStream,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onMessage:function(e){r.data.forEach((function(t){t(e)}))},onEnd:function(e,t,s){r.status.forEach((function(r){r({code:e,details:t,metadata:s})})),r.end.forEach((function(r){r({code:e,details:t,metadata:s})})),r=null}});return{on:function(e,t){return r[e].push(t),this},cancel:function(){r=null,s.close()}}},t.DownloadProgressClient=a},Wfd4:function(e,t,r){var s=r("xPdp"),n=r("Zm7i").grpc,i=function(){function e(){}return e.serviceName="TorrentWebSeeder",e}();function a(e,t){this.serviceHost=e,this.options=t||{}}i.Stat={methodName:"Stat",service:i,requestStream:!1,responseStream:!1,requestType:s.StatRequest,responseType:s.StatReply},i.StatStream={methodName:"StatStream",service:i,requestStream:!1,responseStream:!0,requestType:s.StatRequest,responseType:s.StatReply},i.Files={methodName:"Files",service:i,requestStream:!1,responseStream:!1,requestType:s.FilesRequest,responseType:s.FilesReply},t.TorrentWebSeeder=i,a.prototype.stat=function(e,t,r){2===arguments.length&&(r=arguments[1]);var s=n.unary(i.Stat,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onEnd:function(e){if(r)if(e.status!==n.Code.OK){var t=new Error(e.statusMessage);t.code=e.status,t.metadata=e.trailers,r(t,null)}else r(null,e.message)}});return{cancel:function(){r=null,s.close()}}},a.prototype.statStream=function(e,t){var r={data:[],end:[],status:[]},s=n.invoke(i.StatStream,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onMessage:function(e){r.data.forEach((function(t){t(e)}))},onEnd:function(e,t,s){r.status.forEach((function(r){r({code:e,details:t,metadata:s})})),r.end.forEach((function(r){r({code:e,details:t,metadata:s})})),r=null}});return{on:function(e,t){return r[e].push(t),this},cancel:function(){r=null,s.close()}}},a.prototype.files=function(e,t,r){2===arguments.length&&(r=arguments[1]);var s=n.unary(i.Files,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onEnd:function(e){if(r)if(e.status!==n.Code.OK){var t=new Error(e.statusMessage);t.code=e.status,t.metadata=e.trailers,r(t,null)}else r(null,e.message)}});return{cancel:function(){r=null,s.close()}}},t.TorrentWebSeederClient=a},gjdr:function(e,t,r){var s=r("pDVM"),n=r("Zm7i").grpc,i=function(){function e(){}return e.serviceName="TorrentStore",e}();function a(e,t){this.serviceHost=e,this.options=t||{}}i.Push={methodName:"Push",service:i,requestStream:!1,responseStream:!1,requestType:s.PushRequest,responseType:s.PushReply},i.Pull={methodName:"Pull",service:i,requestStream:!1,responseStream:!1,requestType:s.PullRequest,responseType:s.PullReply},i.Touch={methodName:"Touch",service:i,requestStream:!1,responseStream:!1,requestType:s.TouchRequest,responseType:s.TouchReply},t.TorrentStore=i,a.prototype.push=function(e,t,r){2===arguments.length&&(r=arguments[1]);var s=n.unary(i.Push,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onEnd:function(e){if(r)if(e.status!==n.Code.OK){var t=new Error(e.statusMessage);t.code=e.status,t.metadata=e.trailers,r(t,null)}else r(null,e.message)}});return{cancel:function(){r=null,s.close()}}},a.prototype.pull=function(e,t,r){2===arguments.length&&(r=arguments[1]);var s=n.unary(i.Pull,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onEnd:function(e){if(r)if(e.status!==n.Code.OK){var t=new Error(e.statusMessage);t.code=e.status,t.metadata=e.trailers,r(t,null)}else r(null,e.message)}});return{cancel:function(){r=null,s.close()}}},a.prototype.touch=function(e,t,r){2===arguments.length&&(r=arguments[1]);var s=n.unary(i.Touch,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onEnd:function(e){if(r)if(e.status!==n.Code.OK){var t=new Error(e.statusMessage);t.code=e.status,t.metadata=e.trailers,r(t,null)}else r(null,e.message)}});return{cancel:function(){r=null,s.close()}}},t.TorrentStoreClient=a},imkT:function(e,t,r){"use strict";var s=r("Zm7i");const n=r("Ja68")("webtor:sdk");t.a=async function(e,t,r,i,a={},o={}){a.token=await o.getToken(),a["api-key"]=o.apiKey;let l=0;return new Promise((function(u,c){!function h(){const p=e();r&&p.onMessage(e=>{n("got message=%o",e.toObject()),r(e.toObject(),u,c)}),i&&p.onEnd(async e=>{(e==s.grpc.Code.Unknown||e==s.grpc.Code.Unavailable)&&o.retryInterval&&o.retryLimit>0&&lsetTimeout(e,o.retryInterval)),l++,h()):i(e,u,c)}),p.start(new s.grpc.Metadata(a)),p.send(t),p.finishSend()}()}))}},kUwx:function(e,t,r){"use strict";(function(e){var s=r("DZhY"),n=r("OLJq"),i=r("Zm7i"),a=r("imkT"),o=r("KFw/"),l=r.n(o);const u=r("Ja68")("webtor:sdk:magnet");t.a=function(t={}){const r={params:t};return{fetchTorrent(t,o={},c={}){const h=(c=Object.assign(r.params,c)).apiUrl+"/magnet2torrent";u("fetch torrent magnet=%s url=%s metadata=%o",t,h,o);const p=new n.Magnet2TorrentRequest;p.setMagnet(t);return Object(a.a)(()=>i.grpc.client(s.Magnet2Torrent.Magnet2Torrent,{host:h,transport:i.grpc.WebsocketTransport(),debug:c.grpcDebug}),p,(t,r,s)=>{if(""==t.torrent)return s("no torrent");let n=e.from(t.torrent,"base64");n=l()(n),u("and finally torrent=%o",n),r(n)},(e,t,r)=>{e!==i.grpc.Code.OK&&r("failed to fetch torrent code="+e)},o,c)}}}}).call(this,r("HDXh").Buffer)},oRvx:function(e,t,r){"use strict";var s=r("1H9+"),n=r("kUwx"),i=r("pKfA"),a=r("Qeei"),o=r("Zm7i"),l=r("imkT");const u=r("Ja68")("webtor:sdk:abuse");var c=function(e={}){const t={params:e};return{push(e,r={},s={}){const n=(s=Object.assign(t.params,s)).apiUrl+"/abuse";u("push abuse url=%s metadata=%o",n,r);const c=new a.PushRequest;c.setSubject(e.subject),c.setDescription(e.description),c.setInfohash(e.infohash),c.setFilename(e.filename),c.setEmail(e.email),c.setWork(e.work),c.setCause(e.cause),c.setSource(a.PushRequest.Source.FORM);return Object(l.a)(()=>o.grpc.client(i.AbuseStore.Push,{host:n,debug:s.grpcDebug}),c,null,(e,t,r)=>{e===o.grpc.Code.OK?(u("abuse stored"),t()):r("failed to push abuse code="+e)},r,s)}}},h=r("Wfd4"),p=r("xPdp"),d=r("y4TM"),g=r.n(d);const y=r("Ja68")("webtor:sdk:seeder:stats");class f{constructor(e,t){this.url=e,this.path=t,this.closed=!1,this.client=null}close(){this.closed||(this.closed=!0,y("close stats url=%o path=%o",this.url,this.path),this.client&&this.client.close())}start(e,t,r){const s=new p.StatRequest;s.setPath(this.path);const n=g()(p.StatReply.Status);let i=null;return Object(l.a)(()=>{const e=o.grpc.client(h.TorrentWebSeeder.StatStream,{host:this.url,transport:o.grpc.WebsocketTransport(),debug:r.grpcDebug});return this.client=e,e},s,t=>{if(t.statusName=n[t.status],i||0==t.status){for(const e of t.piecesList)for(const t of i)t.position==e.position&&(t.complete=e.complete,t.priority=e.priority);t.piecesList=JSON.parse(JSON.stringify(i))}else i=t.piecesList;e(this.path,t)},(e,t,r)=>{e!==o.grpc.Code.OK?r("failed to get stats torrent code="+e):(y("stats finished url=%o path=%o",this.url,this.path),this.close(),t())},t,r)}}var m=r("T05x"),R=r("8WpJ");const b=r("Ja68")("webtor:sdk:seeder:downloadProgress");class M{constructor(e,t){this.url=e,this.path=t,this.closed=!1,this.client=null}close(){this.closed||(this.closed=!0,b("close download progress url=%o path=%o",this.url,this.path),this.client&&this.client.close())}start(e,t,r,s){const n=new R.StatRequest,i=g()(R.StatReply.Status);return Object(l.a)(()=>{const e=o.grpc.client(m.DownloadProgress.StatStream,{host:this.url,transport:o.grpc.WebsocketTransport(),debug:s.grpcDebug});return this.client=e,e},n,t=>{t.statusName=i[t.status],e(this.path,t)},(e,r,s)=>{e!==o.grpc.Code.OK?s("failed to get download progress code="+e):(b("download progress finished url=%o path=%o",this.url,this.path),this.close(),r()),t(this.path,e)},r,s)}}var w=function(e,t,r,s,n={},i={}){const a=new M(e,t);return a.start(r,s,n,i),a};const T=r("Ja68")("webtor:sdk:seeder"),F=r("JY4U");var S=r("p4j9");class P{constructor(e,t,r){this.infoHash=e,this.params=t,this.sdk=r}addDownloadId(e={},t){return e["download-id"]||(e=Object.assign({},e,{"download-id":S(e["user-id"]+this.infoHash+t+Date.now().toString())})),e}async url(e,t={},r={},s={}){r=Object.assign({},this.params,r),e=e.replace(/^\//,"");let n=new F(r.apiUrl);t=this.addDownloadId(t,e),n.infoHash=this.infoHash,n.path=e;const i="/"+this.infoHash+"/"+encodeURIComponent(e);n.infoHash=this.infoHash,n.set("pathname",i);const a=await this.sdk.util.makeQuery(t,r);if(n.set("query",a),r.subdomains){n=await this.sdk.util.cacheUrl(n,t,r);const e=await this.sdk.util.isCached(n,t,r);let i="transcode"==this.sdk.util.getDeliveryType(n.pathname)?r.pools.transcoder:r.pools.seeder;i=e?r.pools.cache:i;const a={infohash:this.infoHash,"use-bandwidth":e,"use-cpu":!e,"skip-active-job-search":e,pool:i.join(",")},o=await this.sdk.util.subdomainUrl(n,s,a,r);if(!1===o)return!1;if(o.primaryHost=n.host,o)return o}return n}async urlPostProcess(e,t,r){if(0==(await this.completedPieces(t,r)).length)return e;const s=this.sdk.util.cdnUrl(e,t,r);return s||e}async streamUrl(e,t={},r={},s={}){r=Object.assign({},this.params,r);let n=await this.url(e,t,r,s);return n=await this.sdk.util.streamUrl(n,t,r,s),n=await this.urlPostProcess(n,t,r),n}async segmentUrl(e,t,r={},s={},n={}){n=Object.assign({},this.params,n);let i=await this.url(e,s,n,r);return!1!==i&&(i=await this.sdk.util.segmentUrl(i,t,s,n,r),i=await this.urlPostProcess(i,s,n),i)}async error(e,t={},r={},s={}){r=Object.assign({},this.params,r);let n=await this.url(e,t,r,s);return await this.sdk.util.error(n,t,r)}async pieceUrl(e,t={},r={}){let s=await this.url("",t,r);return this.sdk.util.pieceUrl(s,e)}async mediaInfo(e,t={},r={}){r=Object.assign({},this.params,r);const s=await this.url(e,t,r);return await this.sdk.util.mediaInfo(s,t,r)}async completedPieces(e={},t={}){t=Object.assign({},this.params,t);const r=await this.url("",e,t);return await this.sdk.util.throttledCompletedPieces(r,e,t)}async isCached(e,t={},r={}){r=Object.assign({},this.params,r);const s=await this.url(e,t,r);return await this.sdk.util.isCached(s,t,r)}async openSubtitles(e,t={},r={}){const s=await this.url(e,t,r);return await this.sdk.util.openSubtitles(s)}async downloadUrl(e,t={},r={},s={}){(r=Object.assign({},this.params,r)).downloadUrl&&(r.apiUrl=r.downloadUrl),t.download=!0;let n=await this.url(e,t,r,s);return n=await this.urlPostProcess(n,t,r),n}async downloadUrlWithProgress(e,t,r,s={},n={},i={}){n=Object.assign({},this.params,n,{cdn:!1}),s=this.addDownloadId(s,e);const a=await this.downloadUrl(e,s,n,i),o=e.split("/").pop(),l=this.sdk.util.dpUrl(a,o),u=this.sdk.util.dpStatUrl(a);return w(u,e,t,r,s,n),l}async zipUrl(e,t={},r={},s={}){(r=Object.assign({},this.params,r)).downloadUrl&&(r.apiUrl=r.downloadUrl);const n=e.split("/").pop();let i=await this.url(e,t,r,s);return i.set("pathname",i.pathname+"~arch/"+n+".zip"),i}async zipUrlWithProgress(e,t,r,s={},n={},i={}){n=Object.assign({},this.params,n,{cdn:!1}),s=this.addDownloadId(s,e);const a=await this.zipUrl(e,s,n,i),o=e.split("/").pop()+".zip",l=this.sdk.util.dpUrl(a,o),u=this.sdk.util.dpStatUrl(a);return w(u,e,t,r,s,n),l}async stats(e,t,r={},s={}){s=Object.assign({},this.params,s);let n=await this.url(e,r,s);return n=`${n.protocol}//${n.hostname}/${this.infoHash}`,T("get file stats infoHash=%s url=%s path=%s metadata=%o",this.infoHash,n,e,r),function(e,t,r,s={},n={}){const i=new f(e,t);return i.start(r,s,n),i}(n,e,t,r,s)}}var B=function(e,t){const r={params:e,sdk:t};return{get:(e,t={},s={})=>(s=Object.assign({},r.params,s),new P(e,s,r.sdk))}};const k=r("JY4U");var q=function(e,t){const r={params:e,sdk:t};return{async url(e={},t={}){t=Object.assign(r.params,t);const s=new k(t.apiUrl);s.set("pathname","/tracker/"),s.set("protocol","wss:");const n=await r.sdk.util.makeQuery(e,t);return s.set("query",n),s}}},j=r("IY8t"),v=r("UkTR"),E=r("RcZZ"),O=r.n(E),D=r("yhGR"),U=r.n(D),C=r("SDmx"),W=r.n(C);const I=r("33yf"),z=r("JY4U");var x=r("p4j9");const N=r("Ja68")("webtor:sdk:util"),L=r("J/SR")((function(e){return N("fetch url=%o",e.href),fetch(e)}),{retries:3,retryDelay:function(e,t,r){return 1e3*Math.pow(2,e)},retryOn:function(e,t,r){if(null!==t||r.status>=500)return N("got fetch error retry count=%o",e),!0}});function A(e){return e.toLowerCase().replace(/~[a-z0-9]+$/,"")}function G(e){return e.replace(/\/\//,"/")}var _=function(e,t){const r={params:e,sdk:t},s={};return{async makeQuery(e={},t={}){t=Object.assign({},r.params,t);const s=e=Object.assign({},e),n=await t.getToken();return n&&(s.token=n),t.apiKey&&(s["api-key"]=t.apiKey),s},getDeliveryType(e){if(!e)return;let t=I.extname(e);return t=A(t),".avi .mkv .flac .m4a .m4v .ts .vob".split(" ").includes(t)?"transcode":".mp4 .mp3 .wav .ogg .webm".split(" ").includes(t)||".png .gif .jpg .jpeg".split(" ").includes(t)||".vtt .srt".split(" ").includes(t)?"webseed":void 0},getMediaType(e){if(!e)return;let t=I.extname(e);return t=A(t),".avi .mkv .mp4 .webm .m4v .ts .vob".split(" ").includes(t)?"video":".mp3 .wav .ogg .flac .m4a".split(" ").includes(t)?"audio":".png .gif .jpg .jpeg".split(" ").includes(t)?"image":".srt .vtt".split(" ").includes(t)?"subtitle":void 0},getMimeType(e){"object"==typeof e&&(e=e.pathname);const t=I.extname(e);return O.a.getType(t)},getSubtitleSrcLang(e){const t=I.basename(e,I.extname(e));for(const e of v.a.getAllCodes())if(t.endsWith("."+e))return e;return!1},getSubtitleLang(e){const t=this.getSubtitleSrcLang(e);return 0!=t&&this.getLang(t)},getLang:e=>({code:e,name:v.a.getName(e),nativeName:v.a.getNativeName(e)}),cloneUrl:e=>Object.assign(new z,e),vttUrl(e){return(e=this.cloneUrl(e)).set("pathname",G(e.pathname+"~vtt/"+encodeURIComponent(I.basename(e.pathname).replace(/srt$/,"vtt")))),e},primaryUrl(e){return e?((e=this.cloneUrl(e)).primaryHost&&(e.host=e.primaryHost),e):e},completedPiecesUrl(e){return e=this.cloneUrl(e),(e=this.tcUrl(e)).set("pathname",G(e.pathname.replace(/~tc.*$/,"~tc/completed_pieces"))),e},transcodeDoneMarkerUrl(e){return e=this.cloneUrl(e),(e=this.primaryUrl(e)).set("pathname",G(e.pathname+"~trc/done")),e},multibitrateDoneMarkerUrl(e){return e=this.cloneUrl(e),(e=this.primaryUrl(e)).set("pathname",G(e.pathname+"~mtrc/done")),e},transcodeIndexUrl(e){return(e=this.cloneUrl(e)).set("pathname",G(e.pathname+"~trc/index.m3u8")),e},multibitrateIndexUrl(e){return(e=this.cloneUrl(e)).set("pathname",G(e.pathname+"~mtrc/index.m3u8")),e},pieceUrl(e,t){return(e=this.cloneUrl(e)).set("pathname",G(e.pathname+"/piece/"+t)),e},tcUrl(e){return(e=this.cloneUrl(e)).pathname.includes("~tc")||e.set("pathname",G(e.pathname+"~tc/"+encodeURIComponent(I.basename(e.path)))),e},hlsUrl(e,t){return(e=this.cloneUrl(e)).set("pathname",G(e.pathname+"~hls/"+t)),e},trcUrl(e,t){return(e=this.cloneUrl(e)).set("pathname",G(e.pathname+"~trc/"+t)),e},mtrcUrl(e,t){return(e=this.cloneUrl(e)).set("pathname",G(e.pathname+"~mtrc/"+t)),e},vodUrl(e,t){return(e=this.cloneUrl(e)).set("pathname",G(e.pathname+"~vod/hls/"+x(G(e.pathname))+"/"+t)),e},viUrl(e,t){return(e=this.cloneUrl(e)).set("pathname",G(e.pathname+"~vi"+t)),e},dpUrl(e,t){return(e=this.cloneUrl(e)).set("pathname",G(e.pathname+"~dp/"+t)),e},dpStatUrl(e){return(e=this.cloneUrl(e)).set("pathname","/dp"),e.set("query",""),e},async baseStreamUrl(e,t,r,s,n){e=this.cloneUrl(e);const i=this.getDeliveryType(e.pathname);if(s.vod&&".mp4"==A(I.extname(e.pathname))){if(s.multibitrate){if(await this.throttledMultibitrateDoneMarker(e,r,s))return e.multibitrate=!0,e.cached=!0,this.mtrcUrl(e,t)}return this.vodUrl(e,t)}if(".srt"==A(I.extname(e.pathname)))return this.vttUrl(e);if("transcode"==i){if(s.multibitrate){if(await this.throttledMultibitrateDoneMarker(e,r,s))return e.multibitrate=!0,e.cached=!0,this.mtrcUrl(e,t)}if(s.cache){if(await this.throttledTranscodeDoneMarker(e,r,s))return e.cached=!0,this.trcUrl(e,t)}return this.hlsUrl(e,t)}return e},async streamUrl(e,t,r,s){return this.baseStreamUrl(e,"index.m3u8",t,r,s)},async segmentUrl(e,t,r,s,n){return this.baseStreamUrl(e,t,r,s,n)},async error(e,t,r){e=this.cloneUrl(e);const s=this.getDeliveryType(e.pathname),n=this.getMediaType(e.pathname);if("webseed"==s||"subtitle"==n)return;if(r.cache){if(await this.throttledTranscodeDoneMarker(e,t,r))return;e=this.hlsUrl(e,"error.log")}else e=this.hlsUrl(e,"error.log");const i=await fetch(e);return await i.text()},async transcodeDoneMarker(e){e=this.cloneUrl(e),e=this.transcodeDoneMarkerUrl(e);return 200==(await L(e)).status},async multibitrateDoneMarker(e){e=this.cloneUrl(e),e=this.multibitrateDoneMarkerUrl(e);return 200==(await L(e)).status},async transcodeIndexExists(e){e=this.cloneUrl(e),e=this.transcodeIndexUrl(e);return 200==(await L(e)).status},async multibitrateIndexExists(e){e=this.cloneUrl(e),e=this.multibitrateIndexUrl(e);return 200==(await L(e)).status},async completedPieces(e){e=this.cloneUrl(e),e=this.completedPiecesUrl(e);const t=await L(e),r=await t.arrayBuffer(),s=new Uint8Array(r),n=(i=s,Array.prototype.map.call(new Uint8Array(i),e=>("00"+e.toString(16)).slice(-2)).join(""));var i;const a=[];let o="";for(const e of n)o+=e,40==o.length&&(a.push(o),o="");return a},async mediaInfo(e,t={},r={}){e=this.cloneUrl(e);const s=this.getDeliveryType(e.pathname),n=this.getMediaType(e.pathname);if("webseed"==s||"subtitle"==n)return{};if(r.cache){e=await this.throttledTranscodeDoneMarker(e,t,r)?this.trcUrl(e,"index.json"):this.hlsUrl(e,"index.json")}else e=this.hlsUrl(e,"index.json");const i=await L(e);return await i.json()},async openSubtitles(e){e=this.cloneUrl(e);if("video"!=this.getMediaType(e.pathname))return{};const t=this.viUrl(e,"/subtitles.json"),r=await L(t),s=await r.json();for(const t in s){const r=s[t].format;if("srt"!=r&&"vtt"!=r)continue;let n=s[t].src,i=this.viUrl(e,n);"vtt"!=r&&(i=this.vttUrl(i)),s[t].src=i}return s},async subdomainsUrl(e={},t={}){t=Object.assign({},r.params,t);const s=new z(t.apiUrl);s.set("pathname","/subdomains.json");const n=await r.sdk.util.makeQuery(e,t);return s.set("query",n),s},checkApi:async(e={},t={})=>(t=Object.assign({},r.params,t),fetch(t.apiUrl)),async subdomains(e,t,s={},n={}){n=Object.assign({},r.params,n);const i=await this.subdomainsUrl(s,n),a=await L(i),o=await a.json(),l=[];for(const e of o)l.push(e);return l},isCDNAllowed(e,t={}){t=Object.assign({},r.params,t);for(const r of t.cdnPathSuffixes)if(A(e).endsWith(r))return!0;return!1},cdnUrl(e,t={},s={}){if(e=this.cloneUrl(e),(s=Object.assign({},r.params,s)).cdn&&s.cdnUrl&&this.isCDNAllowed(e.pathname,s)){let t=new z(s.cdnUrl);return e.set("hostname",t.hostname),e.set("protocol",t.protocol),e.set("query","?api-key="+s.apiKey),e}return!1},async throttled(e,t,r,n,i,a,o){let l=r.infoHash+n+e.name;o&&(l+=o),s[l]||(s[l]=W()(U()(e,this,r,n,i,a),t,{trailing:!1}));const u=s[l];return await u()},async cacheUrl(e,t,r){return(await this.throttledCompletedPieces(e,t,r)).length>0?this.tcUrl(e):e},async throttledCompletedPieces(e,t={},r={}){let s=[];return r.cache&&(s=await this.throttled(this.completedPieces,6e5,e,null,t,r)),s},async throttledTranscodeIndexExists(e,t={},r={}){let s=!1;return r.cache&&(s=await this.throttled(this.transcodeIndexExists,6e5,e,e.path,t,r)),s},async throttledTranscodeDoneMarker(e,t={},r={}){let s=!1;return r.cache&&(s=await this.throttled(this.transcodeDoneMarker,6e5,e,e.path,t,r)),s},async throttledMultibitrateDoneMarker(e,t={},r={}){let s=!1;return r.cache&&(s=await this.throttled(this.multibitrateDoneMarker,6e5,e,e.path,t,r)),s},async throttledMultibitrateIndexExists(e,t={},r={}){let s=!1;return r.cache&&(s=await this.throttled(this.multibitrateIndexExists,6e5,e,e.path,t,r)),s},async isCached(e,t={},r={}){const s=this.getDeliveryType(e.pathname);if("video"==this.getMediaType(e.pathname)&&await this.throttledMultibitrateDoneMarker(e,t,r))return!0;if("transcode"==s&&await this.throttledTranscodeDoneMarker(e,t,r))return!0;return(await this.throttledCompletedPieces(e,t,r)).length>0},async subdomainUrl(e,t={},s={},n={}){if(e=this.cloneUrl(e),!(n=Object.assign({},r.params,n)).subdomains)return e;try{const r=await this.throttled(this.subdomains,3e4,e,null,s,n,s.pool);t.usedSubdomains||(t.usedSubdomains=[]);let i=r.filter(e=>!t.usedSubdomains.includes(e));if(0==i.length&&r.length>0&&(i=[r[0]],t.usedSubdomains=[]),0!==i.length){const r=i[0];e.set("hostname",r+"."+e.hostname),t.usedSubdomains.push(r)}}catch(e){return N(e),console.log(e),!1}return e}}};const H=r("gEaE"),J=r("JY4U");var $=function(e,t){const r={params:e,sdk:t};return{async url(e,t={},s={}){s=Object.assign(r.params,s);const n=new J(s.apiUrl);let i="";i=s.fileName?s.fileName:H(e).base;const a="/ext/"+encodeURIComponent(btoa(e))+"/"+i;n.set("pathname",a);const o=await r.sdk.util.makeQuery(t,s);return n.set("query",o),n},async streamSubtitleUrl(e,t={},s={}){const n=await this.url(e,t,s);return r.sdk.util.streamSubtitleUrl(n)},async streamUrl(e,t={},s={}){s=Object.assign({},this.params,s);let n=await this.url(e,t,s);return r.sdk.util.streamUrl(n,t,s)},async mediaInfo(e,t={},s={}){const n=await this.url(e,t,s);return await r.sdk.util.mediaInfo(n)},async openSubtitles(e,t={},s={}){const n=await this.url(e,t,s);return await r.sdk.util.openSubtitles(n)}}};const K={db:null,grpcDebug:!1,retryInterval:1e3,retryLimit:3,cache:!1,multibitrate:!1,vod:!1,pools:{cache:[],seeder:[],transcoder:[]},subdomains:!1,getToken:async()=>null,endpoints:{torrent:"/store"},tokenRenewInterval:6e4};t.a=function(e={}){return function(e={}){if((e=Object.assign(K,e)).tokenUrl&&(e.getToken=async()=>(await fetch(e.tokenUrl)).text()),e.tokenRenewInterval){const t=e.getToken;e.getToken=W()(t,e.tokenRenewInterval,{trailing:!1})}let t={};return t=Object.assign(t,{params:e,tracker:q(e,t),seeder:B(e,t),ext:$(e,t),magnet:Object(n.a)(e,t),torrent:Object(s.a)(e,t),abuse:c(e),util:_(e,t),loader:Object(j.a)(e,t)}),t.checkApi=(e={},r={})=>t.util.checkApi(e,r),t.load=(e,r={},s={})=>t.loader.load(e,r,s),t.loadById=(e,r,s={},n={})=>t.loader.loadById(e,r,s,n),t}(e)}},pDVM:function(e,t,r){var s=r("FSvW"),n=s,i={};n.exportSymbol("CheckReply",null,i),n.exportSymbol("CheckRequest",null,i),n.exportSymbol("PullReply",null,i),n.exportSymbol("PullRequest",null,i),n.exportSymbol("PushReply",null,i),n.exportSymbol("PushRequest",null,i),n.exportSymbol("TouchReply",null,i),n.exportSymbol("TouchRequest",null,i),i.PushReply=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.PushReply,s.Message),n.DEBUG&&!COMPILED&&(i.PushReply.displayName="proto.PushReply"),i.PushRequest=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.PushRequest,s.Message),n.DEBUG&&!COMPILED&&(i.PushRequest.displayName="proto.PushRequest"),i.PullRequest=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.PullRequest,s.Message),n.DEBUG&&!COMPILED&&(i.PullRequest.displayName="proto.PullRequest"),i.PullReply=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.PullReply,s.Message),n.DEBUG&&!COMPILED&&(i.PullReply.displayName="proto.PullReply"),i.CheckRequest=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.CheckRequest,s.Message),n.DEBUG&&!COMPILED&&(i.CheckRequest.displayName="proto.CheckRequest"),i.CheckReply=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.CheckReply,s.Message),n.DEBUG&&!COMPILED&&(i.CheckReply.displayName="proto.CheckReply"),i.TouchReply=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.TouchReply,s.Message),n.DEBUG&&!COMPILED&&(i.TouchReply.displayName="proto.TouchReply"),i.TouchRequest=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.TouchRequest,s.Message),n.DEBUG&&!COMPILED&&(i.TouchRequest.displayName="proto.TouchRequest"),s.Message.GENERATE_TO_OBJECT&&(i.PushReply.prototype.toObject=function(e){return i.PushReply.toObject(e,this)},i.PushReply.toObject=function(e,t){var r={infohash:s.Message.getFieldWithDefault(t,1,"")};return e&&(r.$jspbMessageInstance=t),r}),i.PushReply.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.PushReply;return i.PushReply.deserializeBinaryFromReader(r,t)},i.PushReply.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readString();e.setInfohash(r);break;default:t.skipField()}}return e},i.PushReply.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.PushReply.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.PushReply.serializeBinaryToWriter=function(e,t){var r;(r=e.getInfohash()).length>0&&t.writeString(1,r)},i.PushReply.prototype.getInfohash=function(){return s.Message.getFieldWithDefault(this,1,"")},i.PushReply.prototype.setInfohash=function(e){return s.Message.setProto3StringField(this,1,e)},s.Message.GENERATE_TO_OBJECT&&(i.PushRequest.prototype.toObject=function(e){return i.PushRequest.toObject(e,this)},i.PushRequest.toObject=function(e,t){var r={torrent:t.getTorrent_asB64(),expire:s.Message.getFieldWithDefault(t,2,0)};return e&&(r.$jspbMessageInstance=t),r}),i.PushRequest.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.PushRequest;return i.PushRequest.deserializeBinaryFromReader(r,t)},i.PushRequest.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readBytes();e.setTorrent(r);break;case 2:r=t.readInt32();e.setExpire(r);break;default:t.skipField()}}return e},i.PushRequest.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.PushRequest.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.PushRequest.serializeBinaryToWriter=function(e,t){var r=void 0;(r=e.getTorrent_asU8()).length>0&&t.writeBytes(1,r),0!==(r=e.getExpire())&&t.writeInt32(2,r)},i.PushRequest.prototype.getTorrent=function(){return s.Message.getFieldWithDefault(this,1,"")},i.PushRequest.prototype.getTorrent_asB64=function(){return s.Message.bytesAsB64(this.getTorrent())},i.PushRequest.prototype.getTorrent_asU8=function(){return s.Message.bytesAsU8(this.getTorrent())},i.PushRequest.prototype.setTorrent=function(e){return s.Message.setProto3BytesField(this,1,e)},i.PushRequest.prototype.getExpire=function(){return s.Message.getFieldWithDefault(this,2,0)},i.PushRequest.prototype.setExpire=function(e){return s.Message.setProto3IntField(this,2,e)},s.Message.GENERATE_TO_OBJECT&&(i.PullRequest.prototype.toObject=function(e){return i.PullRequest.toObject(e,this)},i.PullRequest.toObject=function(e,t){var r={infohash:s.Message.getFieldWithDefault(t,1,"")};return e&&(r.$jspbMessageInstance=t),r}),i.PullRequest.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.PullRequest;return i.PullRequest.deserializeBinaryFromReader(r,t)},i.PullRequest.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readString();e.setInfohash(r);break;default:t.skipField()}}return e},i.PullRequest.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.PullRequest.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.PullRequest.serializeBinaryToWriter=function(e,t){var r;(r=e.getInfohash()).length>0&&t.writeString(1,r)},i.PullRequest.prototype.getInfohash=function(){return s.Message.getFieldWithDefault(this,1,"")},i.PullRequest.prototype.setInfohash=function(e){return s.Message.setProto3StringField(this,1,e)},s.Message.GENERATE_TO_OBJECT&&(i.PullReply.prototype.toObject=function(e){return i.PullReply.toObject(e,this)},i.PullReply.toObject=function(e,t){var r={torrent:t.getTorrent_asB64()};return e&&(r.$jspbMessageInstance=t),r}),i.PullReply.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.PullReply;return i.PullReply.deserializeBinaryFromReader(r,t)},i.PullReply.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readBytes();e.setTorrent(r);break;default:t.skipField()}}return e},i.PullReply.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.PullReply.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.PullReply.serializeBinaryToWriter=function(e,t){var r;(r=e.getTorrent_asU8()).length>0&&t.writeBytes(1,r)},i.PullReply.prototype.getTorrent=function(){return s.Message.getFieldWithDefault(this,1,"")},i.PullReply.prototype.getTorrent_asB64=function(){return s.Message.bytesAsB64(this.getTorrent())},i.PullReply.prototype.getTorrent_asU8=function(){return s.Message.bytesAsU8(this.getTorrent())},i.PullReply.prototype.setTorrent=function(e){return s.Message.setProto3BytesField(this,1,e)},s.Message.GENERATE_TO_OBJECT&&(i.CheckRequest.prototype.toObject=function(e){return i.CheckRequest.toObject(e,this)},i.CheckRequest.toObject=function(e,t){var r={infohash:s.Message.getFieldWithDefault(t,1,"")};return e&&(r.$jspbMessageInstance=t),r}),i.CheckRequest.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.CheckRequest;return i.CheckRequest.deserializeBinaryFromReader(r,t)},i.CheckRequest.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readString();e.setInfohash(r);break;default:t.skipField()}}return e},i.CheckRequest.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.CheckRequest.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.CheckRequest.serializeBinaryToWriter=function(e,t){var r;(r=e.getInfohash()).length>0&&t.writeString(1,r)},i.CheckRequest.prototype.getInfohash=function(){return s.Message.getFieldWithDefault(this,1,"")},i.CheckRequest.prototype.setInfohash=function(e){return s.Message.setProto3StringField(this,1,e)},s.Message.GENERATE_TO_OBJECT&&(i.CheckReply.prototype.toObject=function(e){return i.CheckReply.toObject(e,this)},i.CheckReply.toObject=function(e,t){var r={exists:s.Message.getBooleanFieldWithDefault(t,1,!1)};return e&&(r.$jspbMessageInstance=t),r}),i.CheckReply.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.CheckReply;return i.CheckReply.deserializeBinaryFromReader(r,t)},i.CheckReply.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readBool();e.setExists(r);break;default:t.skipField()}}return e},i.CheckReply.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.CheckReply.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.CheckReply.serializeBinaryToWriter=function(e,t){var r;(r=e.getExists())&&t.writeBool(1,r)},i.CheckReply.prototype.getExists=function(){return s.Message.getBooleanFieldWithDefault(this,1,!1)},i.CheckReply.prototype.setExists=function(e){return s.Message.setProto3BooleanField(this,1,e)},s.Message.GENERATE_TO_OBJECT&&(i.TouchReply.prototype.toObject=function(e){return i.TouchReply.toObject(e,this)},i.TouchReply.toObject=function(e,t){var r={};return e&&(r.$jspbMessageInstance=t),r}),i.TouchReply.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.TouchReply;return i.TouchReply.deserializeBinaryFromReader(r,t)},i.TouchReply.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){t.getFieldNumber();t.skipField()}return e},i.TouchReply.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.TouchReply.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.TouchReply.serializeBinaryToWriter=function(e,t){},s.Message.GENERATE_TO_OBJECT&&(i.TouchRequest.prototype.toObject=function(e){return i.TouchRequest.toObject(e,this)},i.TouchRequest.toObject=function(e,t){var r={infohash:s.Message.getFieldWithDefault(t,1,""),expire:s.Message.getFieldWithDefault(t,2,0)};return e&&(r.$jspbMessageInstance=t),r}),i.TouchRequest.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.TouchRequest;return i.TouchRequest.deserializeBinaryFromReader(r,t)},i.TouchRequest.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readString();e.setInfohash(r);break;case 2:r=t.readInt32();e.setExpire(r);break;default:t.skipField()}}return e},i.TouchRequest.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.TouchRequest.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.TouchRequest.serializeBinaryToWriter=function(e,t){var r=void 0;(r=e.getInfohash()).length>0&&t.writeString(1,r),0!==(r=e.getExpire())&&t.writeInt32(2,r)},i.TouchRequest.prototype.getInfohash=function(){return s.Message.getFieldWithDefault(this,1,"")},i.TouchRequest.prototype.setInfohash=function(e){return s.Message.setProto3StringField(this,1,e)},i.TouchRequest.prototype.getExpire=function(){return s.Message.getFieldWithDefault(this,2,0)},i.TouchRequest.prototype.setExpire=function(e){return s.Message.setProto3IntField(this,2,e)},n.object.extend(t,i)},pKfA:function(e,t,r){var s=r("Qeei"),n=r("Zm7i").grpc,i=function(){function e(){}return e.serviceName="AbuseStore",e}();function a(e,t){this.serviceHost=e,this.options=t||{}}i.Push={methodName:"Push",service:i,requestStream:!1,responseStream:!1,requestType:s.PushRequest,responseType:s.PushReply},i.Check={methodName:"Check",service:i,requestStream:!1,responseStream:!1,requestType:s.CheckRequest,responseType:s.CheckReply},t.AbuseStore=i,a.prototype.push=function(e,t,r){2===arguments.length&&(r=arguments[1]);var s=n.unary(i.Push,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onEnd:function(e){if(r)if(e.status!==n.Code.OK){var t=new Error(e.statusMessage);t.code=e.status,t.metadata=e.trailers,r(t,null)}else r(null,e.message)}});return{cancel:function(){r=null,s.close()}}},a.prototype.check=function(e,t,r){2===arguments.length&&(r=arguments[1]);var s=n.unary(i.Check,{request:e,host:this.serviceHost,metadata:t,transport:this.options.transport,debug:this.options.debug,onEnd:function(e){if(r)if(e.status!==n.Code.OK){var t=new Error(e.statusMessage);t.code=e.status,t.metadata=e.trailers,r(t,null)}else r(null,e.message)}});return{cancel:function(){r=null,s.close()}}},t.AbuseStoreClient=a},"qa/P":function(e,t,r){e.exports=r("5Lbg")},xPdp:function(e,t,r){var s=r("FSvW"),n=s,i={};n.exportSymbol("File",null,i),n.exportSymbol("FilesReply",null,i),n.exportSymbol("FilesRequest",null,i),n.exportSymbol("Piece",null,i),n.exportSymbol("Piece.Priority",null,i),n.exportSymbol("StatReply",null,i),n.exportSymbol("StatReply.Status",null,i),n.exportSymbol("StatRequest",null,i),i.StatRequest=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.StatRequest,s.Message),n.DEBUG&&!COMPILED&&(i.StatRequest.displayName="proto.StatRequest"),i.StatReply=function(e){s.Message.initialize(this,e,0,-1,i.StatReply.repeatedFields_,null)},n.inherits(i.StatReply,s.Message),n.DEBUG&&!COMPILED&&(i.StatReply.displayName="proto.StatReply"),i.Piece=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.Piece,s.Message),n.DEBUG&&!COMPILED&&(i.Piece.displayName="proto.Piece"),i.FilesRequest=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.FilesRequest,s.Message),n.DEBUG&&!COMPILED&&(i.FilesRequest.displayName="proto.FilesRequest"),i.File=function(e){s.Message.initialize(this,e,0,-1,null,null)},n.inherits(i.File,s.Message),n.DEBUG&&!COMPILED&&(i.File.displayName="proto.File"),i.FilesReply=function(e){s.Message.initialize(this,e,0,-1,i.FilesReply.repeatedFields_,null)},n.inherits(i.FilesReply,s.Message),n.DEBUG&&!COMPILED&&(i.FilesReply.displayName="proto.FilesReply"),s.Message.GENERATE_TO_OBJECT&&(i.StatRequest.prototype.toObject=function(e){return i.StatRequest.toObject(e,this)},i.StatRequest.toObject=function(e,t){var r={path:s.Message.getFieldWithDefault(t,1,"")};return e&&(r.$jspbMessageInstance=t),r}),i.StatRequest.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.StatRequest;return i.StatRequest.deserializeBinaryFromReader(r,t)},i.StatRequest.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readString();e.setPath(r);break;default:t.skipField()}}return e},i.StatRequest.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.StatRequest.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.StatRequest.serializeBinaryToWriter=function(e,t){var r;(r=e.getPath()).length>0&&t.writeString(1,r)},i.StatRequest.prototype.getPath=function(){return s.Message.getFieldWithDefault(this,1,"")},i.StatRequest.prototype.setPath=function(e){return s.Message.setProto3StringField(this,1,e)},i.StatReply.repeatedFields_=[5],s.Message.GENERATE_TO_OBJECT&&(i.StatReply.prototype.toObject=function(e){return i.StatReply.toObject(e,this)},i.StatReply.toObject=function(e,t){var r={total:s.Message.getFieldWithDefault(t,1,0),completed:s.Message.getFieldWithDefault(t,2,0),peers:s.Message.getFieldWithDefault(t,3,0),status:s.Message.getFieldWithDefault(t,4,0),piecesList:s.Message.toObjectList(t.getPiecesList(),i.Piece.toObject,e),seeders:s.Message.getFieldWithDefault(t,6,0),leechers:s.Message.getFieldWithDefault(t,7,0)};return e&&(r.$jspbMessageInstance=t),r}),i.StatReply.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.StatReply;return i.StatReply.deserializeBinaryFromReader(r,t)},i.StatReply.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readInt64();e.setTotal(r);break;case 2:r=t.readInt64();e.setCompleted(r);break;case 3:r=t.readInt32();e.setPeers(r);break;case 4:r=t.readEnum();e.setStatus(r);break;case 5:r=new i.Piece;t.readMessage(r,i.Piece.deserializeBinaryFromReader),e.addPieces(r);break;case 6:r=t.readInt32();e.setSeeders(r);break;case 7:r=t.readInt32();e.setLeechers(r);break;default:t.skipField()}}return e},i.StatReply.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.StatReply.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.StatReply.serializeBinaryToWriter=function(e,t){var r=void 0;0!==(r=e.getTotal())&&t.writeInt64(1,r),0!==(r=e.getCompleted())&&t.writeInt64(2,r),0!==(r=e.getPeers())&&t.writeInt32(3,r),0!==(r=e.getStatus())&&t.writeEnum(4,r),(r=e.getPiecesList()).length>0&&t.writeRepeatedMessage(5,r,i.Piece.serializeBinaryToWriter),0!==(r=e.getSeeders())&&t.writeInt32(6,r),0!==(r=e.getLeechers())&&t.writeInt32(7,r)},i.StatReply.Status={INITIALIZATION:0,SEEDING:1,IDLE:2,TERMINATED:3,WAITING_FOR_PEERS:4,RESTORING:5,BACKINGUP:6},i.StatReply.prototype.getTotal=function(){return s.Message.getFieldWithDefault(this,1,0)},i.StatReply.prototype.setTotal=function(e){return s.Message.setProto3IntField(this,1,e)},i.StatReply.prototype.getCompleted=function(){return s.Message.getFieldWithDefault(this,2,0)},i.StatReply.prototype.setCompleted=function(e){return s.Message.setProto3IntField(this,2,e)},i.StatReply.prototype.getPeers=function(){return s.Message.getFieldWithDefault(this,3,0)},i.StatReply.prototype.setPeers=function(e){return s.Message.setProto3IntField(this,3,e)},i.StatReply.prototype.getStatus=function(){return s.Message.getFieldWithDefault(this,4,0)},i.StatReply.prototype.setStatus=function(e){return s.Message.setProto3EnumField(this,4,e)},i.StatReply.prototype.getPiecesList=function(){return s.Message.getRepeatedWrapperField(this,i.Piece,5)},i.StatReply.prototype.setPiecesList=function(e){return s.Message.setRepeatedWrapperField(this,5,e)},i.StatReply.prototype.addPieces=function(e,t){return s.Message.addToRepeatedWrapperField(this,5,e,i.Piece,t)},i.StatReply.prototype.clearPiecesList=function(){return this.setPiecesList([])},i.StatReply.prototype.getSeeders=function(){return s.Message.getFieldWithDefault(this,6,0)},i.StatReply.prototype.setSeeders=function(e){return s.Message.setProto3IntField(this,6,e)},i.StatReply.prototype.getLeechers=function(){return s.Message.getFieldWithDefault(this,7,0)},i.StatReply.prototype.setLeechers=function(e){return s.Message.setProto3IntField(this,7,e)},s.Message.GENERATE_TO_OBJECT&&(i.Piece.prototype.toObject=function(e){return i.Piece.toObject(e,this)},i.Piece.toObject=function(e,t){var r={position:s.Message.getFieldWithDefault(t,1,0),complete:s.Message.getBooleanFieldWithDefault(t,2,!1),priority:s.Message.getFieldWithDefault(t,3,0)};return e&&(r.$jspbMessageInstance=t),r}),i.Piece.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.Piece;return i.Piece.deserializeBinaryFromReader(r,t)},i.Piece.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readInt64();e.setPosition(r);break;case 2:r=t.readBool();e.setComplete(r);break;case 3:r=t.readEnum();e.setPriority(r);break;default:t.skipField()}}return e},i.Piece.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.Piece.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.Piece.serializeBinaryToWriter=function(e,t){var r=void 0;0!==(r=e.getPosition())&&t.writeInt64(1,r),(r=e.getComplete())&&t.writeBool(2,r),0!==(r=e.getPriority())&&t.writeEnum(3,r)},i.Piece.Priority={NONE:0,NORMAL:1,HIGH:2,READAHEAD:3,NEXT:4,NOW:5},i.Piece.prototype.getPosition=function(){return s.Message.getFieldWithDefault(this,1,0)},i.Piece.prototype.setPosition=function(e){return s.Message.setProto3IntField(this,1,e)},i.Piece.prototype.getComplete=function(){return s.Message.getBooleanFieldWithDefault(this,2,!1)},i.Piece.prototype.setComplete=function(e){return s.Message.setProto3BooleanField(this,2,e)},i.Piece.prototype.getPriority=function(){return s.Message.getFieldWithDefault(this,3,0)},i.Piece.prototype.setPriority=function(e){return s.Message.setProto3EnumField(this,3,e)},s.Message.GENERATE_TO_OBJECT&&(i.FilesRequest.prototype.toObject=function(e){return i.FilesRequest.toObject(e,this)},i.FilesRequest.toObject=function(e,t){var r={};return e&&(r.$jspbMessageInstance=t),r}),i.FilesRequest.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.FilesRequest;return i.FilesRequest.deserializeBinaryFromReader(r,t)},i.FilesRequest.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){t.getFieldNumber();t.skipField()}return e},i.FilesRequest.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.FilesRequest.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.FilesRequest.serializeBinaryToWriter=function(e,t){},s.Message.GENERATE_TO_OBJECT&&(i.File.prototype.toObject=function(e){return i.File.toObject(e,this)},i.File.toObject=function(e,t){var r={path:s.Message.getFieldWithDefault(t,1,"")};return e&&(r.$jspbMessageInstance=t),r}),i.File.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.File;return i.File.deserializeBinaryFromReader(r,t)},i.File.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=t.readString();e.setPath(r);break;default:t.skipField()}}return e},i.File.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.File.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.File.serializeBinaryToWriter=function(e,t){var r;(r=e.getPath()).length>0&&t.writeString(1,r)},i.File.prototype.getPath=function(){return s.Message.getFieldWithDefault(this,1,"")},i.File.prototype.setPath=function(e){return s.Message.setProto3StringField(this,1,e)},i.FilesReply.repeatedFields_=[1],s.Message.GENERATE_TO_OBJECT&&(i.FilesReply.prototype.toObject=function(e){return i.FilesReply.toObject(e,this)},i.FilesReply.toObject=function(e,t){var r={filesList:s.Message.toObjectList(t.getFilesList(),i.File.toObject,e)};return e&&(r.$jspbMessageInstance=t),r}),i.FilesReply.deserializeBinary=function(e){var t=new s.BinaryReader(e),r=new i.FilesReply;return i.FilesReply.deserializeBinaryFromReader(r,t)},i.FilesReply.deserializeBinaryFromReader=function(e,t){for(;t.nextField()&&!t.isEndGroup();){switch(t.getFieldNumber()){case 1:var r=new i.File;t.readMessage(r,i.File.deserializeBinaryFromReader),e.addFiles(r);break;default:t.skipField()}}return e},i.FilesReply.prototype.serializeBinary=function(){var e=new s.BinaryWriter;return i.FilesReply.serializeBinaryToWriter(this,e),e.getResultBuffer()},i.FilesReply.serializeBinaryToWriter=function(e,t){var r;(r=e.getFilesList()).length>0&&t.writeRepeatedMessage(1,r,i.File.serializeBinaryToWriter)},i.FilesReply.prototype.getFilesList=function(){return s.Message.getRepeatedWrapperField(this,i.File,1)},i.FilesReply.prototype.setFilesList=function(e){return s.Message.setRepeatedWrapperField(this,1,e)},i.FilesReply.prototype.addFiles=function(e,t){return s.Message.addToRepeatedWrapperField(this,1,e,i.File,t)},i.FilesReply.prototype.clearFilesList=function(){return this.setFilesList([])},n.object.extend(t,i)}}]); -//# sourceMappingURL=async_main_493df0b3.dc63956c75681b023819.bundle.js.map \ No newline at end of file +//# sourceMappingURL=async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js.map \ No newline at end of file diff --git a/ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js.gz b/ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..1d7cb7b0ee3179429858260ee6a7f0938804b1bb GIT binary patch literal 13335 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 {\n const xhr = new XMLHttpRequest();\n xhr.addEventListener('error', reject);\n xhr.onreadystatechange = async function() {\n if (this.readyState == XMLHttpRequest.DONE) {\n const ab = new Uint8Array(this.response);\n const buffer = new Buffer(ab.byteLength);\n const view = new Uint8Array(ab);\n for (let i = 0; i < buffer.length; ++i) {\n buffer[i] = view[i];\n }\n resolve(parseTorrent(buffer));\n }\n };\n xhr.open('GET', url);\n xhr.responseType = 'arraybuffer';\n xhr.send();\n });\n },\n pull(infoHash, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = params.apiUrl + params.endpoints.torrent;\n debug('pull torrent infoHash=%s url=%s metadata=%o', infoHash, url, metadata);\n const request = new PullRequest();\n request.setInfohash(infoHash);\n const client = () => grpc.client(TorrentStore.Pull, {\n host: url,\n // transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n const onMessage = (message, resolve, reject) => {\n if (message.torrent == '') {\n return reject('no torrent');\n }\n let torrent = Buffer.from(message.torrent, 'base64');\n torrent = parseTorrent(torrent);\n debug('and finally torrent=%o', torrent);\n resolve(torrent);\n }\n const onEnd = (res, resolve, reject) => {\n if (res == grpc.Code.PermissionDenied) {\n reject('abused');\n } else if (res !== grpc.Code.OK) {\n reject('failed to pull torrent code=' + res);\n }\n }\n return process(client, request, onMessage, onEnd, metadata, params);\n },\n push(torrent, expire, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = params.apiUrl + params.endpoints.torrent;\n debug('push torrent url=%s metadata=%o', url, metadata);\n const request = new PushRequest();\n request.setTorrent(parseTorrent.toTorrentFile(torrent));\n const client = () => grpc.client(TorrentStore.Push, {\n host: url,\n // transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n const onEnd = (res, resolve, reject) => {\n if (res === grpc.Code.OK) {\n debug('torrent stored');\n resolve();\n } else if (res === grpc.Code.NotFound) {\n reject('not found');\n } else if (res === grpc.Code.PermissionDenied) {\n reject('abused');\n } else {\n reject('failed to push torrent code=' + res);\n }\n\n }\n return process(client, request, null, onEnd, metadata, params);\n },\n touch(torrent, expire, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = params.apiUrl + params.endpoints.torrent;\n debug('touch torrent url=%s metadata=%o', url, metadata);\n const request = new TouchRequest();\n request.setInfohash(torrent.infoHash);\n const client = () => grpc.client(TorrentStore.Touch, {\n host: url,\n // transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n const onEnd = (res, resolve, reject) => {\n if (res === grpc.Code.OK) {\n debug('torrent touched');\n resolve();\n } else if (res === grpc.Code.PermissionDenied) {\n reject('abused');\n } else if (res === grpc.Code.NotFound) {\n reject('not found');\n } else {\n reject('failed to touch torrent code=' + res);\n }\n }\n return process(client, request, null, onEnd, metadata, params);\n },\n };\n}","// source: proto/download-progress/download-progress.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar proto = {};\n\ngoog.exportSymbol('StatReply', null, proto);\ngoog.exportSymbol('StatReply.Status', null, proto);\ngoog.exportSymbol('StatRequest', null, proto);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.StatRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.StatRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.StatRequest.displayName = 'proto.StatRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.StatReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.StatReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.StatReply.displayName = 'proto.StatReply';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.StatRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.StatRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.StatRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.StatRequest}\n */\nproto.StatRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.StatRequest;\n return proto.StatRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.StatRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.StatRequest}\n */\nproto.StatRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.StatRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.StatRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.StatRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.StatReply.prototype.toObject = function(opt_includeInstance) {\n return proto.StatReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.StatReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n status: jspb.Message.getFieldWithDefault(msg, 1, 0),\n downloaded: jspb.Message.getFieldWithDefault(msg, 2, 0),\n rate: jspb.Message.getFieldWithDefault(msg, 3, 0),\n length: jspb.Message.getFieldWithDefault(msg, 4, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.StatReply}\n */\nproto.StatReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.StatReply;\n return proto.StatReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.StatReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.StatReply}\n */\nproto.StatReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!proto.StatReply.Status} */ (reader.readEnum());\n msg.setStatus(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setDownloaded(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setRate(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLength(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.StatReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.StatReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.StatReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getStatus();\n if (f !== 0.0) {\n writer.writeEnum(\n 1,\n f\n );\n }\n f = message.getDownloaded();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getRate();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getLength();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.StatReply.Status = {\n NOT_STARTED: 0,\n PENDING: 1,\n ACTIVE: 2,\n DONE: 3,\n FAILED: 4\n};\n\n/**\n * optional Status status = 1;\n * @return {!proto.StatReply.Status}\n */\nproto.StatReply.prototype.getStatus = function() {\n return /** @type {!proto.StatReply.Status} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/**\n * @param {!proto.StatReply.Status} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setStatus = function(value) {\n return jspb.Message.setProto3EnumField(this, 1, value);\n};\n\n\n/**\n * optional int64 downloaded = 2;\n * @return {number}\n */\nproto.StatReply.prototype.getDownloaded = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setDownloaded = function(value) {\n return jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\n/**\n * optional int64 rate = 3;\n * @return {number}\n */\nproto.StatReply.prototype.getRate = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setRate = function(value) {\n return jspb.Message.setProto3IntField(this, 3, value);\n};\n\n\n/**\n * optional int64 length = 4;\n * @return {number}\n */\nproto.StatReply.prototype.getLength = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setLength = function(value) {\n return jspb.Message.setProto3IntField(this, 4, value);\n};\n\n\ngoog.object.extend(exports, proto);\n","// package: \n// file: proto/magnet2torrent/magnet2torrent.proto\n\nvar proto_magnet2torrent_magnet2torrent_pb = require(\"../../proto/magnet2torrent/magnet2torrent_pb\");\nvar grpc = require(\"@improbable-eng/grpc-web\").grpc;\n\nvar Magnet2Torrent = (function () {\n function Magnet2Torrent() {}\n Magnet2Torrent.serviceName = \"Magnet2Torrent\";\n return Magnet2Torrent;\n}());\n\nMagnet2Torrent.Magnet2Torrent = {\n methodName: \"Magnet2Torrent\",\n service: Magnet2Torrent,\n requestStream: false,\n responseStream: false,\n requestType: proto_magnet2torrent_magnet2torrent_pb.Magnet2TorrentRequest,\n responseType: proto_magnet2torrent_magnet2torrent_pb.Magnet2TorrentReply\n};\n\nexports.Magnet2Torrent = Magnet2Torrent;\n\nfunction Magnet2TorrentClient(serviceHost, options) {\n this.serviceHost = serviceHost;\n this.options = options || {};\n}\n\nMagnet2TorrentClient.prototype.magnet2Torrent = function magnet2Torrent(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(Magnet2Torrent.Magnet2Torrent, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nexports.Magnet2TorrentClient = Magnet2TorrentClient;\n\n","import parseTorrent from 'parse-torrent';\nclass Content {\n constructor({path, name, type}, sdk, seeder) {\n this.path = path;\n this.name = name;\n this.type = type;\n this.sdk = sdk;\n this.seeder = seeder;\n }\n get isFile() {\n return this.type == 'file';\n }\n get isDir() {\n return this.type == 'dir';\n }\n get mediaType() {\n if (this.isDir) return null;\n return this.sdk.util.getMediaType(this.name);\n }\n async getMimeType() {\n if (this.isDir) return null;\n return this.sdk.util.getMimeType(await this.getStreamUrl());\n }\n async deliveryType() {\n if (this.isDir) return null;\n return this.sdk.util.getDeliveryType(this.name);\n }\n async getStreamUrl() {\n if (this.isDir) return null;\n return await this.seeder.streamUrl(this.path);\n }\n async getSegmentUrl(s, c) {\n if (this.isDir) return null;\n return await this.seeder.segmentUrl(this.path, s, c);\n }\n}\nclass File extends Content {\n constructor(i, sdk, seeder) {\n super({\n path: '/' + i.path,\n name: i.name,\n type: 'file',\n }, sdk, seeder);\n this.length = i.length;\n }\n}\nclass Dir extends Content {\n constructor(path, name, sdk, seeder) {\n super({\n path,\n name,\n type: 'dir',\n }, sdk, seeder);\n this.content = {};\n }\n}\nclass Resource {\n type = 'torrent';\n constructor(torrent, sdk, seeder) {\n this.id = torrent.infoHash;\n this.torrent = torrent;\n this.sdk = sdk;\n this.seeder = seeder;\n }\n get title() {\n return this.torrent.name;\n }\n get shortType() {\n return this.type.charAt(0);\n }\n get magnetUri() {\n return parseTorrent.toMagnetURI(this.torrent);\n }\n addBranch(tree, parts, file, path) {\n if (parts.length == 0) return new File(file, this.sdk, this.seeder);\n const part = parts.shift();\n path.push(part);\n if (parts.length > 0) {\n if (tree[part] == undefined) {\n tree[part] = new Dir('/' + path.join('/'), part, this.sdk, this.seeder);\n }\n tree[part].content = this.addBranch(tree[part].content, parts, file, path); \n } else {\n tree[part] = new File(file, this.sdk, this.seeder);\n }\n return tree;\n }\n get tree() {\n let tree = {};\n for (let file of this.torrent.files) {\n const pathParts = file.path.split('/');\n tree = this.addBranch(tree, pathParts, file, []);\n }\n return tree;\n }\n get root() {\n return '/' + Object.keys(this.tree)[0];\n }\n dirname(path) {\n path = path.replace(/^\\//, '').replace(/\\/$/, '');\n path = path.split('/');\n let tree = this.tree;\n let dir = [];\n while (true) {\n const p = path.shift(path);\n if (tree[p] && tree[p].isDir) {\n dir.push(p);\n tree = tree[p].content;\n } else {\n break;\n }\n }\n return '/' + dir.join('/');\n }\n filename(path) {\n path = path.replace(/^\\//, '').replace(/\\/$/, '');\n path = path.split('/');\n let tree = this.tree;\n while (true) {\n const p = path.shift(path);\n if (tree[p]) {\n tree = tree[p];\n } else {\n break;\n }\n }\n if (tree.isFile && tree.isFile) {\n return tree.name;\n }\n return null\n }\n ls(path) {\n path = path.replace(/^\\//, '').replace(/\\/$/, '');\n if (!path) {\n path = [];\n } else {\n path = path.split('/');\n }\n let c = this.tree;\n for (let p of path) {\n c = c[p].content;\n }\n let res = [];\n for (let i in c) {\n res.push(c[i]);\n }\n if (path.length > 1) {\n path.pop();\n res.push(new Dir(\n path.join('/'),\n '..',\n ));\n }\n res = res.sort((a, b) => a.name.localeCompare(b.name));\n return res;\n }\n}\nexport default function newResource(torrent, sdk) {\n\n const seeder = sdk.seeder.get(torrent.infoHash);\n return new Resource(torrent, sdk, seeder);\n}","import parseTorrent from 'parse-torrent';\nimport newTorrentResource from './loader/torrent/resource';\nconst debug = require('debug')('webtor:sdk:loader');\nexport default function(params, sdk) {\n const self = {params, sdk};\n return {\n async load(source, metadata, params = {}) {\n debug('loading source=%o', source);\n\n params = Object.assign(self.params, params);\n let torrent = false;\n if (torrent == false) torrent = await this.loadTorrentObject(source, metadata, params);\n if (torrent == false) torrent = await this.loadTorrentFile(source, metadata, params);\n if (torrent == false) torrent = await this.loadMagnet(source, metadata, params);\n if (torrent == false) torrent = await this.loadTorrentUrl(source, metadata, params);\n if (torrent != false) await this.pushTorrent(torrent, metadata, params);\n if (torrent == false) throw 'failed to load resource';\n return newTorrentResource(torrent, sdk);\n },\n async loadById(type, id, metadata, params = {}) {\n debug('loading type=%o id=%o', type, id);\n params = Object.assign(self.params, params);\n if (type == 'torrent' || type == 't') {\n let torrent = false;\n if (torrent == false) torrent = await this.loadMagnet(id, metadata, params);\n if (torrent != false) await this.pushTorrent(torrent, metadata, params);\n return newTorrentResource(torrent, sdk);\n }\n },\n async pushTorrent(torrent, metadata, params = {}) {\n const expire = 60 * 60 * 24 * 30; // 1 month\n params = Object.assign(self.params, params);\n debug('push torrent infohash=%o', torrent.infoHash);\n try {\n return await sdk.torrent.touch(torrent, expire, metadata);\n } catch (e) {\n if (e == 'not found') {\n try {\n return await sdk.torrent.push(torrent, expire, metadata);\n } catch (e) {\n debug(e);\n throw e;\n }\n } else {\n debug(e);\n throw e;\n }\n }\n },\n async loadTorrentObject(source, metadata, params = {}) {\n if (!(typeof source == 'object' && source.infoHash != undefined && source.files != undefined)) return false;\n return source;\n },\n async loadTorrentUrl(source, metadata, params = {}) {\n if (!source.match(/^http/)) return false;\n if (!source.match(/\\.torrent$/) && !source.match(/[a-fA-F0-9]{40}/)) {\n return false;\n }\n source = await sdk.ext.url(source);\n return await new Promise((resolve, reject) => {\n const xhr = new XMLHttpRequest();\n xhr.addEventListener('error', reject);\n xhr.onreadystatechange = async function() {\n if (this.readyState == XMLHttpRequest.DONE) {\n const ab = new Uint8Array(this.response);\n const buffer = new Buffer(ab.byteLength);\n const view = new Uint8Array(ab);\n for (let i = 0; i < buffer.length; ++i) {\n buffer[i] = view[i];\n }\n resolve(parseTorrent(buffer));\n }\n };\n xhr.open('GET', source);\n xhr.responseType = 'arraybuffer';\n xhr.send();\n });\n },\n async loadTorrentFile(source, metadata, params = {}) {\n if (!(typeof source == 'object' && source.type == 'application/x-bittorrent' && source.size)) return false;\n try {\n const b = await this.fileToArray(source);\n return parseTorrent(b);\n } catch (e) {\n debug(e);\n throw e;\n }\n },\n async loadMagnet(source, metadata, params = {}) {\n params = Object.assign(self.params, params);\n let torrent = null;\n if (!source.match(/^magnet/) && !source.match(/^[a-fA-F0-9]{40}$/)) {\n return false;\n }\n try {\n torrent = parseTorrent(source);\n } catch (e) {\n debug(e);\n throw e;\n }\n const infoHash = torrent.infoHash;\n if (infoHash && params.db) {\n debug('loading from local db infohash=%o', infoHash)\n torrent = await params.db.pullTorrent(infoHash);\n }\n if (!torrent || !torrent.pieces || torrent.pieces.length == 0) {\n try {\n debug('loading from torrent store infohash=%o', infoHash)\n torrent = await sdk.torrent.pull(infoHash, metadata);\n } catch (e) {\n debug(e);\n throw e;\n }\n }\n if (!torrent) {\n debug('loading by magnet uri from peers magnet=%o', source);\n torrent = await sdk.magnet.fetchTorrent(source, metadata);\n }\n return torrent;\n },\n fileToArray(file) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.addEventListener('load', (e) => {\n const arr = new Uint8Array(e.target.result);\n const buffer = new Buffer(arr);\n try {\n resolve(buffer);\n } catch(e) {\n reject(e);\n }\n });\n reader.addEventListener('error', (err) => {\n reject(err);\n });\n reader.readAsArrayBuffer(file);\n });\n }\n };\n};","// source: proto/magnet2torrent/magnet2torrent.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar proto = {};\n\ngoog.exportSymbol('Magnet2TorrentReply', null, proto);\ngoog.exportSymbol('Magnet2TorrentRequest', null, proto);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.Magnet2TorrentRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.Magnet2TorrentRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.Magnet2TorrentRequest.displayName = 'proto.Magnet2TorrentRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.Magnet2TorrentReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.Magnet2TorrentReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.Magnet2TorrentReply.displayName = 'proto.Magnet2TorrentReply';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.Magnet2TorrentRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.Magnet2TorrentRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.Magnet2TorrentRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Magnet2TorrentRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n magnet: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.Magnet2TorrentRequest}\n */\nproto.Magnet2TorrentRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.Magnet2TorrentRequest;\n return proto.Magnet2TorrentRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.Magnet2TorrentRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.Magnet2TorrentRequest}\n */\nproto.Magnet2TorrentRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setMagnet(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.Magnet2TorrentRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.Magnet2TorrentRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.Magnet2TorrentRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Magnet2TorrentRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMagnet();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string magnet = 1;\n * @return {string}\n */\nproto.Magnet2TorrentRequest.prototype.getMagnet = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.Magnet2TorrentRequest} returns this\n */\nproto.Magnet2TorrentRequest.prototype.setMagnet = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.Magnet2TorrentReply.prototype.toObject = function(opt_includeInstance) {\n return proto.Magnet2TorrentReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.Magnet2TorrentReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Magnet2TorrentReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n torrent: msg.getTorrent_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.Magnet2TorrentReply}\n */\nproto.Magnet2TorrentReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.Magnet2TorrentReply;\n return proto.Magnet2TorrentReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.Magnet2TorrentReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.Magnet2TorrentReply}\n */\nproto.Magnet2TorrentReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setTorrent(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.Magnet2TorrentReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.Magnet2TorrentReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.Magnet2TorrentReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Magnet2TorrentReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTorrent_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bytes torrent = 1;\n * @return {!(string|Uint8Array)}\n */\nproto.Magnet2TorrentReply.prototype.getTorrent = function() {\n return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {string}\n */\nproto.Magnet2TorrentReply.prototype.getTorrent_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getTorrent()));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {!Uint8Array}\n */\nproto.Magnet2TorrentReply.prototype.getTorrent_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getTorrent()));\n};\n\n\n/**\n * @param {!(string|Uint8Array)} value\n * @return {!proto.Magnet2TorrentReply} returns this\n */\nproto.Magnet2TorrentReply.prototype.setTorrent = function(value) {\n return jspb.Message.setProto3BytesField(this, 1, value);\n};\n\n\ngoog.object.extend(exports, proto);\n","// source: proto/abuse-store/abuse-store.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar proto = {};\n\ngoog.exportSymbol('CheckReply', null, proto);\ngoog.exportSymbol('CheckRequest', null, proto);\ngoog.exportSymbol('PushReply', null, proto);\ngoog.exportSymbol('PushRequest', null, proto);\ngoog.exportSymbol('PushRequest.Cause', null, proto);\ngoog.exportSymbol('PushRequest.Source', null, proto);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PushReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PushReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PushReply.displayName = 'proto.PushReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PushRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PushRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PushRequest.displayName = 'proto.PushRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.CheckRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.CheckRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.CheckRequest.displayName = 'proto.CheckRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.CheckReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.CheckReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.CheckReply.displayName = 'proto.CheckReply';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PushReply.prototype.toObject = function(opt_includeInstance) {\n return proto.PushReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PushReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PushReply}\n */\nproto.PushReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PushReply;\n return proto.PushReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PushReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PushReply}\n */\nproto.PushReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PushReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PushReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PushReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PushRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.PushRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PushRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n noticeId: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n infohash: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n filename: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n work: jspb.Message.getFieldWithDefault(msg, 4, \"\"),\n startedAt: jspb.Message.getFieldWithDefault(msg, 5, 0),\n email: jspb.Message.getFieldWithDefault(msg, 6, \"\"),\n description: jspb.Message.getFieldWithDefault(msg, 7, \"\"),\n subject: jspb.Message.getFieldWithDefault(msg, 8, \"\"),\n cause: jspb.Message.getFieldWithDefault(msg, 9, 0),\n source: jspb.Message.getFieldWithDefault(msg, 10, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PushRequest}\n */\nproto.PushRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PushRequest;\n return proto.PushRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PushRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PushRequest}\n */\nproto.PushRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setNoticeId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setFilename(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readString());\n msg.setWork(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setStartedAt(value);\n break;\n case 6:\n var value = /** @type {string} */ (reader.readString());\n msg.setEmail(value);\n break;\n case 7:\n var value = /** @type {string} */ (reader.readString());\n msg.setDescription(value);\n break;\n case 8:\n var value = /** @type {string} */ (reader.readString());\n msg.setSubject(value);\n break;\n case 9:\n var value = /** @type {!proto.PushRequest.Cause} */ (reader.readEnum());\n msg.setCause(value);\n break;\n case 10:\n var value = /** @type {!proto.PushRequest.Source} */ (reader.readEnum());\n msg.setSource(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PushRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PushRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PushRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNoticeId();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getFilename();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getWork();\n if (f.length > 0) {\n writer.writeString(\n 4,\n f\n );\n }\n f = message.getStartedAt();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getEmail();\n if (f.length > 0) {\n writer.writeString(\n 6,\n f\n );\n }\n f = message.getDescription();\n if (f.length > 0) {\n writer.writeString(\n 7,\n f\n );\n }\n f = message.getSubject();\n if (f.length > 0) {\n writer.writeString(\n 8,\n f\n );\n }\n f = message.getCause();\n if (f !== 0.0) {\n writer.writeEnum(\n 9,\n f\n );\n }\n f = message.getSource();\n if (f !== 0.0) {\n writer.writeEnum(\n 10,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.PushRequest.Cause = {\n ILLEGAL_CONTENT: 0,\n MALWARE: 1,\n APP_ERROR: 2,\n QUESTION: 3\n};\n\n/**\n * @enum {number}\n */\nproto.PushRequest.Source = {\n MAIL: 0,\n FORM: 1\n};\n\n/**\n * optional string notice_id = 1;\n * @return {string}\n */\nproto.PushRequest.prototype.getNoticeId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setNoticeId = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n/**\n * optional string infohash = 2;\n * @return {string}\n */\nproto.PushRequest.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 2, value);\n};\n\n\n/**\n * optional string filename = 3;\n * @return {string}\n */\nproto.PushRequest.prototype.getFilename = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setFilename = function(value) {\n return jspb.Message.setProto3StringField(this, 3, value);\n};\n\n\n/**\n * optional string work = 4;\n * @return {string}\n */\nproto.PushRequest.prototype.getWork = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setWork = function(value) {\n return jspb.Message.setProto3StringField(this, 4, value);\n};\n\n\n/**\n * optional int64 started_at = 5;\n * @return {number}\n */\nproto.PushRequest.prototype.getStartedAt = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setStartedAt = function(value) {\n return jspb.Message.setProto3IntField(this, 5, value);\n};\n\n\n/**\n * optional string email = 6;\n * @return {string}\n */\nproto.PushRequest.prototype.getEmail = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setEmail = function(value) {\n return jspb.Message.setProto3StringField(this, 6, value);\n};\n\n\n/**\n * optional string description = 7;\n * @return {string}\n */\nproto.PushRequest.prototype.getDescription = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 7, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setDescription = function(value) {\n return jspb.Message.setProto3StringField(this, 7, value);\n};\n\n\n/**\n * optional string subject = 8;\n * @return {string}\n */\nproto.PushRequest.prototype.getSubject = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setSubject = function(value) {\n return jspb.Message.setProto3StringField(this, 8, value);\n};\n\n\n/**\n * optional Cause cause = 9;\n * @return {!proto.PushRequest.Cause}\n */\nproto.PushRequest.prototype.getCause = function() {\n return /** @type {!proto.PushRequest.Cause} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/**\n * @param {!proto.PushRequest.Cause} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setCause = function(value) {\n return jspb.Message.setProto3EnumField(this, 9, value);\n};\n\n\n/**\n * optional Source source = 10;\n * @return {!proto.PushRequest.Source}\n */\nproto.PushRequest.prototype.getSource = function() {\n return /** @type {!proto.PushRequest.Source} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/**\n * @param {!proto.PushRequest.Source} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setSource = function(value) {\n return jspb.Message.setProto3EnumField(this, 10, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.CheckRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.CheckRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.CheckRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n infohash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.CheckRequest}\n */\nproto.CheckRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.CheckRequest;\n return proto.CheckRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.CheckRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.CheckRequest}\n */\nproto.CheckRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.CheckRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.CheckRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.CheckRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string infohash = 1;\n * @return {string}\n */\nproto.CheckRequest.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.CheckRequest} returns this\n */\nproto.CheckRequest.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.CheckReply.prototype.toObject = function(opt_includeInstance) {\n return proto.CheckReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.CheckReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n exists: jspb.Message.getBooleanFieldWithDefault(msg, 1, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.CheckReply}\n */\nproto.CheckReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.CheckReply;\n return proto.CheckReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.CheckReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.CheckReply}\n */\nproto.CheckReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setExists(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.CheckReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.CheckReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.CheckReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getExists();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bool exists = 1;\n * @return {boolean}\n */\nproto.CheckReply.prototype.getExists = function() {\n return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 1, false));\n};\n\n\n/**\n * @param {boolean} value\n * @return {!proto.CheckReply} returns this\n */\nproto.CheckReply.prototype.setExists = function(value) {\n return jspb.Message.setProto3BooleanField(this, 1, value);\n};\n\n\ngoog.object.extend(exports, proto);\n","// package: \n// file: proto/download-progress/download-progress.proto\n\nvar proto_download_progress_download_progress_pb = require(\"../../proto/download-progress/download-progress_pb\");\nvar grpc = require(\"@improbable-eng/grpc-web\").grpc;\n\nvar DownloadProgress = (function () {\n function DownloadProgress() {}\n DownloadProgress.serviceName = \"DownloadProgress\";\n return DownloadProgress;\n}());\n\nDownloadProgress.Stat = {\n methodName: \"Stat\",\n service: DownloadProgress,\n requestStream: false,\n responseStream: false,\n requestType: proto_download_progress_download_progress_pb.StatRequest,\n responseType: proto_download_progress_download_progress_pb.StatReply\n};\n\nDownloadProgress.StatStream = {\n methodName: \"StatStream\",\n service: DownloadProgress,\n requestStream: false,\n responseStream: true,\n requestType: proto_download_progress_download_progress_pb.StatRequest,\n responseType: proto_download_progress_download_progress_pb.StatReply\n};\n\nexports.DownloadProgress = DownloadProgress;\n\nfunction DownloadProgressClient(serviceHost, options) {\n this.serviceHost = serviceHost;\n this.options = options || {};\n}\n\nDownloadProgressClient.prototype.stat = function stat(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(DownloadProgress.Stat, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nDownloadProgressClient.prototype.statStream = function statStream(requestMessage, metadata) {\n var listeners = {\n data: [],\n end: [],\n status: []\n };\n var client = grpc.invoke(DownloadProgress.StatStream, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onMessage: function (responseMessage) {\n listeners.data.forEach(function (handler) {\n handler(responseMessage);\n });\n },\n onEnd: function (status, statusMessage, trailers) {\n listeners.status.forEach(function (handler) {\n handler({ code: status, details: statusMessage, metadata: trailers });\n });\n listeners.end.forEach(function (handler) {\n handler({ code: status, details: statusMessage, metadata: trailers });\n });\n listeners = null;\n }\n });\n return {\n on: function (type, handler) {\n listeners[type].push(handler);\n return this;\n },\n cancel: function () {\n listeners = null;\n client.close();\n }\n };\n};\n\nexports.DownloadProgressClient = DownloadProgressClient;\n\n","// package: \n// file: proto/torrent-web-seeder/torrent-web-seeder.proto\n\nvar proto_torrent_web_seeder_torrent_web_seeder_pb = require(\"../../proto/torrent-web-seeder/torrent-web-seeder_pb\");\nvar grpc = require(\"@improbable-eng/grpc-web\").grpc;\n\nvar TorrentWebSeeder = (function () {\n function TorrentWebSeeder() {}\n TorrentWebSeeder.serviceName = \"TorrentWebSeeder\";\n return TorrentWebSeeder;\n}());\n\nTorrentWebSeeder.Stat = {\n methodName: \"Stat\",\n service: TorrentWebSeeder,\n requestStream: false,\n responseStream: false,\n requestType: proto_torrent_web_seeder_torrent_web_seeder_pb.StatRequest,\n responseType: proto_torrent_web_seeder_torrent_web_seeder_pb.StatReply\n};\n\nTorrentWebSeeder.StatStream = {\n methodName: \"StatStream\",\n service: TorrentWebSeeder,\n requestStream: false,\n responseStream: true,\n requestType: proto_torrent_web_seeder_torrent_web_seeder_pb.StatRequest,\n responseType: proto_torrent_web_seeder_torrent_web_seeder_pb.StatReply\n};\n\nTorrentWebSeeder.Files = {\n methodName: \"Files\",\n service: TorrentWebSeeder,\n requestStream: false,\n responseStream: false,\n requestType: proto_torrent_web_seeder_torrent_web_seeder_pb.FilesRequest,\n responseType: proto_torrent_web_seeder_torrent_web_seeder_pb.FilesReply\n};\n\nexports.TorrentWebSeeder = TorrentWebSeeder;\n\nfunction TorrentWebSeederClient(serviceHost, options) {\n this.serviceHost = serviceHost;\n this.options = options || {};\n}\n\nTorrentWebSeederClient.prototype.stat = function stat(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(TorrentWebSeeder.Stat, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nTorrentWebSeederClient.prototype.statStream = function statStream(requestMessage, metadata) {\n var listeners = {\n data: [],\n end: [],\n status: []\n };\n var client = grpc.invoke(TorrentWebSeeder.StatStream, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onMessage: function (responseMessage) {\n listeners.data.forEach(function (handler) {\n handler(responseMessage);\n });\n },\n onEnd: function (status, statusMessage, trailers) {\n listeners.status.forEach(function (handler) {\n handler({ code: status, details: statusMessage, metadata: trailers });\n });\n listeners.end.forEach(function (handler) {\n handler({ code: status, details: statusMessage, metadata: trailers });\n });\n listeners = null;\n }\n });\n return {\n on: function (type, handler) {\n listeners[type].push(handler);\n return this;\n },\n cancel: function () {\n listeners = null;\n client.close();\n }\n };\n};\n\nTorrentWebSeederClient.prototype.files = function files(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(TorrentWebSeeder.Files, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nexports.TorrentWebSeederClient = TorrentWebSeederClient;\n\n","// package: \n// file: proto/torrent-store/torrent-store.proto\n\nvar proto_torrent_store_torrent_store_pb = require(\"../../proto/torrent-store/torrent-store_pb\");\nvar grpc = require(\"@improbable-eng/grpc-web\").grpc;\n\nvar TorrentStore = (function () {\n function TorrentStore() {}\n TorrentStore.serviceName = \"TorrentStore\";\n return TorrentStore;\n}());\n\nTorrentStore.Push = {\n methodName: \"Push\",\n service: TorrentStore,\n requestStream: false,\n responseStream: false,\n requestType: proto_torrent_store_torrent_store_pb.PushRequest,\n responseType: proto_torrent_store_torrent_store_pb.PushReply\n};\n\nTorrentStore.Pull = {\n methodName: \"Pull\",\n service: TorrentStore,\n requestStream: false,\n responseStream: false,\n requestType: proto_torrent_store_torrent_store_pb.PullRequest,\n responseType: proto_torrent_store_torrent_store_pb.PullReply\n};\n\nTorrentStore.Touch = {\n methodName: \"Touch\",\n service: TorrentStore,\n requestStream: false,\n responseStream: false,\n requestType: proto_torrent_store_torrent_store_pb.TouchRequest,\n responseType: proto_torrent_store_torrent_store_pb.TouchReply\n};\n\nexports.TorrentStore = TorrentStore;\n\nfunction TorrentStoreClient(serviceHost, options) {\n this.serviceHost = serviceHost;\n this.options = options || {};\n}\n\nTorrentStoreClient.prototype.push = function push(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(TorrentStore.Push, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nTorrentStoreClient.prototype.pull = function pull(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(TorrentStore.Pull, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nTorrentStoreClient.prototype.touch = function touch(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(TorrentStore.Touch, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nexports.TorrentStoreClient = TorrentStoreClient;\n\n","import {grpc} from '@improbable-eng/grpc-web';\n\nconst debug = require('debug')('webtor:sdk');\n\nexport default async function(client, request, onMessage, onEnd, metadata = {}, params = {}) {\n metadata['token'] = await params.getToken();\n metadata['api-key'] = params.apiKey;\n let retryCount = 0;\n return new Promise(function(resolve, reject) {\n function process() {\n const c = client();\n if (onMessage) {\n c.onMessage((message) => {\n debug('got message=%o', message.toObject());\n onMessage(message.toObject(), resolve, reject);\n });\n }\n if (onEnd) {\n c.onEnd(async (res) => {\n if ((res == grpc.Code.Unknown || res == grpc.Code.Unavailable) && params.retryInterval && params.retryLimit > 0 && retryCount < params.retryLimit) {\n debug('failed to get process request error=%o retry count=%o', res, retryCount);\n await (new Promise(resolve => setTimeout(resolve, params.retryInterval)));\n retryCount++;\n process();\n } else {\n onEnd(res, resolve, reject);\n }\n });\n }\n c.start(new grpc.Metadata(metadata));\n c.send(request);\n c.finishSend();\n }\n process();\n });\n}\n","import {Magnet2Torrent} from '../../proto/magnet2torrent/magnet2torrent_pb_service';\nimport {Magnet2TorrentRequest} from '../../proto/magnet2torrent/magnet2torrent_pb';\nimport {grpc} from '@improbable-eng/grpc-web';\nimport process from './process';\nimport parseTorrent from 'parse-torrent';\nconst debug = require('debug')('webtor:sdk:magnet');\n\nexport default function(params = {}) {\n const self = {params};\n return {\n fetchTorrent(magnet, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = params.apiUrl + '/magnet2torrent';\n debug('fetch torrent magnet=%s url=%s metadata=%o', magnet, url, metadata);\n const request = new Magnet2TorrentRequest();\n request.setMagnet(magnet);\n const client = () => grpc.client(Magnet2Torrent.Magnet2Torrent, {\n host: url,\n transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n const onMessage = (message, resolve, reject) => {\n if (message.torrent == '') {\n return reject('no torrent');\n }\n let torrent = Buffer.from(message.torrent, 'base64');\n torrent = parseTorrent(torrent);\n debug('and finally torrent=%o', torrent);\n resolve(torrent);\n }\n const onEnd = (res, resolve, reject) => {\n if (res !== grpc.Code.OK) {\n reject('failed to fetch torrent code=' + res);\n }\n }\n return process(client, request, onMessage, onEnd, metadata, params);\n },\n };\n};","import {AbuseStore} from '../../proto/abuse-store/abuse-store_pb_service';\nimport {PushRequest} from '../../proto/abuse-store/abuse-store_pb';\nimport {grpc} from '@improbable-eng/grpc-web';\nimport process from './process';\nconst debug = require('debug')('webtor:sdk:abuse');\n\nexport default function(params = {}) {\n const self = {params};\n return {\n push(abuse, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = params.apiUrl + '/abuse';\n debug('push abuse url=%s metadata=%o', url, metadata);\n const request = new PushRequest();\n request.setSubject(abuse.subject);\n request.setDescription(abuse.description);\n request.setInfohash(abuse.infohash);\n request.setFilename(abuse.filename);\n request.setEmail(abuse.email);\n request.setWork(abuse.work);\n request.setCause(abuse.cause);\n request.setSource(PushRequest.Source.FORM);\n const client = () => grpc.client(AbuseStore.Push, {\n host: url,\n // transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n const onEnd = (res, resolve, reject) => {\n if (res === grpc.Code.OK) {\n debug('abuse stored');\n resolve();\n } else {\n reject('failed to push abuse code=' + res);\n }\n }\n return process(client, request, null, onEnd, metadata, params);\n },\n };\n};","import {TorrentWebSeeder} from '../../../proto/torrent-web-seeder/torrent-web-seeder_pb_service';\nimport {StatRequest, StatReply} from '../../../proto/torrent-web-seeder/torrent-web-seeder_pb';\nimport {grpc} from '@improbable-eng/grpc-web';\nimport process from '../process';\nconst debug = require('debug')('webtor:sdk:seeder:stats');\nimport invert from 'lodash/invert';\n\nclass Stats {\n constructor(url, path) {\n this.url = url;\n this.path = path;\n this.closed = false;\n this.client = null;\n }\n close() {\n if (this.closed) return;\n this.closed = true;\n debug('close stats url=%o path=%o', this.url, this.path);\n if (this.client) this.client.close();\n }\n start(onMessage, metadata, params) {\n const request = new StatRequest();\n request.setPath(this.path);\n const client = () => { \n const c = grpc.client(TorrentWebSeeder.StatStream, {\n host: this.url,\n transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n this.client = c;\n return c;\n };\n const statuses = invert(StatReply.Status);\n let map = null;\n const onMessageWrapper = (message) => {\n message.statusName = statuses[message.status];\n if (!map && message.status != 0) {\n map = message.piecesList;\n } else {\n for (const p of message.piecesList) {\n for (const m of map) {\n if (m.position == p.position) {\n m.complete = p.complete;\n m.priority = p.priority;\n }\n }\n }\n message.piecesList = JSON.parse(JSON.stringify(map));\n }\n onMessage(this.path, message);\n }\n const onEnd = (res, resolve, reject) => {\n if (res !== grpc.Code.OK) {\n reject('failed to get stats torrent code=' + res);\n } else {\n debug('stats finished url=%o path=%o', this.url, this.path);\n this.close();\n resolve();\n }\n }\n\n return process(client, request, onMessageWrapper, onEnd, metadata, params);\n }\n}\n\nexport default function(url, path, onMessage, metadata = {}, params = {}) {\n const stats = new Stats(url, path);\n stats.start(onMessage, metadata, params);\n return stats;\n}","import {DownloadProgress} from '../../../proto/download-progress/download-progress_pb_service';\nimport {StatRequest, StatReply} from '../../../proto/download-progress/download-progress_pb';\nimport {grpc} from '@improbable-eng/grpc-web';\nimport process from '../process';\nconst debug = require('debug')('webtor:sdk:seeder:downloadProgress');\nimport invert from 'lodash/invert';\n\nclass Stats {\n constructor(url, path) {\n this.url = url;\n this.path = path;\n this.closed = false;\n this.client = null;\n }\n close() {\n if (this.closed) return;\n this.closed = true;\n debug('close download progress url=%o path=%o', this.url, this.path);\n if (this.client) this.client.close();\n }\n start(onMessage, onEnd, metadata, params) {\n const request = new StatRequest();\n const client = () => { \n const c = grpc.client(DownloadProgress.StatStream, {\n host: this.url,\n transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n this.client = c;\n return c;\n };\n const statuses = invert(StatReply.Status);\n const onMessageWrapper = (message) => {\n message.statusName = statuses[message.status];\n onMessage(this.path, message);\n }\n const onEndWrapper = (res, resolve, reject) => {\n if (res !== grpc.Code.OK) {\n reject('failed to get download progress code=' + res);\n } else {\n debug('download progress finished url=%o path=%o', this.url, this.path);\n this.close();\n resolve();\n }\n onEnd(this.path, res);\n }\n\n return process(client, request, onMessageWrapper, onEndWrapper, metadata, params);\n }\n}\n\nexport default function(url, path, onMessage, onEnd, metadata = {}, params = {}) {\n const st = new Stats(url, path);\n st.start(onMessage, onEnd, metadata, params);\n return st;\n}","import stats from './seeder/stats';\nimport downloadProgress from './seeder/downloadProgress';\nconst debug = require('debug')('webtor:sdk:seeder');\nconst Url = require('url-parse');\nvar md5 = require('md5');\n\nclass WebSeeder {\n constructor(infoHash, params, sdk) {\n this.infoHash = infoHash;\n this.params = params;\n this.sdk = sdk;\n }\n\n addDownloadId(metadata = {}, path) {\n if (!metadata['download-id']) {\n metadata = Object.assign({}, metadata, {\n 'download-id': md5(metadata['user-id'] + this.infoHash + path + Date.now().toString()),\n });\n }\n return metadata;\n }\n\n async url(path, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params);\n path = path.replace(/^\\//, '');\n let url = new Url(params.apiUrl);\n metadata = this.addDownloadId(metadata, path);\n url.infoHash = this.infoHash;\n url.path = path;\n const pathname = '/' + this.infoHash + '/' + encodeURIComponent(path);\n url.infoHash = this.infoHash;\n url.set('pathname', pathname);\n const query = await this.sdk.util.makeQuery(metadata, params);\n url.set('query', query);\n if (params.subdomains) {\n url = await this.sdk.util.cacheUrl(url, metadata, params);\n const cached = await this.sdk.util.isCached(url, metadata, params);\n // const completedPieces = await this.sdk.util.throttledCompletedPieces(url, metadata, params);\n // const pieceCache = completedPieces.length > 0;\n const deliveryType = this.sdk.util.getDeliveryType(url.pathname);\n // if (deliveryType === undefined) return url;\n let pool = deliveryType == 'transcode' ? params.pools.transcoder : params.pools.seeder;\n pool = cached ? params.pools.cache : pool;\n const m = {\n infohash: this.infoHash,\n \"use-bandwidth\": cached,\n \"use-cpu\": !cached,\n \"skip-active-job-search\": cached,\n pool: pool.join(','),\n }\n const subdomainUrl = await this.sdk.util.subdomainUrl(url, context, m, params);\n if (subdomainUrl === false) return false;\n subdomainUrl.primaryHost = url.host;\n if (subdomainUrl) {\n return subdomainUrl;\n }\n }\n return url;\n }\n\n async urlPostProcess(url, metadata, params) {\n const cp = await this.completedPieces(metadata, params);\n if (cp.length == 0) {\n return url;\n }\n const cdnUrl = this.sdk.util.cdnUrl(url, metadata, params);\n if (cdnUrl) {\n return cdnUrl;\n }\n return url;\n }\n\n async streamUrl(path, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params);\n let url = await this.url(path, metadata, params, context);\n url = await this.sdk.util.streamUrl(url, metadata, params, context);\n url = await this.urlPostProcess(url, metadata, params);\n return url;\n }\n\n async segmentUrl(path, segment, context = {}, metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n let url = await this.url(path, metadata, params, context);\n if (url === false) return false;\n url = await this.sdk.util.segmentUrl(url, segment, metadata, params, context);\n url = await this.urlPostProcess(url, metadata, params);\n return url;\n }\n\n async error(path, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params);\n let url = await this.url(path, metadata, params, context);\n return await this.sdk.util.error(url, metadata, params);\n }\n\n async pieceUrl(id, metadata = {}, params = {}) {\n let url = await this.url('', metadata, params);\n return this.sdk.util.pieceUrl(url, id);\n }\n\n async mediaInfo(path, metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n const url = await this.url(path, metadata, params);\n return await this.sdk.util.mediaInfo(url, metadata, params);\n }\n\n async completedPieces(metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n const url = await this.url('', metadata, params);\n return await this.sdk.util.throttledCompletedPieces(url, metadata, params);\n }\n\n async isCached(path, metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n const url = await this.url(path, metadata, params);\n const cached = await this.sdk.util.isCached(url, metadata, params);\n return cached;\n }\n\n async openSubtitles(path, metadata = {}, params = {}) {\n const url = await this.url(path, metadata, params);\n return await this.sdk.util.openSubtitles(url);\n }\n\n async downloadUrl(path, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params);\n if (params.downloadUrl) {\n params.apiUrl = params.downloadUrl;\n }\n metadata.download = true;\n let url = await this.url(path, metadata, params, context);\n url = await this.urlPostProcess(url, metadata, params);\n return url;\n }\n\n async downloadUrlWithProgress(path, onMessage, onEnd, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params, {cdn: false});\n metadata = this.addDownloadId(metadata, path);\n const downloadUrl = await this.downloadUrl(path, metadata, params, context);\n const fileName = path.split('/').pop();\n const url = this.sdk.util.dpUrl(downloadUrl, fileName);\n const statUrl = this.sdk.util.dpStatUrl(downloadUrl);\n downloadProgress(statUrl, path, onMessage, onEnd, metadata, params); \n return url;\n }\n\n async zipUrl(path, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params);\n if (params.downloadUrl) {\n params.apiUrl = params.downloadUrl;\n }\n const fileName = path.split('/').pop();\n let url = await this.url(path, metadata, params, context);\n url.set('pathname', url.pathname + '~arch/' + fileName + '.zip');\n return url;\n }\n async zipUrlWithProgress(path, onMessage, onEnd, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params, {cdn: false});\n metadata = this.addDownloadId(metadata, path);\n const zipUrl = await this.zipUrl(path, metadata, params, context);\n const fileName = path.split('/').pop() + '.zip';\n const url = this.sdk.util.dpUrl(zipUrl, fileName);\n const statUrl = this.sdk.util.dpStatUrl(zipUrl);\n downloadProgress(statUrl, path, onMessage, onEnd, metadata, params); \n return url;\n }\n\n async stats(path, onMessage, metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n let url = await this.url(path, metadata, params);\n url = `${url.protocol}//${url.hostname}/${this.infoHash}`;\n debug('get file stats infoHash=%s url=%s path=%s metadata=%o', this.infoHash, url, path, metadata);\n return stats(url, path, onMessage, metadata, params);\n }\n}\n\nexport default function(params, sdk) {\n const self = {params, sdk};\n return {\n get(infoHash, metadata = {}, params = {}) {\n params = Object.assign({}, self.params, params);\n return new WebSeeder(infoHash, params, self.sdk);\n },\n };\n};","const Url = require('url-parse');\n\nexport default function(params, sdk) {\n const self = {params, sdk};\n return {\n async url(metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = new Url(params.apiUrl);\n const pathname = '/tracker/';\n url.set('pathname', pathname);\n url.set('protocol', 'wss:');\n const query = await self.sdk.util.makeQuery(metadata, params);\n url.set('query', query);\n return url;\n },\n };\n};","const path = require('path');\nconst Url = require('url-parse');\nimport ISO6391 from 'iso-639-1';\nimport mime from 'mime';\nvar md5 = require('md5');\nconst debug = require('debug')('webtor:sdk:util');\nimport bind from 'lodash/bind';\nimport throttle from 'lodash/throttle';\nconst debugFetch = function(url) {\n debug('fetch url=%o', url.href);\n return fetch(url);\n}\nconst retryFetch = require('fetch-retry')(debugFetch, {\n retries: 3,\n retryDelay: function(attempt, error, response) {\n return Math.pow(2, attempt) * 1000;\n },\n retryOn: function(attempt, error, response) {\n if (error !== null || response.status >= 500) {\n debug('got fetch error retry count=%o', attempt);\n return true;\n }\n },\n});\n\nfunction cleanExt(ext) {\n return ext.toLowerCase().replace(/~[a-z0-9]+$/, '');\n}\nfunction cleanPath(p) {\n return p.replace(/\\/\\//, '/');\n}\nfunction buf2hex(buffer) { // buffer is an ArrayBuffer\n return Array.prototype.map.call(new Uint8Array(buffer), x => ('00' + x.toString(16)).slice(-2)).join('');\n}\n\nexport default function(params, sdk) {\n const self = {params, sdk};\n const throttledFuncs = {};\n const util = {\n async makeQuery(metadata = {}, params = {}) {\n params = Object.assign({}, self.params, params);\n metadata = Object.assign({}, metadata);\n const query = metadata;\n const token = await params.getToken();\n if (token) query.token = token;\n if (params.apiKey) query[\"api-key\"] = params.apiKey;\n return query;\n },\n getDeliveryType(file) {\n if (!file) return;\n let ext = path.extname(file);\n ext = cleanExt(ext);\n // Browser unsupported streaming formats\n if ('.avi .mkv .flac .m4a .m4v .ts .vob'.split(' ').includes(ext)) return 'transcode';\n // Browser supported streaming formats\n if ('.mp4 .mp3 .wav .ogg .webm'.split(' ').includes(ext)) return 'webseed';\n // Browser supported image formats\n if ('.png .gif .jpg .jpeg'.split(' ').includes(ext)) return 'webseed';\n // Browser unsupported subtitle formats\n if ('.vtt .srt'.split(' ').includes(ext)) return 'webseed';\n },\n getMediaType(file) {\n if (!file) return;\n let ext = path.extname(file);\n ext = cleanExt(ext);\n // Video\n if ('.avi .mkv .mp4 .webm .m4v .ts .vob'.split(' ').includes(ext)) return 'video';\n // Audio\n if ('.mp3 .wav .ogg .flac .m4a'.split(' ').includes(ext)) return 'audio';\n // Images\n if ('.png .gif .jpg .jpeg'.split(' ').includes(ext)) return 'image';\n // Subtitles\n if ('.srt .vtt'.split(' ').includes(ext)) return 'subtitle';\n },\n getMimeType(file) {\n if (typeof file == 'object') {\n file = file.pathname;\n }\n const ext = path.extname(file);\n return mime.getType(ext);\n },\n getSubtitleSrcLang(name) {\n const baseName = path.basename(name, path.extname(name));\n for (const code of ISO6391.getAllCodes()) {\n if (baseName.endsWith('.' + code)) return code;\n }\n return false;\n },\n getSubtitleLang(name) {\n const code = this.getSubtitleSrcLang(name);\n if (code == false) return false;\n return this.getLang(code);\n },\n getLang(code) {\n return {\n code,\n name: ISO6391.getName(code),\n nativeName: ISO6391.getNativeName(code),\n };\n },\n cloneUrl(url) {\n return Object.assign(new Url(), url);\n },\n vttUrl(url) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~vtt/' + encodeURIComponent(path.basename(url.pathname).replace(/srt$/, 'vtt'))));\n return url;\n },\n primaryUrl(url) {\n if (!url) return url;\n url = this.cloneUrl(url);\n if (url.primaryHost) {\n url.host = url.primaryHost;\n }\n return url;\n },\n completedPiecesUrl(url) {\n url = this.cloneUrl(url);\n url = this.tcUrl(url);\n url.set('pathname', cleanPath(url.pathname.replace(/~tc.*$/, '~tc/completed_pieces')));\n return url;\n },\n transcodeDoneMarkerUrl(url) {\n url = this.cloneUrl(url);\n url = this.primaryUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~trc/done'));\n return url;\n },\n multibitrateDoneMarkerUrl(url) {\n url = this.cloneUrl(url);\n url = this.primaryUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~mtrc/done'));\n return url;\n },\n transcodeIndexUrl(url) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~trc/index.m3u8'));\n return url;\n },\n multibitrateIndexUrl(url) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~mtrc/index.m3u8'));\n return url;\n },\n pieceUrl(url, id) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '/piece/' + id));\n return url;\n },\n tcUrl(url) {\n url = this.cloneUrl(url);\n if (url.pathname.includes('~tc')) return url;\n url.set('pathname', cleanPath(url.pathname + '~tc/' + encodeURIComponent(path.basename(url.path))));\n return url;\n },\n hlsUrl(url, file) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~hls/' + file));\n return url;\n },\n trcUrl(url, file) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~trc/' + file));\n return url;\n },\n mtrcUrl(url, file) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~mtrc/' + file));\n return url;\n },\n vodUrl(url, file) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~vod/hls/' + md5(cleanPath(url.pathname)) + '/' + file));\n return url;\n },\n viUrl(url, path) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~vi' + path));\n return url;\n },\n dpUrl(url, file) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~dp/' + file));\n return url;\n },\n dpStatUrl(url) {\n url = this.cloneUrl(url);\n url.set('pathname', '/dp');\n url.set('query', '');\n return url;\n },\n async baseStreamUrl(url, file, metadata, params, context) {\n url = this.cloneUrl(url);\n const deliveryType = this.getDeliveryType(url.pathname);\n if (params.vod && cleanExt(path.extname(url.pathname)) == '.mp4') {\n if (params.multibitrate) {\n const done = await this.throttledMultibitrateDoneMarker(url, metadata, params);\n if (done) {\n url.multibitrate = true;\n url.cached = true;\n return this.mtrcUrl(url, file);\n }\n }\n return this.vodUrl(url, file);\n } else if (cleanExt(path.extname(url.pathname)) == '.srt') {\n return this.vttUrl(url);\n } else if (deliveryType == 'transcode') {\n if (params.multibitrate) {\n const done = await this.throttledMultibitrateDoneMarker(url, metadata, params);\n if (done) {\n url.multibitrate = true;\n url.cached = true;\n return this.mtrcUrl(url, file);\n }\n }\n if (params.cache) {\n const done = await this.throttledTranscodeDoneMarker(url, metadata, params);\n if (done) {\n url.cached = true;\n return this.trcUrl(url, file);\n }\n }\n return this.hlsUrl(url, file);\n }\n return url;\n },\n async streamUrl(url, metadata, params, context) {\n return this.baseStreamUrl(url, 'index.m3u8', metadata, params, context);\n },\n async segmentUrl(url, segment, metadata, params, context) {\n return this.baseStreamUrl(url, segment, metadata, params, context);\n },\n async error(url, metadata, params) {\n url = this.cloneUrl(url);\n const deliveryType = this.getDeliveryType(url.pathname);\n const mediaType = this.getMediaType(url.pathname);\n if (deliveryType == 'webseed' || mediaType == 'subtitle') return;\n if (params.cache) {\n const done = await this.throttledTranscodeDoneMarker(url, metadata, params);\n if (done) {\n return;\n } else {\n url = this.hlsUrl(url, 'error.log');\n }\n } else {\n url = this.hlsUrl(url, 'error.log');\n }\n const res = await fetch(url);\n const err = await res.text();\n return err;\n },\n async transcodeDoneMarker(url) {\n url = this.cloneUrl(url);\n url = this.transcodeDoneMarkerUrl(url);\n const res = await(retryFetch(url));\n return res.status == 200;\n },\n async multibitrateDoneMarker(url) {\n url = this.cloneUrl(url);\n url = this.multibitrateDoneMarkerUrl(url);\n const res = await(retryFetch(url));\n return res.status == 200;\n },\n\n async transcodeIndexExists(url) {\n url = this.cloneUrl(url);\n url = this.transcodeIndexUrl(url);\n const res = await(retryFetch(url));\n return res.status == 200;\n },\n\n async multibitrateIndexExists(url) {\n url = this.cloneUrl(url);\n url = this.multibitrateIndexUrl(url);\n const res = await(retryFetch(url));\n return res.status == 200;\n },\n\n async completedPieces(url) {\n url = this.cloneUrl(url);\n url = this.completedPiecesUrl(url);\n const res = await(retryFetch(url));\n const buf = await res.arrayBuffer();\n const byteArr = new Uint8Array(buf);\n const hex = buf2hex(byteArr);\n const pieces = [];\n let p = '';\n for (const c of hex) {\n p += c;\n if (p.length == 40) {\n pieces.push(p);\n p = '';\n }\n }\n return pieces;\n },\n\n async mediaInfo(url, metadata = {}, params = {}) {\n url = this.cloneUrl(url);\n const deliveryType = this.getDeliveryType(url.pathname);\n const mediaType = this.getMediaType(url.pathname);\n if (deliveryType == 'webseed' || mediaType == 'subtitle') return {};\n if (params.cache) {\n const done = await this.throttledTranscodeDoneMarker(url, metadata, params);\n if (done) {\n url = this.trcUrl(url, 'index.json');\n } else {\n url = this.hlsUrl(url, 'index.json');\n }\n } else {\n url = this.hlsUrl(url, 'index.json');\n }\n const res = await(retryFetch(url));\n const mediaInfo = await res.json();\n return mediaInfo;\n },\n async openSubtitles(url) {\n url = this.cloneUrl(url);\n const mediaType = this.getMediaType(url.pathname);\n if (mediaType != 'video') return {};\n const subtitlesUrl = this.viUrl(url, '/subtitles.json');\n const res = await(retryFetch(subtitlesUrl));\n const data = await res.json();\n\n for (const k in data) {\n const format = data[k].format; \n if (format != 'srt' && format != 'vtt') continue;\n let src = data[k].src;\n let sUrl = this.viUrl(url, src);\n if (format != 'vtt') {\n sUrl = this.vttUrl(sUrl);\n }\n data[k].src = sUrl\n }\n return data;\n },\n async subdomainsUrl(metadata = {}, params = {}) {\n params = Object.assign({}, self.params, params);\n const url = new Url(params.apiUrl);\n const pathname = '/subdomains.json';\n url.set('pathname', pathname);\n const query = await self.sdk.util.makeQuery(metadata, params);\n url.set('query', query);\n return url;\n },\n async checkApi(metadata = {}, params = {}) {\n params = Object.assign({}, self.params, params);\n return fetch(params.apiUrl);\n },\n async subdomains(u, path, metadata = {}, params = {}) {\n params = Object.assign({}, self.params, params);\n const url = await this.subdomainsUrl(metadata, params);\n const res = await(retryFetch(url));\n const s = await res.json();\n const rr = [];\n for (const e of s) {\n rr.push(e);\n }\n return rr;\n },\n isCDNAllowed(path, params = {}) {\n params = Object.assign({}, self.params, params);\n for (const a of params.cdnPathSuffixes) {\n if (cleanExt(path).endsWith(a)) return true;\n }\n return false;\n },\n cdnUrl(url, metadata = {}, params = {}) {\n url = this.cloneUrl(url);\n params = Object.assign({}, self.params, params);\n if (params.cdn && params.cdnUrl && this.isCDNAllowed(url.pathname, params)) {\n let cdnUrl = new Url(params.cdnUrl);\n url.set('hostname', cdnUrl.hostname);\n url.set('protocol', cdnUrl.protocol);\n url.set('query', '?api-key=' + params.apiKey);\n return url;\n }\n return false;\n },\n async throttled(func, interval, url, file, metadata, params, k) {\n let key = url.infoHash + file + func.name;\n if (k) key += k;\n if (!throttledFuncs[key]) {\n throttledFuncs[key] = throttle(bind(func, this, url, file, metadata, params), interval, {\n trailing: false,\n });\n }\n const tf = throttledFuncs[key];\n return await tf();\n },\n async cacheUrl(url, metadata, params) {\n const completedPieces = await this.throttledCompletedPieces(url, metadata, params);\n if (completedPieces.length > 0) {\n return this.tcUrl(url);\n }\n return url;\n\n },\n async throttledCompletedPieces(url, metadata = {}, params = {}) {\n let completedPieces = [];\n if (params.cache) {\n completedPieces = await this.throttled(this.completedPieces, 10*60*1000, url, null, metadata, params);\n }\n return completedPieces;\n },\n async throttledTranscodeIndexExists(url, metadata = {}, params = {}) {\n let done = false;\n if (params.cache) {\n done = await this.throttled(this.transcodeIndexExists, 10*60*1000, url, url.path, metadata, params);\n }\n return done;\n },\n async throttledTranscodeDoneMarker(url, metadata = {}, params = {}) {\n let done = false;\n if (params.cache) {\n done = await this.throttled(this.transcodeDoneMarker, 10*60*1000, url, url.path, metadata, params);\n }\n return done;\n },\n async throttledMultibitrateDoneMarker(url, metadata = {}, params = {}) {\n let done = false;\n if (params.cache) {\n done = await this.throttled(this.multibitrateDoneMarker, 10*60*1000, url, url.path, metadata, params);\n }\n return done;\n },\n async throttledMultibitrateIndexExists(url, metadata = {}, params = {}) {\n let done = false;\n if (params.cache) {\n done = await this.throttled(this.multibitrateIndexExists, 10*60*1000, url, url.path, metadata, params);\n }\n return done;\n },\n async isCached(url, metadata = {}, params = {}) {\n const deliveryType = this.getDeliveryType(url.pathname);\n const mediaType = this.getMediaType(url.pathname);\n if (mediaType == 'video') {\n if (await this.throttledMultibitrateDoneMarker(url, metadata, params)) return true;\n }\n if (deliveryType == 'transcode') {\n if (await this.throttledTranscodeDoneMarker(url, metadata, params)) return true;\n }\n const completedPieces = await this.throttledCompletedPieces(url, metadata, params);\n return completedPieces.length > 0;\n },\n async subdomainUrl(url, context = {}, metadata = {}, params = {}) {\n url = this.cloneUrl(url);\n params = Object.assign({}, self.params, params);\n if (!params.subdomains) {\n return url;\n }\n try {\n // const cached = await this.isCached(url, metadata, params);\n const subdomains = await this.throttled(this.subdomains, 30*1000, url, null, metadata, params, metadata.pool);\n if (!context.usedSubdomains) context.usedSubdomains = [];\n let sub = subdomains.filter(e => !context.usedSubdomains.includes(e));\n if (sub.length == 0 && subdomains.length > 0) {\n sub = [subdomains[0]];\n context.usedSubdomains = [];\n }\n if (sub.length !== 0) {\n const s = sub[0];\n url.set('hostname', s + '.' + url.hostname);\n context.usedSubdomains.push(s);\n }\n } catch (e) {\n debug(e);\n console.log(e);\n return false;\n }\n return url;\n }\n };\n return util;\n}","const pathParse = require('path-parse');\nconst Url = require('url-parse');\n\nexport default function(params, sdk) {\n const self = {params, sdk};\n return {\n async url(extUrl, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = new Url(params.apiUrl);\n let fileName = \"\";\n if (params.fileName) {\n fileName = params.fileName;\n } else {\n fileName = pathParse(extUrl).base;\n }\n const encodedUrl = encodeURIComponent(btoa(extUrl));\n const pathname = '/ext/' + encodedUrl + '/' + fileName;\n url.set('pathname', pathname);\n const query = await self.sdk.util.makeQuery(metadata, params);\n url.set('query', query);\n return url;\n },\n async streamSubtitleUrl(extUrl, metadata = {}, params = {}) {\n const url = await this.url(extUrl, metadata, params);\n return self.sdk.util.streamSubtitleUrl(url);\n },\n async streamUrl(extUrl, metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n let url = await this.url(extUrl, metadata, params);\n return self.sdk.util.streamUrl(url, metadata, params);\n },\n async mediaInfo(extUrl, metadata = {}, params = {}) {\n const url = await this.url(extUrl, metadata, params);\n return await self.sdk.util.mediaInfo(url);\n },\n async openSubtitles(extUrl, metadata = {}, params = {}) {\n const url = await this.url(extUrl, metadata, params);\n return await self.sdk.util.openSubtitles(url);\n },\n };\n};","import torrent from './sdk/torrent';\nimport magnet from './sdk/magnet';\nimport abuse from './sdk/abuse';\nimport seeder from './sdk/seeder';\nimport tracker from './sdk/tracker';\nimport loader from './sdk/loader';\nimport util from './sdk/util';\nimport ext from './sdk/ext';\nimport throttle from 'lodash/throttle';\n\nconst defaultParams = {\n db: null,\n grpcDebug: false,\n retryInterval: 1000,\n retryLimit: 3,\n cache: false,\n multibitrate: false,\n vod: false,\n pools: {\n cache: [],\n seeder: [],\n transcoder: [],\n },\n subdomains: false,\n async getToken() {\n return null;\n },\n endpoints: {\n torrent: '/store'\n },\n tokenRenewInterval: 60000,\n}\n\nfunction sdk(params = {}) {\n params = Object.assign(defaultParams, params);\n if (params.tokenUrl) {\n params.getToken = async () => {\n const res = await fetch(params.tokenUrl);\n return res.text();\n }\n }\n if (params.tokenRenewInterval) {\n const t = params.getToken;\n params.getToken = throttle(t, params.tokenRenewInterval, {\n trailing: false,\n });\n }\n\n let sdk = {};\n\n sdk = Object.assign(sdk, {\n params,\n tracker: tracker(params, sdk),\n seeder: seeder(params, sdk),\n ext: ext(params, sdk),\n magnet: magnet(params, sdk),\n torrent: torrent(params, sdk),\n abuse: abuse(params, sdk),\n util: util(params, sdk),\n loader: loader(params, sdk),\n });\n sdk.checkApi = (metadata = {}, params = {}) => {\n return sdk.util.checkApi(metadata, params);\n }\n sdk.load = (source, metadata = {}, params = {}) => {\n return sdk.loader.load(source, metadata, params);\n };\n sdk.loadById = (type, id, metadata = {}, params = {}) => {\n return sdk.loader.loadById(type, id, metadata, params);\n };\n\n return sdk;\n\n};\n\nexport default function(params = {}) {\n return sdk(params);\n}","// source: proto/torrent-store/torrent-store.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar proto = {};\n\ngoog.exportSymbol('CheckReply', null, proto);\ngoog.exportSymbol('CheckRequest', null, proto);\ngoog.exportSymbol('PullReply', null, proto);\ngoog.exportSymbol('PullRequest', null, proto);\ngoog.exportSymbol('PushReply', null, proto);\ngoog.exportSymbol('PushRequest', null, proto);\ngoog.exportSymbol('TouchReply', null, proto);\ngoog.exportSymbol('TouchRequest', null, proto);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PushReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PushReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PushReply.displayName = 'proto.PushReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PushRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PushRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PushRequest.displayName = 'proto.PushRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PullRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PullRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PullRequest.displayName = 'proto.PullRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PullReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PullReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PullReply.displayName = 'proto.PullReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.CheckRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.CheckRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.CheckRequest.displayName = 'proto.CheckRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.CheckReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.CheckReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.CheckReply.displayName = 'proto.CheckReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.TouchReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.TouchReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.TouchReply.displayName = 'proto.TouchReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.TouchRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.TouchRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.TouchRequest.displayName = 'proto.TouchRequest';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PushReply.prototype.toObject = function(opt_includeInstance) {\n return proto.PushReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PushReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n infohash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PushReply}\n */\nproto.PushReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PushReply;\n return proto.PushReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PushReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PushReply}\n */\nproto.PushReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PushReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PushReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PushReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string infoHash = 1;\n * @return {string}\n */\nproto.PushReply.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushReply} returns this\n */\nproto.PushReply.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PushRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.PushRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PushRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n torrent: msg.getTorrent_asB64(),\n expire: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PushRequest}\n */\nproto.PushRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PushRequest;\n return proto.PushRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PushRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PushRequest}\n */\nproto.PushRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setTorrent(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setExpire(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PushRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PushRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PushRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTorrent_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getExpire();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bytes torrent = 1;\n * @return {!(string|Uint8Array)}\n */\nproto.PushRequest.prototype.getTorrent = function() {\n return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {string}\n */\nproto.PushRequest.prototype.getTorrent_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getTorrent()));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {!Uint8Array}\n */\nproto.PushRequest.prototype.getTorrent_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getTorrent()));\n};\n\n\n/**\n * @param {!(string|Uint8Array)} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setTorrent = function(value) {\n return jspb.Message.setProto3BytesField(this, 1, value);\n};\n\n\n/**\n * optional int32 expire = 2;\n * @return {number}\n */\nproto.PushRequest.prototype.getExpire = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setExpire = function(value) {\n return jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PullRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.PullRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PullRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PullRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n infohash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PullRequest}\n */\nproto.PullRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PullRequest;\n return proto.PullRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PullRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PullRequest}\n */\nproto.PullRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PullRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PullRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PullRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PullRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string infoHash = 1;\n * @return {string}\n */\nproto.PullRequest.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PullRequest} returns this\n */\nproto.PullRequest.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PullReply.prototype.toObject = function(opt_includeInstance) {\n return proto.PullReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PullReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PullReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n torrent: msg.getTorrent_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PullReply}\n */\nproto.PullReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PullReply;\n return proto.PullReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PullReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PullReply}\n */\nproto.PullReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setTorrent(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PullReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PullReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PullReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PullReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTorrent_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bytes torrent = 1;\n * @return {!(string|Uint8Array)}\n */\nproto.PullReply.prototype.getTorrent = function() {\n return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {string}\n */\nproto.PullReply.prototype.getTorrent_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getTorrent()));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {!Uint8Array}\n */\nproto.PullReply.prototype.getTorrent_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getTorrent()));\n};\n\n\n/**\n * @param {!(string|Uint8Array)} value\n * @return {!proto.PullReply} returns this\n */\nproto.PullReply.prototype.setTorrent = function(value) {\n return jspb.Message.setProto3BytesField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.CheckRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.CheckRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.CheckRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n infohash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.CheckRequest}\n */\nproto.CheckRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.CheckRequest;\n return proto.CheckRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.CheckRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.CheckRequest}\n */\nproto.CheckRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.CheckRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.CheckRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.CheckRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string infoHash = 1;\n * @return {string}\n */\nproto.CheckRequest.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.CheckRequest} returns this\n */\nproto.CheckRequest.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.CheckReply.prototype.toObject = function(opt_includeInstance) {\n return proto.CheckReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.CheckReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n exists: jspb.Message.getBooleanFieldWithDefault(msg, 1, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.CheckReply}\n */\nproto.CheckReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.CheckReply;\n return proto.CheckReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.CheckReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.CheckReply}\n */\nproto.CheckReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setExists(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.CheckReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.CheckReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.CheckReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getExists();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bool exists = 1;\n * @return {boolean}\n */\nproto.CheckReply.prototype.getExists = function() {\n return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 1, false));\n};\n\n\n/**\n * @param {boolean} value\n * @return {!proto.CheckReply} returns this\n */\nproto.CheckReply.prototype.setExists = function(value) {\n return jspb.Message.setProto3BooleanField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.TouchReply.prototype.toObject = function(opt_includeInstance) {\n return proto.TouchReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.TouchReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.TouchReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.TouchReply}\n */\nproto.TouchReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.TouchReply;\n return proto.TouchReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.TouchReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.TouchReply}\n */\nproto.TouchReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.TouchReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.TouchReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.TouchReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.TouchReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.TouchRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.TouchRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.TouchRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.TouchRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n infohash: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n expire: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.TouchRequest}\n */\nproto.TouchRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.TouchRequest;\n return proto.TouchRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.TouchRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.TouchRequest}\n */\nproto.TouchRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setExpire(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.TouchRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.TouchRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.TouchRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.TouchRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getExpire();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string infoHash = 1;\n * @return {string}\n */\nproto.TouchRequest.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.TouchRequest} returns this\n */\nproto.TouchRequest.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n/**\n * optional int32 expire = 2;\n * @return {number}\n */\nproto.TouchRequest.prototype.getExpire = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.TouchRequest} returns this\n */\nproto.TouchRequest.prototype.setExpire = function(value) {\n return jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\ngoog.object.extend(exports, proto);\n","// package: \n// file: proto/abuse-store/abuse-store.proto\n\nvar proto_abuse_store_abuse_store_pb = require(\"../../proto/abuse-store/abuse-store_pb\");\nvar grpc = require(\"@improbable-eng/grpc-web\").grpc;\n\nvar AbuseStore = (function () {\n function AbuseStore() {}\n AbuseStore.serviceName = \"AbuseStore\";\n return AbuseStore;\n}());\n\nAbuseStore.Push = {\n methodName: \"Push\",\n service: AbuseStore,\n requestStream: false,\n responseStream: false,\n requestType: proto_abuse_store_abuse_store_pb.PushRequest,\n responseType: proto_abuse_store_abuse_store_pb.PushReply\n};\n\nAbuseStore.Check = {\n methodName: \"Check\",\n service: AbuseStore,\n requestStream: false,\n responseStream: false,\n requestType: proto_abuse_store_abuse_store_pb.CheckRequest,\n responseType: proto_abuse_store_abuse_store_pb.CheckReply\n};\n\nexports.AbuseStore = AbuseStore;\n\nfunction AbuseStoreClient(serviceHost, options) {\n this.serviceHost = serviceHost;\n this.options = options || {};\n}\n\nAbuseStoreClient.prototype.push = function push(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(AbuseStore.Push, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nAbuseStoreClient.prototype.check = function check(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(AbuseStore.Check, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nexports.AbuseStoreClient = AbuseStoreClient;\n\n","module.exports = require('./build/mediaelement-and-player.js');\n","// source: proto/torrent-web-seeder/torrent-web-seeder.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar proto = {};\n\ngoog.exportSymbol('File', null, proto);\ngoog.exportSymbol('FilesReply', null, proto);\ngoog.exportSymbol('FilesRequest', null, proto);\ngoog.exportSymbol('Piece', null, proto);\ngoog.exportSymbol('Piece.Priority', null, proto);\ngoog.exportSymbol('StatReply', null, proto);\ngoog.exportSymbol('StatReply.Status', null, proto);\ngoog.exportSymbol('StatRequest', null, proto);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.StatRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.StatRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.StatRequest.displayName = 'proto.StatRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.StatReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.StatReply.repeatedFields_, null);\n};\ngoog.inherits(proto.StatReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.StatReply.displayName = 'proto.StatReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.Piece = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.Piece, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.Piece.displayName = 'proto.Piece';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.FilesRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.FilesRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.FilesRequest.displayName = 'proto.FilesRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.File = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.File, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.File.displayName = 'proto.File';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.FilesReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.FilesReply.repeatedFields_, null);\n};\ngoog.inherits(proto.FilesReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.FilesReply.displayName = 'proto.FilesReply';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.StatRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.StatRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.StatRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n path: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.StatRequest}\n */\nproto.StatRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.StatRequest;\n return proto.StatRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.StatRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.StatRequest}\n */\nproto.StatRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPath(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.StatRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.StatRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.StatRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPath();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string path = 1;\n * @return {string}\n */\nproto.StatRequest.prototype.getPath = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.StatRequest} returns this\n */\nproto.StatRequest.prototype.setPath = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.StatReply.repeatedFields_ = [5];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.StatReply.prototype.toObject = function(opt_includeInstance) {\n return proto.StatReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.StatReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n total: jspb.Message.getFieldWithDefault(msg, 1, 0),\n completed: jspb.Message.getFieldWithDefault(msg, 2, 0),\n peers: jspb.Message.getFieldWithDefault(msg, 3, 0),\n status: jspb.Message.getFieldWithDefault(msg, 4, 0),\n piecesList: jspb.Message.toObjectList(msg.getPiecesList(),\n proto.Piece.toObject, includeInstance),\n seeders: jspb.Message.getFieldWithDefault(msg, 6, 0),\n leechers: jspb.Message.getFieldWithDefault(msg, 7, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.StatReply}\n */\nproto.StatReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.StatReply;\n return proto.StatReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.StatReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.StatReply}\n */\nproto.StatReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotal(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCompleted(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setPeers(value);\n break;\n case 4:\n var value = /** @type {!proto.StatReply.Status} */ (reader.readEnum());\n msg.setStatus(value);\n break;\n case 5:\n var value = new proto.Piece;\n reader.readMessage(value,proto.Piece.deserializeBinaryFromReader);\n msg.addPieces(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setSeeders(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setLeechers(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.StatReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.StatReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.StatReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTotal();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getCompleted();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getPeers();\n if (f !== 0) {\n writer.writeInt32(\n 3,\n f\n );\n }\n f = message.getStatus();\n if (f !== 0.0) {\n writer.writeEnum(\n 4,\n f\n );\n }\n f = message.getPiecesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 5,\n f,\n proto.Piece.serializeBinaryToWriter\n );\n }\n f = message.getSeeders();\n if (f !== 0) {\n writer.writeInt32(\n 6,\n f\n );\n }\n f = message.getLeechers();\n if (f !== 0) {\n writer.writeInt32(\n 7,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.StatReply.Status = {\n INITIALIZATION: 0,\n SEEDING: 1,\n IDLE: 2,\n TERMINATED: 3,\n WAITING_FOR_PEERS: 4,\n RESTORING: 5,\n BACKINGUP: 6\n};\n\n/**\n * optional int64 total = 1;\n * @return {number}\n */\nproto.StatReply.prototype.getTotal = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setTotal = function(value) {\n return jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional int64 completed = 2;\n * @return {number}\n */\nproto.StatReply.prototype.getCompleted = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setCompleted = function(value) {\n return jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\n/**\n * optional int32 peers = 3;\n * @return {number}\n */\nproto.StatReply.prototype.getPeers = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setPeers = function(value) {\n return jspb.Message.setProto3IntField(this, 3, value);\n};\n\n\n/**\n * optional Status status = 4;\n * @return {!proto.StatReply.Status}\n */\nproto.StatReply.prototype.getStatus = function() {\n return /** @type {!proto.StatReply.Status} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/**\n * @param {!proto.StatReply.Status} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setStatus = function(value) {\n return jspb.Message.setProto3EnumField(this, 4, value);\n};\n\n\n/**\n * repeated Piece pieces = 5;\n * @return {!Array}\n */\nproto.StatReply.prototype.getPiecesList = function() {\n return /** @type{!Array} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.Piece, 5));\n};\n\n\n/**\n * @param {!Array} value\n * @return {!proto.StatReply} returns this\n*/\nproto.StatReply.prototype.setPiecesList = function(value) {\n return jspb.Message.setRepeatedWrapperField(this, 5, value);\n};\n\n\n/**\n * @param {!proto.Piece=} opt_value\n * @param {number=} opt_index\n * @return {!proto.Piece}\n */\nproto.StatReply.prototype.addPieces = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 5, opt_value, proto.Piece, opt_index);\n};\n\n\n/**\n * Clears the list making it empty but non-null.\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.clearPiecesList = function() {\n return this.setPiecesList([]);\n};\n\n\n/**\n * optional int32 seeders = 6;\n * @return {number}\n */\nproto.StatReply.prototype.getSeeders = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setSeeders = function(value) {\n return jspb.Message.setProto3IntField(this, 6, value);\n};\n\n\n/**\n * optional int32 leechers = 7;\n * @return {number}\n */\nproto.StatReply.prototype.getLeechers = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setLeechers = function(value) {\n return jspb.Message.setProto3IntField(this, 7, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.Piece.prototype.toObject = function(opt_includeInstance) {\n return proto.Piece.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.Piece} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Piece.toObject = function(includeInstance, msg) {\n var f, obj = {\n position: jspb.Message.getFieldWithDefault(msg, 1, 0),\n complete: jspb.Message.getBooleanFieldWithDefault(msg, 2, false),\n priority: jspb.Message.getFieldWithDefault(msg, 3, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.Piece}\n */\nproto.Piece.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.Piece;\n return proto.Piece.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.Piece} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.Piece}\n */\nproto.Piece.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPosition(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setComplete(value);\n break;\n case 3:\n var value = /** @type {!proto.Piece.Priority} */ (reader.readEnum());\n msg.setPriority(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.Piece.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.Piece.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.Piece} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Piece.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPosition();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getComplete();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n f = message.getPriority();\n if (f !== 0.0) {\n writer.writeEnum(\n 3,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.Piece.Priority = {\n NONE: 0,\n NORMAL: 1,\n HIGH: 2,\n READAHEAD: 3,\n NEXT: 4,\n NOW: 5\n};\n\n/**\n * optional int64 position = 1;\n * @return {number}\n */\nproto.Piece.prototype.getPosition = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.Piece} returns this\n */\nproto.Piece.prototype.setPosition = function(value) {\n return jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional bool complete = 2;\n * @return {boolean}\n */\nproto.Piece.prototype.getComplete = function() {\n return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 2, false));\n};\n\n\n/**\n * @param {boolean} value\n * @return {!proto.Piece} returns this\n */\nproto.Piece.prototype.setComplete = function(value) {\n return jspb.Message.setProto3BooleanField(this, 2, value);\n};\n\n\n/**\n * optional Priority priority = 3;\n * @return {!proto.Piece.Priority}\n */\nproto.Piece.prototype.getPriority = function() {\n return /** @type {!proto.Piece.Priority} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/**\n * @param {!proto.Piece.Priority} value\n * @return {!proto.Piece} returns this\n */\nproto.Piece.prototype.setPriority = function(value) {\n return jspb.Message.setProto3EnumField(this, 3, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.FilesRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.FilesRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.FilesRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.FilesRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.FilesRequest}\n */\nproto.FilesRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.FilesRequest;\n return proto.FilesRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.FilesRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.FilesRequest}\n */\nproto.FilesRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.FilesRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.FilesRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.FilesRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.FilesRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.File.prototype.toObject = function(opt_includeInstance) {\n return proto.File.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.File} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.File.toObject = function(includeInstance, msg) {\n var f, obj = {\n path: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.File}\n */\nproto.File.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.File;\n return proto.File.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.File} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.File}\n */\nproto.File.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPath(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.File.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.File.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.File} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.File.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPath();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string path = 1;\n * @return {string}\n */\nproto.File.prototype.getPath = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.File} returns this\n */\nproto.File.prototype.setPath = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.FilesReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.FilesReply.prototype.toObject = function(opt_includeInstance) {\n return proto.FilesReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.FilesReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.FilesReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n filesList: jspb.Message.toObjectList(msg.getFilesList(),\n proto.File.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.FilesReply}\n */\nproto.FilesReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.FilesReply;\n return proto.FilesReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.FilesReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.FilesReply}\n */\nproto.FilesReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.File;\n reader.readMessage(value,proto.File.deserializeBinaryFromReader);\n msg.addFiles(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.FilesReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.FilesReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.FilesReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.FilesReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getFilesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.File.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated File files = 1;\n * @return {!Array}\n */\nproto.FilesReply.prototype.getFilesList = function() {\n return /** @type{!Array} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.File, 1));\n};\n\n\n/**\n * @param {!Array} value\n * @return {!proto.FilesReply} returns this\n*/\nproto.FilesReply.prototype.setFilesList = function(value) {\n return jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.File=} opt_value\n * @param {number=} opt_index\n * @return {!proto.File}\n */\nproto.FilesReply.prototype.addFiles = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.File, opt_index);\n};\n\n\n/**\n * Clears the list making it empty but non-null.\n * @return {!proto.FilesReply} returns this\n */\nproto.FilesReply.prototype.clearFilesList = function() {\n return this.setFilesList([]);\n};\n\n\ngoog.object.extend(exports, proto);\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///../mediaelement/build/lang/ru.js","webpack:///../platform-sdk/src/sdk/torrent.js","webpack:///../platform-sdk/proto/download-progress/download-progress_pb.js","webpack:///../platform-sdk/proto/magnet2torrent/magnet2torrent_pb_service.js","webpack:///../platform-sdk/src/sdk/loader/torrent/resource.js","webpack:///../platform-sdk/src/sdk/loader.js","webpack:///../platform-sdk/proto/magnet2torrent/magnet2torrent_pb.js","webpack:///../platform-sdk/proto/abuse-store/abuse-store_pb.js","webpack:///../platform-sdk/proto/download-progress/download-progress_pb_service.js","webpack:///../platform-sdk/proto/torrent-web-seeder/torrent-web-seeder_pb_service.js","webpack:///../platform-sdk/proto/torrent-store/torrent-store_pb_service.js","webpack:///../platform-sdk/src/sdk/process.js","webpack:///../platform-sdk/src/sdk/magnet.js","webpack:///../platform-sdk/src/sdk/abuse.js","webpack:///../platform-sdk/src/sdk/seeder/stats.js","webpack:///../platform-sdk/src/sdk/seeder/downloadProgress.js","webpack:///../platform-sdk/src/sdk/seeder.js","webpack:///../platform-sdk/src/sdk/tracker.js","webpack:///../platform-sdk/src/sdk/util.js","webpack:///../platform-sdk/src/sdk/ext.js","webpack:///../platform-sdk/src/index.js","webpack:///../platform-sdk/proto/torrent-store/torrent-store_pb.js","webpack:///../platform-sdk/proto/abuse-store/abuse-store_pb_service.js","webpack:///../mediaelement/full.js","webpack:///../platform-sdk/proto/torrent-web-seeder/torrent-web-seeder_pb.js"],"names":["exports","undefined","ru","mejs","i18n","debug","require","params","self","fromUrl","url","Promise","resolve","reject","xhr","XMLHttpRequest","addEventListener","onreadystatechange","async","this","readyState","DONE","ab","Uint8Array","response","buffer","Buffer","byteLength","view","i","length","parseTorrent","open","responseType","send","pull","infoHash","metadata","Object","assign","apiUrl","endpoints","torrent","request","PullRequest","setInfohash","process","grpc","client","TorrentStore","Pull","host","grpcDebug","message","from","res","Code","PermissionDenied","OK","push","expire","PushRequest","setTorrent","toTorrentFile","Push","NotFound","touch","TouchRequest","Touch","jspb","goog","proto","exportSymbol","StatRequest","opt_data","Message","initialize","inherits","DEBUG","COMPILED","displayName","StatReply","GENERATE_TO_OBJECT","prototype","toObject","opt_includeInstance","includeInstance","msg","obj","$jspbMessageInstance","deserializeBinary","bytes","reader","BinaryReader","deserializeBinaryFromReader","nextField","isEndGroup","getFieldNumber","skipField","serializeBinary","writer","BinaryWriter","serializeBinaryToWriter","getResultBuffer","status","getFieldWithDefault","downloaded","rate","value","readEnum","setStatus","readInt64","setDownloaded","setRate","setLength","f","getStatus","writeEnum","getDownloaded","writeInt64","getRate","getLength","Status","NOT_STARTED","PENDING","ACTIVE","FAILED","setProto3EnumField","setProto3IntField","object","extend","proto_magnet2torrent_magnet2torrent_pb","Magnet2Torrent","serviceName","Magnet2TorrentClient","serviceHost","options","methodName","service","requestStream","responseStream","requestType","Magnet2TorrentRequest","Magnet2TorrentReply","magnet2Torrent","requestMessage","callback","arguments","unary","transport","onEnd","err","Error","statusMessage","code","trailers","cancel","close","Content","constructor","path","name","type","sdk","seeder","isDir","util","getMediaType","getMimeType","getStreamUrl","getDeliveryType","streamUrl","s","c","segmentUrl","File","super","Dir","content","Resource","id","charAt","toMagnetURI","addBranch","tree","parts","file","part","shift","join","files","pathParts","split","keys","dirname","replace","dir","p","filename","isFile","ls","pop","sort","a","b","localeCompare","newResource","get","source","loadTorrentObject","loadTorrentFile","loadMagnet","loadTorrentUrl","pushTorrent","newTorrentResource","e","match","ext","size","fileToArray","db","pullTorrent","pieces","magnet","fetchTorrent","FileReader","arr","target","result","readAsArrayBuffer","readString","setMagnet","getMagnet","writeString","setProto3StringField","getTorrent_asB64","readBytes","getTorrent_asU8","writeBytes","getTorrent","bytesAsB64","bytesAsU8","setProto3BytesField","PushReply","CheckRequest","CheckReply","noticeId","infohash","work","startedAt","email","description","subject","cause","setNoticeId","setFilename","setWork","setStartedAt","setEmail","setDescription","setSubject","setCause","setSource","getNoticeId","getInfohash","getFilename","getWork","getStartedAt","getEmail","getDescription","getSubject","getCause","getSource","Cause","ILLEGAL_CONTENT","MALWARE","APP_ERROR","QUESTION","Source","MAIL","FORM","exists","getBooleanFieldWithDefault","readBool","setExists","getExists","writeBool","setProto3BooleanField","proto_download_progress_download_progress_pb","DownloadProgress","DownloadProgressClient","Stat","StatStream","stat","statStream","listeners","data","end","invoke","onMessage","responseMessage","forEach","handler","details","on","proto_torrent_web_seeder_torrent_web_seeder_pb","TorrentWebSeeder","TorrentWebSeederClient","Files","FilesRequest","FilesReply","proto_torrent_store_torrent_store_pb","TorrentStoreClient","PullReply","TouchReply","getToken","apiKey","retryCount","Unknown","Unavailable","retryInterval","retryLimit","setTimeout","start","Metadata","finishSend","WebsocketTransport","abuse","AbuseStore","Stats","closed","setPath","statuses","invert","map","statusName","piecesList","m","position","complete","priority","JSON","parse","stringify","st","Url","md5","WebSeeder","addDownloadId","Date","now","toString","context","pathname","encodeURIComponent","set","query","makeQuery","subdomains","cacheUrl","cached","isCached","pool","pools","transcoder","cache","subdomainUrl","primaryHost","completedPieces","cdnUrl","urlPostProcess","segment","error","pieceUrl","mediaInfo","throttledCompletedPieces","openSubtitles","downloadUrl","download","cdn","fileName","dpUrl","statUrl","dpStatUrl","downloadProgress","zipUrl","protocol","hostname","stats","retryFetch","href","fetch","retries","retryDelay","attempt","Math","pow","retryOn","cleanExt","toLowerCase","cleanPath","throttledFuncs","token","extname","includes","mime","getType","getSubtitleSrcLang","baseName","basename","ISO6391","getAllCodes","endsWith","getSubtitleLang","getLang","getName","nativeName","getNativeName","cloneUrl","vttUrl","primaryUrl","completedPiecesUrl","tcUrl","transcodeDoneMarkerUrl","multibitrateDoneMarkerUrl","transcodeIndexUrl","multibitrateIndexUrl","hlsUrl","trcUrl","mtrcUrl","vodUrl","viUrl","deliveryType","vod","multibitrate","throttledMultibitrateDoneMarker","throttledTranscodeDoneMarker","baseStreamUrl","mediaType","text","buf","arrayBuffer","byteArr","hex","Array","call","x","slice","json","subtitlesUrl","k","format","src","sUrl","u","subdomainsUrl","rr","isCDNAllowed","cdnPathSuffixes","func","interval","key","throttle","bind","trailing","tf","throttled","done","transcodeIndexExists","transcodeDoneMarker","multibitrateDoneMarker","multibitrateIndexExists","usedSubdomains","sub","filter","console","log","pathParse","extUrl","base","btoa","streamSubtitleUrl","defaultParams","tokenRenewInterval","tokenUrl","t","tracker","loader","checkApi","load","loadById","readInt32","setExpire","getExpire","writeInt32","proto_abuse_store_abuse_store_pb","AbuseStoreClient","Check","check","module","repeatedFields_","Piece","getPath","total","completed","peers","toObjectList","getPiecesList","seeders","leechers","setTotal","setCompleted","setPeers","readMessage","addPieces","setSeeders","setLeechers","getTotal","getCompleted","getPeers","writeRepeatedMessage","getSeeders","getLeechers","INITIALIZATION","SEEDING","IDLE","TERMINATED","WAITING_FOR_PEERS","RESTORING","BACKINGUP","getRepeatedWrapperField","setPiecesList","setRepeatedWrapperField","opt_value","opt_index","addToRepeatedWrapperField","clearPiecesList","setPosition","setComplete","setPriority","getPosition","getComplete","getPriority","Priority","NONE","NORMAL","HIGH","READAHEAD","NEXT","NOW","filesList","getFilesList","addFiles","setFilesList","clearFilesList"],"mappings":"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","file":"async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js","sourcesContent":["'use strict';/*!\n * This is a `i18n` language object.\n *\n * Russian\n *\n * @author\n * Jalios (Twitter: @Jalios)\n * Sascha Greuel (Twitter: @SoftCreatR)\n *\n * @see core/i18n.js\n */\n(function (exports) {\n\tif (exports.ru === undefined) {\n\t\texports.ru = {\n\t\t\t'mejs.plural-form': 7,\t\t\t\n\t\t\t'mejs.download-file': 'Скачать файл',\t\t\t\n\t\t\t'mejs.install-flash': 'Flash player в вашем браузере не установлен или отключен. Пожалуйста включите ваш Flash player или скачайте последнюю версию с https://get.adobe.com/flashplayer/',\t\t\t\n\t\t\t'mejs.fullscreen': 'Полноэкранный режим',\t\t\t\n\t\t\t'mejs.play': 'Воспроизвести',\n\t\t\t'mejs.pause': 'Пауза',\t\t\t\n\t\t\t'mejs.time-slider': 'Слайдер времени',\n\t\t\t'mejs.time-help-text': 'Используйте Левую/Правую клавиши со стрелками, чтобы продвинуться на одну секунду, клавиши со стрелками Вверх/Вниз, чтобы продвинуться на десять секунд.',\n\t\t\t'mejs.live-broadcast' : 'Прямая трансляция',\t\t\t\n\t\t\t'mejs.volume-help-text': 'Используйте клавиши со стрелками Вверх/Вниз, чтобы увеличить или уменьшить громкость.',\n\t\t\t'mejs.unmute': 'Включить звук',\n\t\t\t'mejs.mute': 'Отключить звук',\n\t\t\t'mejs.volume-slider': 'Слайдер громкости',\t\t\t\n\t\t\t'mejs.video-player': 'Видеоплеер',\n\t\t\t'mejs.audio-player': 'Аудиоплеер',\t\t\t\n\t\t\t'mejs.captions-subtitles': 'Титры/Субтитры',\n\t\t\t'mejs.captions-chapters': 'Главы',\n\t\t\t'mejs.none': 'Нет',\n\t\t\t'mejs.afrikaans': 'Африканский',\n\t\t\t'mejs.albanian': 'Албанский',\n\t\t\t'mejs.arabic': 'Арабский',\n\t\t\t'mejs.belarusian': 'Белорусский',\n\t\t\t'mejs.bulgarian': 'Болгарский',\n\t\t\t'mejs.catalan': 'Каталонский',\n\t\t\t'mejs.chinese': 'Китайский',\n\t\t\t'mejs.chinese-simplified': 'Китайский (упрощенный)',\n\t\t\t'mejs.chinese-traditional': 'Chinese (традиционный)',\n\t\t\t'mejs.croatian': 'Хорватский',\n\t\t\t'mejs.czech': 'Чешский',\n\t\t\t'mejs.danish': 'Датский',\n\t\t\t'mejs.dutch': 'Голландский',\n\t\t\t'mejs.english': 'Английский',\n\t\t\t'mejs.estonian': 'Эстонский',\n\t\t\t'mejs.filipino': 'Филиппинский',\n\t\t\t'mejs.finnish': 'Финский',\n\t\t\t'mejs.french': 'Французский',\n\t\t\t'mejs.galician': 'Галисийский',\n\t\t\t'mejs.german': 'Немецкий',\n\t\t\t'mejs.greek': 'Греческий',\n\t\t\t'mejs.haitian-creole': 'Гаитянский креольский',\n\t\t\t'mejs.hebrew': 'Иврит',\n\t\t\t'mejs.hindi': 'Хинди',\n\t\t\t'mejs.hungarian': 'Венгерский',\n\t\t\t'mejs.icelandic': 'Исландский',\n\t\t\t'mejs.indonesian': 'Индонезийский',\n\t\t\t'mejs.irish': 'Ирландский',\n\t\t\t'mejs.italian': 'Итальянский',\n\t\t\t'mejs.japanese': 'Японский',\n\t\t\t'mejs.korean': 'Корейский',\n\t\t\t'mejs.latvian': 'Латышский',\n\t\t\t'mejs.lithuanian': 'Литовский',\n\t\t\t'mejs.macedonian': 'Македонский',\n\t\t\t'mejs.malay': 'Малайский',\n\t\t\t'mejs.maltese': 'Мальтийский',\n\t\t\t'mejs.norwegian': 'Норвежский',\n\t\t\t'mejs.persian': 'Персидский',\n\t\t\t'mejs.polish': 'Польский',\n\t\t\t'mejs.portuguese': 'Португальский',\n\t\t\t'mejs.romanian': 'Румынский',\n\t\t\t'mejs.russian': 'Русский',\n\t\t\t'mejs.serbian': 'Сербский',\n\t\t\t'mejs.slovak': 'Словацкий',\n\t\t\t'mejs.slovenian': 'Словенский',\n\t\t\t'mejs.spanish': 'Испанский',\n\t\t\t'mejs.swahili': 'Суахили',\n\t\t\t'mejs.swedish': 'Шведский',\n\t\t\t'mejs.tagalog': 'Тагальский',\n\t\t\t'mejs.thai': 'Тайский',\n\t\t\t'mejs.turkish': 'Турецкий',\n\t\t\t'mejs.ukrainian': 'Украинский',\n\t\t\t'mejs.vietnamese': 'Вьетнамский',\n\t\t\t'mejs.welsh': 'Валлийский',\n\t\t\t'mejs.yiddish': 'Идиш'\n\t\t};\n\t}\n})(mejs.i18n);\n","import {TorrentStore} from '../../proto/torrent-store/torrent-store_pb_service';\nimport {PullRequest, PushRequest, TouchRequest} from '../../proto/torrent-store/torrent-store_pb';\nimport {grpc} from '@improbable-eng/grpc-web';\nimport process from './process';\nimport parseTorrent from 'parse-torrent';\nconst debug = require('debug')('webtor:sdk:torrent');\n\nexport default function(params = {}) {\n const self = {params};\n return {\n fromUrl(url) {\n debug('fetch torrent from url=%s', url);\n return new Promise((resolve, reject) => {\n const xhr = new XMLHttpRequest();\n xhr.addEventListener('error', reject);\n xhr.onreadystatechange = async function() {\n if (this.readyState == XMLHttpRequest.DONE) {\n const ab = new Uint8Array(this.response);\n const buffer = new Buffer(ab.byteLength);\n const view = new Uint8Array(ab);\n for (let i = 0; i < buffer.length; ++i) {\n buffer[i] = view[i];\n }\n resolve(parseTorrent(buffer));\n }\n };\n xhr.open('GET', url);\n xhr.responseType = 'arraybuffer';\n xhr.send();\n });\n },\n pull(infoHash, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = params.apiUrl + params.endpoints.torrent;\n debug('pull torrent infoHash=%s url=%s metadata=%o', infoHash, url, metadata);\n const request = new PullRequest();\n request.setInfohash(infoHash);\n const client = () => grpc.client(TorrentStore.Pull, {\n host: url,\n // transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n const onMessage = (message, resolve, reject) => {\n if (message.torrent == '') {\n return reject('no torrent');\n }\n let torrent = Buffer.from(message.torrent, 'base64');\n torrent = parseTorrent(torrent);\n debug('and finally torrent=%o', torrent);\n resolve(torrent);\n }\n const onEnd = (res, resolve, reject) => {\n if (res == grpc.Code.PermissionDenied) {\n reject('abused');\n } else if (res !== grpc.Code.OK) {\n reject('failed to pull torrent code=' + res);\n }\n }\n return process(client, request, onMessage, onEnd, metadata, params);\n },\n push(torrent, expire, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = params.apiUrl + params.endpoints.torrent;\n debug('push torrent url=%s metadata=%o', url, metadata);\n const request = new PushRequest();\n request.setTorrent(parseTorrent.toTorrentFile(torrent));\n const client = () => grpc.client(TorrentStore.Push, {\n host: url,\n // transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n const onEnd = (res, resolve, reject) => {\n if (res === grpc.Code.OK) {\n debug('torrent stored');\n resolve();\n } else if (res === grpc.Code.NotFound) {\n reject('not found');\n } else if (res === grpc.Code.PermissionDenied) {\n reject('abused');\n } else {\n reject('failed to push torrent code=' + res);\n }\n\n }\n return process(client, request, null, onEnd, metadata, params);\n },\n touch(torrent, expire, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = params.apiUrl + params.endpoints.torrent;\n debug('touch torrent url=%s metadata=%o', url, metadata);\n const request = new TouchRequest();\n request.setInfohash(torrent.infoHash);\n const client = () => grpc.client(TorrentStore.Touch, {\n host: url,\n // transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n const onEnd = (res, resolve, reject) => {\n if (res === grpc.Code.OK) {\n debug('torrent touched');\n resolve();\n } else if (res === grpc.Code.PermissionDenied) {\n reject('abused');\n } else if (res === grpc.Code.NotFound) {\n reject('not found');\n } else {\n reject('failed to touch torrent code=' + res);\n }\n }\n return process(client, request, null, onEnd, metadata, params);\n },\n };\n}","// source: proto/download-progress/download-progress.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar proto = {};\n\ngoog.exportSymbol('StatReply', null, proto);\ngoog.exportSymbol('StatReply.Status', null, proto);\ngoog.exportSymbol('StatRequest', null, proto);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.StatRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.StatRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.StatRequest.displayName = 'proto.StatRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.StatReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.StatReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.StatReply.displayName = 'proto.StatReply';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.StatRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.StatRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.StatRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.StatRequest}\n */\nproto.StatRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.StatRequest;\n return proto.StatRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.StatRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.StatRequest}\n */\nproto.StatRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.StatRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.StatRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.StatRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.StatReply.prototype.toObject = function(opt_includeInstance) {\n return proto.StatReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.StatReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n status: jspb.Message.getFieldWithDefault(msg, 1, 0),\n downloaded: jspb.Message.getFieldWithDefault(msg, 2, 0),\n rate: jspb.Message.getFieldWithDefault(msg, 3, 0),\n length: jspb.Message.getFieldWithDefault(msg, 4, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.StatReply}\n */\nproto.StatReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.StatReply;\n return proto.StatReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.StatReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.StatReply}\n */\nproto.StatReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!proto.StatReply.Status} */ (reader.readEnum());\n msg.setStatus(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setDownloaded(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setRate(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLength(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.StatReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.StatReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.StatReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getStatus();\n if (f !== 0.0) {\n writer.writeEnum(\n 1,\n f\n );\n }\n f = message.getDownloaded();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getRate();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getLength();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.StatReply.Status = {\n NOT_STARTED: 0,\n PENDING: 1,\n ACTIVE: 2,\n DONE: 3,\n FAILED: 4\n};\n\n/**\n * optional Status status = 1;\n * @return {!proto.StatReply.Status}\n */\nproto.StatReply.prototype.getStatus = function() {\n return /** @type {!proto.StatReply.Status} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/**\n * @param {!proto.StatReply.Status} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setStatus = function(value) {\n return jspb.Message.setProto3EnumField(this, 1, value);\n};\n\n\n/**\n * optional int64 downloaded = 2;\n * @return {number}\n */\nproto.StatReply.prototype.getDownloaded = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setDownloaded = function(value) {\n return jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\n/**\n * optional int64 rate = 3;\n * @return {number}\n */\nproto.StatReply.prototype.getRate = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setRate = function(value) {\n return jspb.Message.setProto3IntField(this, 3, value);\n};\n\n\n/**\n * optional int64 length = 4;\n * @return {number}\n */\nproto.StatReply.prototype.getLength = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setLength = function(value) {\n return jspb.Message.setProto3IntField(this, 4, value);\n};\n\n\ngoog.object.extend(exports, proto);\n","// package: \n// file: proto/magnet2torrent/magnet2torrent.proto\n\nvar proto_magnet2torrent_magnet2torrent_pb = require(\"../../proto/magnet2torrent/magnet2torrent_pb\");\nvar grpc = require(\"@improbable-eng/grpc-web\").grpc;\n\nvar Magnet2Torrent = (function () {\n function Magnet2Torrent() {}\n Magnet2Torrent.serviceName = \"Magnet2Torrent\";\n return Magnet2Torrent;\n}());\n\nMagnet2Torrent.Magnet2Torrent = {\n methodName: \"Magnet2Torrent\",\n service: Magnet2Torrent,\n requestStream: false,\n responseStream: false,\n requestType: proto_magnet2torrent_magnet2torrent_pb.Magnet2TorrentRequest,\n responseType: proto_magnet2torrent_magnet2torrent_pb.Magnet2TorrentReply\n};\n\nexports.Magnet2Torrent = Magnet2Torrent;\n\nfunction Magnet2TorrentClient(serviceHost, options) {\n this.serviceHost = serviceHost;\n this.options = options || {};\n}\n\nMagnet2TorrentClient.prototype.magnet2Torrent = function magnet2Torrent(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(Magnet2Torrent.Magnet2Torrent, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nexports.Magnet2TorrentClient = Magnet2TorrentClient;\n\n","import parseTorrent from 'parse-torrent';\nclass Content {\n constructor({path, name, type}, sdk, seeder) {\n this.path = path;\n this.name = name;\n this.type = type;\n this.sdk = sdk;\n this.seeder = seeder;\n }\n get isFile() {\n return this.type == 'file';\n }\n get isDir() {\n return this.type == 'dir';\n }\n get mediaType() {\n if (this.isDir) return null;\n return this.sdk.util.getMediaType(this.name);\n }\n async getMimeType() {\n if (this.isDir) return null;\n return this.sdk.util.getMimeType(await this.getStreamUrl());\n }\n async deliveryType() {\n if (this.isDir) return null;\n return this.sdk.util.getDeliveryType(this.name);\n }\n async getStreamUrl() {\n if (this.isDir) return null;\n return await this.seeder.streamUrl(this.path);\n }\n async getSegmentUrl(s, c) {\n if (this.isDir) return null;\n return await this.seeder.segmentUrl(this.path, s, c);\n }\n}\nclass File extends Content {\n constructor(i, sdk, seeder) {\n super({\n path: '/' + i.path,\n name: i.name,\n type: 'file',\n }, sdk, seeder);\n this.length = i.length;\n }\n}\nclass Dir extends Content {\n constructor(path, name, sdk, seeder) {\n super({\n path,\n name,\n type: 'dir',\n }, sdk, seeder);\n this.content = {};\n }\n}\nclass Resource {\n type = 'torrent';\n constructor(torrent, sdk, seeder) {\n this.id = torrent.infoHash;\n this.torrent = torrent;\n this.sdk = sdk;\n this.seeder = seeder;\n }\n get title() {\n return this.torrent.name;\n }\n get shortType() {\n return this.type.charAt(0);\n }\n get magnetUri() {\n return parseTorrent.toMagnetURI(this.torrent);\n }\n addBranch(tree, parts, file, path) {\n if (parts.length == 0) return new File(file, this.sdk, this.seeder);\n const part = parts.shift();\n path.push(part);\n if (parts.length > 0) {\n if (tree[part] == undefined) {\n tree[part] = new Dir('/' + path.join('/'), part, this.sdk, this.seeder);\n }\n tree[part].content = this.addBranch(tree[part].content, parts, file, path); \n } else {\n tree[part] = new File(file, this.sdk, this.seeder);\n }\n return tree;\n }\n get tree() {\n let tree = {};\n for (let file of this.torrent.files) {\n const pathParts = file.path.split('/');\n tree = this.addBranch(tree, pathParts, file, []);\n }\n return tree;\n }\n get root() {\n return '/' + Object.keys(this.tree)[0];\n }\n dirname(path) {\n path = path.replace(/^\\//, '').replace(/\\/$/, '');\n path = path.split('/');\n let tree = this.tree;\n let dir = [];\n while (true) {\n const p = path.shift(path);\n if (tree[p] && tree[p].isDir) {\n dir.push(p);\n tree = tree[p].content;\n } else {\n break;\n }\n }\n return '/' + dir.join('/');\n }\n filename(path) {\n path = path.replace(/^\\//, '').replace(/\\/$/, '');\n path = path.split('/');\n let tree = this.tree;\n while (true) {\n const p = path.shift(path);\n if (tree[p]) {\n tree = tree[p];\n } else {\n break;\n }\n }\n if (tree.isFile && tree.isFile) {\n return tree.name;\n }\n return null\n }\n ls(path) {\n path = path.replace(/^\\//, '').replace(/\\/$/, '');\n if (!path) {\n path = [];\n } else {\n path = path.split('/');\n }\n let c = this.tree;\n for (let p of path) {\n c = c[p].content;\n }\n let res = [];\n for (let i in c) {\n res.push(c[i]);\n }\n if (path.length > 1) {\n path.pop();\n res.push(new Dir(\n path.join('/'),\n '..',\n ));\n }\n res = res.sort((a, b) => a.name.localeCompare(b.name));\n return res;\n }\n}\nexport default function newResource(torrent, sdk) {\n\n const seeder = sdk.seeder.get(torrent.infoHash);\n return new Resource(torrent, sdk, seeder);\n}","import parseTorrent from 'parse-torrent';\nimport newTorrentResource from './loader/torrent/resource';\nconst debug = require('debug')('webtor:sdk:loader');\nexport default function(params, sdk) {\n const self = {params, sdk};\n return {\n async load(source, metadata, params = {}) {\n debug('loading source=%o', source);\n\n params = Object.assign(self.params, params);\n let torrent = false;\n if (torrent == false) torrent = await this.loadTorrentObject(source, metadata, params);\n if (torrent == false) torrent = await this.loadTorrentFile(source, metadata, params);\n if (torrent == false) torrent = await this.loadMagnet(source, metadata, params);\n if (torrent == false) torrent = await this.loadTorrentUrl(source, metadata, params);\n if (torrent != false) await this.pushTorrent(torrent, metadata, params);\n if (torrent == false) throw 'failed to load resource';\n return newTorrentResource(torrent, sdk);\n },\n async loadById(type, id, metadata, params = {}) {\n debug('loading type=%o id=%o', type, id);\n params = Object.assign(self.params, params);\n if (type == 'torrent' || type == 't') {\n let torrent = false;\n if (torrent == false) torrent = await this.loadMagnet(id, metadata, params);\n if (torrent != false) await this.pushTorrent(torrent, metadata, params);\n return newTorrentResource(torrent, sdk);\n }\n },\n async pushTorrent(torrent, metadata, params = {}) {\n const expire = 60 * 60 * 24 * 30; // 1 month\n params = Object.assign(self.params, params);\n debug('push torrent infohash=%o', torrent.infoHash);\n try {\n return await sdk.torrent.touch(torrent, expire, metadata);\n } catch (e) {\n if (e == 'not found') {\n try {\n return await sdk.torrent.push(torrent, expire, metadata);\n } catch (e) {\n debug(e);\n throw e;\n }\n } else {\n debug(e);\n throw e;\n }\n }\n },\n async loadTorrentObject(source, metadata, params = {}) {\n if (!(typeof source == 'object' && source.infoHash != undefined && source.files != undefined)) return false;\n return source;\n },\n async loadTorrentUrl(source, metadata, params = {}) {\n if (!source.match(/^http/)) return false;\n if (!source.match(/\\.torrent$/) && !source.match(/[a-fA-F0-9]{40}/)) {\n return false;\n }\n source = await sdk.ext.url(source);\n return await new Promise((resolve, reject) => {\n const xhr = new XMLHttpRequest();\n xhr.addEventListener('error', reject);\n xhr.onreadystatechange = async function() {\n if (this.readyState == XMLHttpRequest.DONE) {\n const ab = new Uint8Array(this.response);\n const buffer = new Buffer(ab.byteLength);\n const view = new Uint8Array(ab);\n for (let i = 0; i < buffer.length; ++i) {\n buffer[i] = view[i];\n }\n resolve(parseTorrent(buffer));\n }\n };\n xhr.open('GET', source);\n xhr.responseType = 'arraybuffer';\n xhr.send();\n });\n },\n async loadTorrentFile(source, metadata, params = {}) {\n if (!(typeof source == 'object' && source.type == 'application/x-bittorrent' && source.size)) return false;\n try {\n const b = await this.fileToArray(source);\n return parseTorrent(b);\n } catch (e) {\n debug(e);\n throw e;\n }\n },\n async loadMagnet(source, metadata, params = {}) {\n params = Object.assign(self.params, params);\n let torrent = null;\n if (!source.match(/^magnet/) && !source.match(/^[a-fA-F0-9]{40}$/)) {\n return false;\n }\n try {\n torrent = parseTorrent(source);\n } catch (e) {\n debug(e);\n throw e;\n }\n const infoHash = torrent.infoHash;\n if (infoHash && params.db) {\n debug('loading from local db infohash=%o', infoHash)\n torrent = await params.db.pullTorrent(infoHash);\n }\n if (!torrent || !torrent.pieces || torrent.pieces.length == 0) {\n try {\n debug('loading from torrent store infohash=%o', infoHash)\n torrent = await sdk.torrent.pull(infoHash, metadata);\n } catch (e) {\n debug(e);\n throw e;\n }\n }\n if (!torrent) {\n debug('loading by magnet uri from peers magnet=%o', source);\n torrent = await sdk.magnet.fetchTorrent(source, metadata);\n }\n return torrent;\n },\n fileToArray(file) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.addEventListener('load', (e) => {\n const arr = new Uint8Array(e.target.result);\n const buffer = new Buffer(arr);\n try {\n resolve(buffer);\n } catch(e) {\n reject(e);\n }\n });\n reader.addEventListener('error', (err) => {\n reject(err);\n });\n reader.readAsArrayBuffer(file);\n });\n }\n };\n};","// source: proto/magnet2torrent/magnet2torrent.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar proto = {};\n\ngoog.exportSymbol('Magnet2TorrentReply', null, proto);\ngoog.exportSymbol('Magnet2TorrentRequest', null, proto);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.Magnet2TorrentRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.Magnet2TorrentRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.Magnet2TorrentRequest.displayName = 'proto.Magnet2TorrentRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.Magnet2TorrentReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.Magnet2TorrentReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.Magnet2TorrentReply.displayName = 'proto.Magnet2TorrentReply';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.Magnet2TorrentRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.Magnet2TorrentRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.Magnet2TorrentRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Magnet2TorrentRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n magnet: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.Magnet2TorrentRequest}\n */\nproto.Magnet2TorrentRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.Magnet2TorrentRequest;\n return proto.Magnet2TorrentRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.Magnet2TorrentRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.Magnet2TorrentRequest}\n */\nproto.Magnet2TorrentRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setMagnet(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.Magnet2TorrentRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.Magnet2TorrentRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.Magnet2TorrentRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Magnet2TorrentRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMagnet();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string magnet = 1;\n * @return {string}\n */\nproto.Magnet2TorrentRequest.prototype.getMagnet = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.Magnet2TorrentRequest} returns this\n */\nproto.Magnet2TorrentRequest.prototype.setMagnet = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.Magnet2TorrentReply.prototype.toObject = function(opt_includeInstance) {\n return proto.Magnet2TorrentReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.Magnet2TorrentReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Magnet2TorrentReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n torrent: msg.getTorrent_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.Magnet2TorrentReply}\n */\nproto.Magnet2TorrentReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.Magnet2TorrentReply;\n return proto.Magnet2TorrentReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.Magnet2TorrentReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.Magnet2TorrentReply}\n */\nproto.Magnet2TorrentReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setTorrent(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.Magnet2TorrentReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.Magnet2TorrentReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.Magnet2TorrentReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Magnet2TorrentReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTorrent_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bytes torrent = 1;\n * @return {!(string|Uint8Array)}\n */\nproto.Magnet2TorrentReply.prototype.getTorrent = function() {\n return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {string}\n */\nproto.Magnet2TorrentReply.prototype.getTorrent_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getTorrent()));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {!Uint8Array}\n */\nproto.Magnet2TorrentReply.prototype.getTorrent_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getTorrent()));\n};\n\n\n/**\n * @param {!(string|Uint8Array)} value\n * @return {!proto.Magnet2TorrentReply} returns this\n */\nproto.Magnet2TorrentReply.prototype.setTorrent = function(value) {\n return jspb.Message.setProto3BytesField(this, 1, value);\n};\n\n\ngoog.object.extend(exports, proto);\n","// source: proto/abuse-store/abuse-store.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar proto = {};\n\ngoog.exportSymbol('CheckReply', null, proto);\ngoog.exportSymbol('CheckRequest', null, proto);\ngoog.exportSymbol('PushReply', null, proto);\ngoog.exportSymbol('PushRequest', null, proto);\ngoog.exportSymbol('PushRequest.Cause', null, proto);\ngoog.exportSymbol('PushRequest.Source', null, proto);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PushReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PushReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PushReply.displayName = 'proto.PushReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PushRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PushRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PushRequest.displayName = 'proto.PushRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.CheckRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.CheckRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.CheckRequest.displayName = 'proto.CheckRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.CheckReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.CheckReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.CheckReply.displayName = 'proto.CheckReply';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PushReply.prototype.toObject = function(opt_includeInstance) {\n return proto.PushReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PushReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PushReply}\n */\nproto.PushReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PushReply;\n return proto.PushReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PushReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PushReply}\n */\nproto.PushReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PushReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PushReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PushReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PushRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.PushRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PushRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n noticeId: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n infohash: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n filename: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n work: jspb.Message.getFieldWithDefault(msg, 4, \"\"),\n startedAt: jspb.Message.getFieldWithDefault(msg, 5, 0),\n email: jspb.Message.getFieldWithDefault(msg, 6, \"\"),\n description: jspb.Message.getFieldWithDefault(msg, 7, \"\"),\n subject: jspb.Message.getFieldWithDefault(msg, 8, \"\"),\n cause: jspb.Message.getFieldWithDefault(msg, 9, 0),\n source: jspb.Message.getFieldWithDefault(msg, 10, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PushRequest}\n */\nproto.PushRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PushRequest;\n return proto.PushRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PushRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PushRequest}\n */\nproto.PushRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setNoticeId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setFilename(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readString());\n msg.setWork(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setStartedAt(value);\n break;\n case 6:\n var value = /** @type {string} */ (reader.readString());\n msg.setEmail(value);\n break;\n case 7:\n var value = /** @type {string} */ (reader.readString());\n msg.setDescription(value);\n break;\n case 8:\n var value = /** @type {string} */ (reader.readString());\n msg.setSubject(value);\n break;\n case 9:\n var value = /** @type {!proto.PushRequest.Cause} */ (reader.readEnum());\n msg.setCause(value);\n break;\n case 10:\n var value = /** @type {!proto.PushRequest.Source} */ (reader.readEnum());\n msg.setSource(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PushRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PushRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PushRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNoticeId();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getFilename();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getWork();\n if (f.length > 0) {\n writer.writeString(\n 4,\n f\n );\n }\n f = message.getStartedAt();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getEmail();\n if (f.length > 0) {\n writer.writeString(\n 6,\n f\n );\n }\n f = message.getDescription();\n if (f.length > 0) {\n writer.writeString(\n 7,\n f\n );\n }\n f = message.getSubject();\n if (f.length > 0) {\n writer.writeString(\n 8,\n f\n );\n }\n f = message.getCause();\n if (f !== 0.0) {\n writer.writeEnum(\n 9,\n f\n );\n }\n f = message.getSource();\n if (f !== 0.0) {\n writer.writeEnum(\n 10,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.PushRequest.Cause = {\n ILLEGAL_CONTENT: 0,\n MALWARE: 1,\n APP_ERROR: 2,\n QUESTION: 3\n};\n\n/**\n * @enum {number}\n */\nproto.PushRequest.Source = {\n MAIL: 0,\n FORM: 1\n};\n\n/**\n * optional string notice_id = 1;\n * @return {string}\n */\nproto.PushRequest.prototype.getNoticeId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setNoticeId = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n/**\n * optional string infohash = 2;\n * @return {string}\n */\nproto.PushRequest.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 2, value);\n};\n\n\n/**\n * optional string filename = 3;\n * @return {string}\n */\nproto.PushRequest.prototype.getFilename = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setFilename = function(value) {\n return jspb.Message.setProto3StringField(this, 3, value);\n};\n\n\n/**\n * optional string work = 4;\n * @return {string}\n */\nproto.PushRequest.prototype.getWork = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setWork = function(value) {\n return jspb.Message.setProto3StringField(this, 4, value);\n};\n\n\n/**\n * optional int64 started_at = 5;\n * @return {number}\n */\nproto.PushRequest.prototype.getStartedAt = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setStartedAt = function(value) {\n return jspb.Message.setProto3IntField(this, 5, value);\n};\n\n\n/**\n * optional string email = 6;\n * @return {string}\n */\nproto.PushRequest.prototype.getEmail = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setEmail = function(value) {\n return jspb.Message.setProto3StringField(this, 6, value);\n};\n\n\n/**\n * optional string description = 7;\n * @return {string}\n */\nproto.PushRequest.prototype.getDescription = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 7, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setDescription = function(value) {\n return jspb.Message.setProto3StringField(this, 7, value);\n};\n\n\n/**\n * optional string subject = 8;\n * @return {string}\n */\nproto.PushRequest.prototype.getSubject = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setSubject = function(value) {\n return jspb.Message.setProto3StringField(this, 8, value);\n};\n\n\n/**\n * optional Cause cause = 9;\n * @return {!proto.PushRequest.Cause}\n */\nproto.PushRequest.prototype.getCause = function() {\n return /** @type {!proto.PushRequest.Cause} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/**\n * @param {!proto.PushRequest.Cause} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setCause = function(value) {\n return jspb.Message.setProto3EnumField(this, 9, value);\n};\n\n\n/**\n * optional Source source = 10;\n * @return {!proto.PushRequest.Source}\n */\nproto.PushRequest.prototype.getSource = function() {\n return /** @type {!proto.PushRequest.Source} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/**\n * @param {!proto.PushRequest.Source} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setSource = function(value) {\n return jspb.Message.setProto3EnumField(this, 10, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.CheckRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.CheckRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.CheckRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n infohash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.CheckRequest}\n */\nproto.CheckRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.CheckRequest;\n return proto.CheckRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.CheckRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.CheckRequest}\n */\nproto.CheckRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.CheckRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.CheckRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.CheckRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string infohash = 1;\n * @return {string}\n */\nproto.CheckRequest.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.CheckRequest} returns this\n */\nproto.CheckRequest.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.CheckReply.prototype.toObject = function(opt_includeInstance) {\n return proto.CheckReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.CheckReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n exists: jspb.Message.getBooleanFieldWithDefault(msg, 1, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.CheckReply}\n */\nproto.CheckReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.CheckReply;\n return proto.CheckReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.CheckReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.CheckReply}\n */\nproto.CheckReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setExists(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.CheckReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.CheckReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.CheckReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getExists();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bool exists = 1;\n * @return {boolean}\n */\nproto.CheckReply.prototype.getExists = function() {\n return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 1, false));\n};\n\n\n/**\n * @param {boolean} value\n * @return {!proto.CheckReply} returns this\n */\nproto.CheckReply.prototype.setExists = function(value) {\n return jspb.Message.setProto3BooleanField(this, 1, value);\n};\n\n\ngoog.object.extend(exports, proto);\n","// package: \n// file: proto/download-progress/download-progress.proto\n\nvar proto_download_progress_download_progress_pb = require(\"../../proto/download-progress/download-progress_pb\");\nvar grpc = require(\"@improbable-eng/grpc-web\").grpc;\n\nvar DownloadProgress = (function () {\n function DownloadProgress() {}\n DownloadProgress.serviceName = \"DownloadProgress\";\n return DownloadProgress;\n}());\n\nDownloadProgress.Stat = {\n methodName: \"Stat\",\n service: DownloadProgress,\n requestStream: false,\n responseStream: false,\n requestType: proto_download_progress_download_progress_pb.StatRequest,\n responseType: proto_download_progress_download_progress_pb.StatReply\n};\n\nDownloadProgress.StatStream = {\n methodName: \"StatStream\",\n service: DownloadProgress,\n requestStream: false,\n responseStream: true,\n requestType: proto_download_progress_download_progress_pb.StatRequest,\n responseType: proto_download_progress_download_progress_pb.StatReply\n};\n\nexports.DownloadProgress = DownloadProgress;\n\nfunction DownloadProgressClient(serviceHost, options) {\n this.serviceHost = serviceHost;\n this.options = options || {};\n}\n\nDownloadProgressClient.prototype.stat = function stat(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(DownloadProgress.Stat, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nDownloadProgressClient.prototype.statStream = function statStream(requestMessage, metadata) {\n var listeners = {\n data: [],\n end: [],\n status: []\n };\n var client = grpc.invoke(DownloadProgress.StatStream, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onMessage: function (responseMessage) {\n listeners.data.forEach(function (handler) {\n handler(responseMessage);\n });\n },\n onEnd: function (status, statusMessage, trailers) {\n listeners.status.forEach(function (handler) {\n handler({ code: status, details: statusMessage, metadata: trailers });\n });\n listeners.end.forEach(function (handler) {\n handler({ code: status, details: statusMessage, metadata: trailers });\n });\n listeners = null;\n }\n });\n return {\n on: function (type, handler) {\n listeners[type].push(handler);\n return this;\n },\n cancel: function () {\n listeners = null;\n client.close();\n }\n };\n};\n\nexports.DownloadProgressClient = DownloadProgressClient;\n\n","// package: \n// file: proto/torrent-web-seeder/torrent-web-seeder.proto\n\nvar proto_torrent_web_seeder_torrent_web_seeder_pb = require(\"../../proto/torrent-web-seeder/torrent-web-seeder_pb\");\nvar grpc = require(\"@improbable-eng/grpc-web\").grpc;\n\nvar TorrentWebSeeder = (function () {\n function TorrentWebSeeder() {}\n TorrentWebSeeder.serviceName = \"TorrentWebSeeder\";\n return TorrentWebSeeder;\n}());\n\nTorrentWebSeeder.Stat = {\n methodName: \"Stat\",\n service: TorrentWebSeeder,\n requestStream: false,\n responseStream: false,\n requestType: proto_torrent_web_seeder_torrent_web_seeder_pb.StatRequest,\n responseType: proto_torrent_web_seeder_torrent_web_seeder_pb.StatReply\n};\n\nTorrentWebSeeder.StatStream = {\n methodName: \"StatStream\",\n service: TorrentWebSeeder,\n requestStream: false,\n responseStream: true,\n requestType: proto_torrent_web_seeder_torrent_web_seeder_pb.StatRequest,\n responseType: proto_torrent_web_seeder_torrent_web_seeder_pb.StatReply\n};\n\nTorrentWebSeeder.Files = {\n methodName: \"Files\",\n service: TorrentWebSeeder,\n requestStream: false,\n responseStream: false,\n requestType: proto_torrent_web_seeder_torrent_web_seeder_pb.FilesRequest,\n responseType: proto_torrent_web_seeder_torrent_web_seeder_pb.FilesReply\n};\n\nexports.TorrentWebSeeder = TorrentWebSeeder;\n\nfunction TorrentWebSeederClient(serviceHost, options) {\n this.serviceHost = serviceHost;\n this.options = options || {};\n}\n\nTorrentWebSeederClient.prototype.stat = function stat(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(TorrentWebSeeder.Stat, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nTorrentWebSeederClient.prototype.statStream = function statStream(requestMessage, metadata) {\n var listeners = {\n data: [],\n end: [],\n status: []\n };\n var client = grpc.invoke(TorrentWebSeeder.StatStream, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onMessage: function (responseMessage) {\n listeners.data.forEach(function (handler) {\n handler(responseMessage);\n });\n },\n onEnd: function (status, statusMessage, trailers) {\n listeners.status.forEach(function (handler) {\n handler({ code: status, details: statusMessage, metadata: trailers });\n });\n listeners.end.forEach(function (handler) {\n handler({ code: status, details: statusMessage, metadata: trailers });\n });\n listeners = null;\n }\n });\n return {\n on: function (type, handler) {\n listeners[type].push(handler);\n return this;\n },\n cancel: function () {\n listeners = null;\n client.close();\n }\n };\n};\n\nTorrentWebSeederClient.prototype.files = function files(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(TorrentWebSeeder.Files, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nexports.TorrentWebSeederClient = TorrentWebSeederClient;\n\n","// package: \n// file: proto/torrent-store/torrent-store.proto\n\nvar proto_torrent_store_torrent_store_pb = require(\"../../proto/torrent-store/torrent-store_pb\");\nvar grpc = require(\"@improbable-eng/grpc-web\").grpc;\n\nvar TorrentStore = (function () {\n function TorrentStore() {}\n TorrentStore.serviceName = \"TorrentStore\";\n return TorrentStore;\n}());\n\nTorrentStore.Push = {\n methodName: \"Push\",\n service: TorrentStore,\n requestStream: false,\n responseStream: false,\n requestType: proto_torrent_store_torrent_store_pb.PushRequest,\n responseType: proto_torrent_store_torrent_store_pb.PushReply\n};\n\nTorrentStore.Pull = {\n methodName: \"Pull\",\n service: TorrentStore,\n requestStream: false,\n responseStream: false,\n requestType: proto_torrent_store_torrent_store_pb.PullRequest,\n responseType: proto_torrent_store_torrent_store_pb.PullReply\n};\n\nTorrentStore.Touch = {\n methodName: \"Touch\",\n service: TorrentStore,\n requestStream: false,\n responseStream: false,\n requestType: proto_torrent_store_torrent_store_pb.TouchRequest,\n responseType: proto_torrent_store_torrent_store_pb.TouchReply\n};\n\nexports.TorrentStore = TorrentStore;\n\nfunction TorrentStoreClient(serviceHost, options) {\n this.serviceHost = serviceHost;\n this.options = options || {};\n}\n\nTorrentStoreClient.prototype.push = function push(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(TorrentStore.Push, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nTorrentStoreClient.prototype.pull = function pull(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(TorrentStore.Pull, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nTorrentStoreClient.prototype.touch = function touch(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(TorrentStore.Touch, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nexports.TorrentStoreClient = TorrentStoreClient;\n\n","import {grpc} from '@improbable-eng/grpc-web';\n\nconst debug = require('debug')('webtor:sdk');\n\nexport default async function(client, request, onMessage, onEnd, metadata = {}, params = {}) {\n metadata['token'] = await params.getToken();\n metadata['api-key'] = params.apiKey;\n let retryCount = 0;\n return new Promise(function(resolve, reject) {\n function process() {\n const c = client();\n if (onMessage) {\n c.onMessage((message) => {\n debug('got message=%o', message.toObject());\n onMessage(message.toObject(), resolve, reject);\n });\n }\n if (onEnd) {\n c.onEnd(async (res) => {\n if ((res == grpc.Code.Unknown || res == grpc.Code.Unavailable) && params.retryInterval && params.retryLimit > 0 && retryCount < params.retryLimit) {\n debug('failed to get process request error=%o retry count=%o', res, retryCount);\n await (new Promise(resolve => setTimeout(resolve, params.retryInterval)));\n retryCount++;\n process();\n } else {\n onEnd(res, resolve, reject);\n }\n });\n }\n c.start(new grpc.Metadata(metadata));\n c.send(request);\n c.finishSend();\n }\n process();\n });\n}\n","import {Magnet2Torrent} from '../../proto/magnet2torrent/magnet2torrent_pb_service';\nimport {Magnet2TorrentRequest} from '../../proto/magnet2torrent/magnet2torrent_pb';\nimport {grpc} from '@improbable-eng/grpc-web';\nimport process from './process';\nimport parseTorrent from 'parse-torrent';\nconst debug = require('debug')('webtor:sdk:magnet');\n\nexport default function(params = {}) {\n const self = {params};\n return {\n fetchTorrent(magnet, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = params.apiUrl + '/magnet2torrent';\n debug('fetch torrent magnet=%s url=%s metadata=%o', magnet, url, metadata);\n const request = new Magnet2TorrentRequest();\n request.setMagnet(magnet);\n const client = () => grpc.client(Magnet2Torrent.Magnet2Torrent, {\n host: url,\n transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n const onMessage = (message, resolve, reject) => {\n if (message.torrent == '') {\n return reject('no torrent');\n }\n let torrent = Buffer.from(message.torrent, 'base64');\n torrent = parseTorrent(torrent);\n debug('and finally torrent=%o', torrent);\n resolve(torrent);\n }\n const onEnd = (res, resolve, reject) => {\n if (res !== grpc.Code.OK) {\n reject('failed to fetch torrent code=' + res);\n }\n }\n return process(client, request, onMessage, onEnd, metadata, params);\n },\n };\n};","import {AbuseStore} from '../../proto/abuse-store/abuse-store_pb_service';\nimport {PushRequest} from '../../proto/abuse-store/abuse-store_pb';\nimport {grpc} from '@improbable-eng/grpc-web';\nimport process from './process';\nconst debug = require('debug')('webtor:sdk:abuse');\n\nexport default function(params = {}) {\n const self = {params};\n return {\n push(abuse, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = params.apiUrl + '/abuse';\n debug('push abuse url=%s metadata=%o', url, metadata);\n const request = new PushRequest();\n request.setSubject(abuse.subject);\n request.setDescription(abuse.description);\n request.setInfohash(abuse.infohash);\n request.setFilename(abuse.filename);\n request.setEmail(abuse.email);\n request.setWork(abuse.work);\n request.setCause(abuse.cause);\n request.setSource(PushRequest.Source.FORM);\n const client = () => grpc.client(AbuseStore.Push, {\n host: url,\n // transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n const onEnd = (res, resolve, reject) => {\n if (res === grpc.Code.OK) {\n debug('abuse stored');\n resolve();\n } else {\n reject('failed to push abuse code=' + res);\n }\n }\n return process(client, request, null, onEnd, metadata, params);\n },\n };\n};","import {TorrentWebSeeder} from '../../../proto/torrent-web-seeder/torrent-web-seeder_pb_service';\nimport {StatRequest, StatReply} from '../../../proto/torrent-web-seeder/torrent-web-seeder_pb';\nimport {grpc} from '@improbable-eng/grpc-web';\nimport process from '../process';\nconst debug = require('debug')('webtor:sdk:seeder:stats');\nimport invert from 'lodash/invert';\n\nclass Stats {\n constructor(url, path) {\n this.url = url;\n this.path = path;\n this.closed = false;\n this.client = null;\n }\n close() {\n if (this.closed) return;\n this.closed = true;\n debug('close stats url=%o path=%o', this.url, this.path);\n if (this.client) this.client.close();\n }\n start(onMessage, metadata, params) {\n const request = new StatRequest();\n request.setPath(this.path);\n const client = () => { \n const c = grpc.client(TorrentWebSeeder.StatStream, {\n host: this.url,\n transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n this.client = c;\n return c;\n };\n const statuses = invert(StatReply.Status);\n let map = null;\n const onMessageWrapper = (message) => {\n message.statusName = statuses[message.status];\n if (!map && message.status != 0) {\n map = message.piecesList;\n } else {\n for (const p of message.piecesList) {\n for (const m of map) {\n if (m.position == p.position) {\n m.complete = p.complete;\n m.priority = p.priority;\n }\n }\n }\n message.piecesList = JSON.parse(JSON.stringify(map));\n }\n onMessage(this.path, message);\n }\n const onEnd = (res, resolve, reject) => {\n if (res !== grpc.Code.OK) {\n reject('failed to get stats torrent code=' + res);\n } else {\n debug('stats finished url=%o path=%o', this.url, this.path);\n this.close();\n resolve();\n }\n }\n\n return process(client, request, onMessageWrapper, onEnd, metadata, params);\n }\n}\n\nexport default function(url, path, onMessage, metadata = {}, params = {}) {\n const stats = new Stats(url, path);\n stats.start(onMessage, metadata, params);\n return stats;\n}","import {DownloadProgress} from '../../../proto/download-progress/download-progress_pb_service';\nimport {StatRequest, StatReply} from '../../../proto/download-progress/download-progress_pb';\nimport {grpc} from '@improbable-eng/grpc-web';\nimport process from '../process';\nconst debug = require('debug')('webtor:sdk:seeder:downloadProgress');\nimport invert from 'lodash/invert';\n\nclass Stats {\n constructor(url, path) {\n this.url = url;\n this.path = path;\n this.closed = false;\n this.client = null;\n }\n close() {\n if (this.closed) return;\n this.closed = true;\n debug('close download progress url=%o path=%o', this.url, this.path);\n if (this.client) this.client.close();\n }\n start(onMessage, onEnd, metadata, params) {\n const request = new StatRequest();\n const client = () => { \n const c = grpc.client(DownloadProgress.StatStream, {\n host: this.url,\n transport: grpc.WebsocketTransport(),\n debug: params.grpcDebug,\n });\n this.client = c;\n return c;\n };\n const statuses = invert(StatReply.Status);\n const onMessageWrapper = (message) => {\n message.statusName = statuses[message.status];\n onMessage(this.path, message);\n }\n const onEndWrapper = (res, resolve, reject) => {\n if (res !== grpc.Code.OK) {\n reject('failed to get download progress code=' + res);\n } else {\n debug('download progress finished url=%o path=%o', this.url, this.path);\n this.close();\n resolve();\n }\n onEnd(this.path, res);\n }\n\n return process(client, request, onMessageWrapper, onEndWrapper, metadata, params);\n }\n}\n\nexport default function(url, path, onMessage, onEnd, metadata = {}, params = {}) {\n const st = new Stats(url, path);\n st.start(onMessage, onEnd, metadata, params);\n return st;\n}","import stats from './seeder/stats';\nimport downloadProgress from './seeder/downloadProgress';\nconst debug = require('debug')('webtor:sdk:seeder');\nconst Url = require('url-parse');\nvar md5 = require('md5');\n\nclass WebSeeder {\n constructor(infoHash, params, sdk) {\n this.infoHash = infoHash;\n this.params = params;\n this.sdk = sdk;\n }\n\n addDownloadId(metadata = {}, path) {\n if (!metadata['download-id']) {\n metadata = Object.assign({}, metadata, {\n 'download-id': md5(metadata['user-id'] + this.infoHash + path + Date.now().toString()),\n });\n }\n return metadata;\n }\n\n async url(path, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params);\n path = path.replace(/^\\//, '');\n let url = new Url(params.apiUrl);\n metadata = this.addDownloadId(metadata, path);\n url.infoHash = this.infoHash;\n url.path = path;\n const pathname = '/' + this.infoHash + '/' + encodeURIComponent(path);\n url.infoHash = this.infoHash;\n url.set('pathname', pathname);\n const query = await this.sdk.util.makeQuery(metadata, params);\n url.set('query', query);\n if (params.subdomains) {\n url = await this.sdk.util.cacheUrl(url, metadata, params);\n const cached = await this.sdk.util.isCached(url, metadata, params);\n // const completedPieces = await this.sdk.util.throttledCompletedPieces(url, metadata, params);\n // const pieceCache = completedPieces.length > 0;\n const deliveryType = this.sdk.util.getDeliveryType(url.pathname);\n // if (deliveryType === undefined) return url;\n let pool = deliveryType == 'transcode' ? params.pools.transcoder : params.pools.seeder;\n pool = cached ? params.pools.cache : pool;\n const m = {\n infohash: this.infoHash,\n \"use-bandwidth\": cached,\n \"use-cpu\": !cached,\n \"skip-active-job-search\": cached,\n pool: pool.join(','),\n }\n const subdomainUrl = await this.sdk.util.subdomainUrl(url, context, m, params);\n if (subdomainUrl === false) return false;\n subdomainUrl.primaryHost = url.host;\n if (subdomainUrl) {\n return subdomainUrl;\n }\n }\n return url;\n }\n\n async urlPostProcess(url, metadata, params) {\n const cp = await this.completedPieces(metadata, params);\n if (cp.length == 0) {\n return url;\n }\n const cdnUrl = this.sdk.util.cdnUrl(url, metadata, params);\n if (cdnUrl) {\n return cdnUrl;\n }\n return url;\n }\n\n async streamUrl(path, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params);\n let url = await this.url(path, metadata, params, context);\n url = await this.sdk.util.streamUrl(url, metadata, params, context);\n url = await this.urlPostProcess(url, metadata, params);\n return url;\n }\n\n async segmentUrl(path, segment, context = {}, metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n let url = await this.url(path, metadata, params, context);\n if (url === false) return false;\n url = await this.sdk.util.segmentUrl(url, segment, metadata, params, context);\n url = await this.urlPostProcess(url, metadata, params);\n return url;\n }\n\n async error(path, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params);\n let url = await this.url(path, metadata, params, context);\n return await this.sdk.util.error(url, metadata, params);\n }\n\n async pieceUrl(id, metadata = {}, params = {}) {\n let url = await this.url('', metadata, params);\n return this.sdk.util.pieceUrl(url, id);\n }\n\n async mediaInfo(path, metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n const url = await this.url(path, metadata, params);\n return await this.sdk.util.mediaInfo(url, metadata, params);\n }\n\n async completedPieces(metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n const url = await this.url('', metadata, params);\n return await this.sdk.util.throttledCompletedPieces(url, metadata, params);\n }\n\n async isCached(path, metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n const url = await this.url(path, metadata, params);\n const cached = await this.sdk.util.isCached(url, metadata, params);\n return cached;\n }\n\n async openSubtitles(path, metadata = {}, params = {}) {\n const url = await this.url(path, metadata, params);\n return await this.sdk.util.openSubtitles(url);\n }\n\n async downloadUrl(path, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params);\n if (params.downloadUrl) {\n params.apiUrl = params.downloadUrl;\n }\n metadata.download = true;\n let url = await this.url(path, metadata, params, context);\n url = await this.urlPostProcess(url, metadata, params);\n return url;\n }\n\n async downloadUrlWithProgress(path, onMessage, onEnd, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params, {cdn: false});\n metadata = this.addDownloadId(metadata, path);\n const downloadUrl = await this.downloadUrl(path, metadata, params, context);\n const fileName = path.split('/').pop();\n const url = this.sdk.util.dpUrl(downloadUrl, fileName);\n const statUrl = this.sdk.util.dpStatUrl(downloadUrl);\n downloadProgress(statUrl, path, onMessage, onEnd, metadata, params); \n return url;\n }\n\n async zipUrl(path, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params);\n if (params.downloadUrl) {\n params.apiUrl = params.downloadUrl;\n }\n const fileName = path.split('/').pop();\n let url = await this.url(path, metadata, params, context);\n url.set('pathname', url.pathname + '~arch/' + fileName + '.zip');\n return url;\n }\n async zipUrlWithProgress(path, onMessage, onEnd, metadata = {}, params = {}, context = {}) {\n params = Object.assign({}, this.params, params, {cdn: false});\n metadata = this.addDownloadId(metadata, path);\n const zipUrl = await this.zipUrl(path, metadata, params, context);\n const fileName = path.split('/').pop() + '.zip';\n const url = this.sdk.util.dpUrl(zipUrl, fileName);\n const statUrl = this.sdk.util.dpStatUrl(zipUrl);\n downloadProgress(statUrl, path, onMessage, onEnd, metadata, params); \n return url;\n }\n\n async stats(path, onMessage, metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n let url = await this.url(path, metadata, params);\n url = `${url.protocol}//${url.hostname}/${this.infoHash}`;\n debug('get file stats infoHash=%s url=%s path=%s metadata=%o', this.infoHash, url, path, metadata);\n return stats(url, path, onMessage, metadata, params);\n }\n}\n\nexport default function(params, sdk) {\n const self = {params, sdk};\n return {\n get(infoHash, metadata = {}, params = {}) {\n params = Object.assign({}, self.params, params);\n return new WebSeeder(infoHash, params, self.sdk);\n },\n };\n};","const Url = require('url-parse');\n\nexport default function(params, sdk) {\n const self = {params, sdk};\n return {\n async url(metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = new Url(params.apiUrl);\n const pathname = '/tracker/';\n url.set('pathname', pathname);\n url.set('protocol', 'wss:');\n const query = await self.sdk.util.makeQuery(metadata, params);\n url.set('query', query);\n return url;\n },\n };\n};","const path = require('path');\nconst Url = require('url-parse');\nimport ISO6391 from 'iso-639-1';\nimport mime from 'mime';\nvar md5 = require('md5');\nconst debug = require('debug')('webtor:sdk:util');\nimport bind from 'lodash/bind';\nimport throttle from 'lodash/throttle';\nconst debugFetch = function(url) {\n debug('fetch url=%o', url.href);\n return fetch(url);\n}\nconst retryFetch = require('fetch-retry')(debugFetch, {\n retries: 3,\n retryDelay: function(attempt, error, response) {\n return Math.pow(2, attempt) * 1000;\n },\n retryOn: function(attempt, error, response) {\n if (error !== null || response.status >= 500) {\n debug('got fetch error retry count=%o', attempt);\n return true;\n }\n },\n});\n\nfunction cleanExt(ext) {\n return ext.toLowerCase().replace(/~[a-z0-9]+$/, '');\n}\nfunction cleanPath(p) {\n return p.replace(/\\/\\//, '/');\n}\nfunction buf2hex(buffer) { // buffer is an ArrayBuffer\n return Array.prototype.map.call(new Uint8Array(buffer), x => ('00' + x.toString(16)).slice(-2)).join('');\n}\n\nexport default function(params, sdk) {\n const self = {params, sdk};\n const throttledFuncs = {};\n const util = {\n async makeQuery(metadata = {}, params = {}) {\n params = Object.assign({}, self.params, params);\n metadata = Object.assign({}, metadata);\n const query = metadata;\n const token = await params.getToken();\n if (token) query.token = token;\n if (params.apiKey) query[\"api-key\"] = params.apiKey;\n return query;\n },\n getDeliveryType(file) {\n if (!file) return;\n let ext = path.extname(file);\n ext = cleanExt(ext);\n // Browser unsupported streaming formats\n if ('.avi .mkv .flac .m4a .m4v .ts .vob'.split(' ').includes(ext)) return 'transcode';\n // Browser supported streaming formats\n if ('.mp4 .mp3 .wav .ogg .webm'.split(' ').includes(ext)) return 'webseed';\n // Browser supported image formats\n if ('.png .gif .jpg .jpeg'.split(' ').includes(ext)) return 'webseed';\n // Browser unsupported subtitle formats\n if ('.vtt .srt'.split(' ').includes(ext)) return 'webseed';\n },\n getMediaType(file) {\n if (!file) return;\n let ext = path.extname(file);\n ext = cleanExt(ext);\n // Video\n if ('.avi .mkv .mp4 .webm .m4v .ts .vob'.split(' ').includes(ext)) return 'video';\n // Audio\n if ('.mp3 .wav .ogg .flac .m4a'.split(' ').includes(ext)) return 'audio';\n // Images\n if ('.png .gif .jpg .jpeg'.split(' ').includes(ext)) return 'image';\n // Subtitles\n if ('.srt .vtt'.split(' ').includes(ext)) return 'subtitle';\n },\n getMimeType(file) {\n if (typeof file == 'object') {\n file = file.pathname;\n }\n const ext = path.extname(file);\n return mime.getType(ext);\n },\n getSubtitleSrcLang(name) {\n const baseName = path.basename(name, path.extname(name));\n for (const code of ISO6391.getAllCodes()) {\n if (baseName.endsWith('.' + code)) return code;\n }\n return false;\n },\n getSubtitleLang(name) {\n const code = this.getSubtitleSrcLang(name);\n if (code == false) return false;\n return this.getLang(code);\n },\n getLang(code) {\n return {\n code,\n name: ISO6391.getName(code),\n nativeName: ISO6391.getNativeName(code),\n };\n },\n cloneUrl(url) {\n return Object.assign(new Url(), url);\n },\n vttUrl(url) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~vtt/' + encodeURIComponent(path.basename(url.pathname).replace(/srt$/, 'vtt'))));\n return url;\n },\n primaryUrl(url) {\n if (!url) return url;\n url = this.cloneUrl(url);\n if (url.primaryHost) {\n url.host = url.primaryHost;\n }\n return url;\n },\n completedPiecesUrl(url) {\n url = this.cloneUrl(url);\n url = this.tcUrl(url);\n url.set('pathname', cleanPath(url.pathname.replace(/~tc.*$/, '~tc/completed_pieces')));\n return url;\n },\n transcodeDoneMarkerUrl(url) {\n url = this.cloneUrl(url);\n url = this.primaryUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~trc/done'));\n return url;\n },\n multibitrateDoneMarkerUrl(url) {\n url = this.cloneUrl(url);\n url = this.primaryUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~mtrc/done'));\n return url;\n },\n transcodeIndexUrl(url) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~trc/index.m3u8'));\n return url;\n },\n multibitrateIndexUrl(url) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~mtrc/index.m3u8'));\n return url;\n },\n pieceUrl(url, id) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '/piece/' + id));\n return url;\n },\n tcUrl(url) {\n url = this.cloneUrl(url);\n if (url.pathname.includes('~tc')) return url;\n url.set('pathname', cleanPath(url.pathname + '~tc/' + encodeURIComponent(path.basename(url.path))));\n return url;\n },\n hlsUrl(url, file) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~hls/' + file));\n return url;\n },\n trcUrl(url, file) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~trc/' + file));\n return url;\n },\n mtrcUrl(url, file) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~mtrc/' + file));\n return url;\n },\n vodUrl(url, file) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~vod/hls/' + md5(cleanPath(url.pathname)) + '/' + file));\n return url;\n },\n viUrl(url, path) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~vi' + path));\n return url;\n },\n dpUrl(url, file) {\n url = this.cloneUrl(url);\n url.set('pathname', cleanPath(url.pathname + '~dp/' + file));\n return url;\n },\n dpStatUrl(url) {\n url = this.cloneUrl(url);\n url.set('pathname', '/dp');\n url.set('query', '');\n return url;\n },\n async baseStreamUrl(url, file, metadata, params, context) {\n url = this.cloneUrl(url);\n const deliveryType = this.getDeliveryType(url.pathname);\n if (params.vod && cleanExt(path.extname(url.pathname)) == '.mp4') {\n if (params.multibitrate) {\n const done = await this.throttledMultibitrateDoneMarker(url, metadata, params);\n if (done) {\n url.multibitrate = true;\n url.cached = true;\n return this.mtrcUrl(url, file);\n }\n }\n return this.vodUrl(url, file);\n } else if (cleanExt(path.extname(url.pathname)) == '.srt') {\n return this.vttUrl(url);\n } else if (deliveryType == 'transcode') {\n if (params.multibitrate) {\n const done = await this.throttledMultibitrateDoneMarker(url, metadata, params);\n if (done) {\n url.multibitrate = true;\n url.cached = true;\n return this.mtrcUrl(url, file);\n }\n }\n if (params.cache) {\n const done = await this.throttledTranscodeDoneMarker(url, metadata, params);\n if (done) {\n url.cached = true;\n return this.trcUrl(url, file);\n }\n }\n return this.hlsUrl(url, file);\n }\n return url;\n },\n async streamUrl(url, metadata, params, context) {\n return this.baseStreamUrl(url, 'index.m3u8', metadata, params, context);\n },\n async segmentUrl(url, segment, metadata, params, context) {\n return this.baseStreamUrl(url, segment, metadata, params, context);\n },\n async error(url, metadata, params) {\n url = this.cloneUrl(url);\n const deliveryType = this.getDeliveryType(url.pathname);\n const mediaType = this.getMediaType(url.pathname);\n if (deliveryType == 'webseed' || mediaType == 'subtitle') return;\n if (params.cache) {\n const done = await this.throttledTranscodeDoneMarker(url, metadata, params);\n if (done) {\n return;\n } else {\n url = this.hlsUrl(url, 'error.log');\n }\n } else {\n url = this.hlsUrl(url, 'error.log');\n }\n const res = await fetch(url);\n const err = await res.text();\n return err;\n },\n async transcodeDoneMarker(url) {\n url = this.cloneUrl(url);\n url = this.transcodeDoneMarkerUrl(url);\n const res = await(retryFetch(url));\n return res.status == 200;\n },\n async multibitrateDoneMarker(url) {\n url = this.cloneUrl(url);\n url = this.multibitrateDoneMarkerUrl(url);\n const res = await(retryFetch(url));\n return res.status == 200;\n },\n\n async transcodeIndexExists(url) {\n url = this.cloneUrl(url);\n url = this.transcodeIndexUrl(url);\n const res = await(retryFetch(url));\n return res.status == 200;\n },\n\n async multibitrateIndexExists(url) {\n url = this.cloneUrl(url);\n url = this.multibitrateIndexUrl(url);\n const res = await(retryFetch(url));\n return res.status == 200;\n },\n\n async completedPieces(url) {\n url = this.cloneUrl(url);\n url = this.completedPiecesUrl(url);\n const res = await(retryFetch(url));\n const buf = await res.arrayBuffer();\n const byteArr = new Uint8Array(buf);\n const hex = buf2hex(byteArr);\n const pieces = [];\n let p = '';\n for (const c of hex) {\n p += c;\n if (p.length == 40) {\n pieces.push(p);\n p = '';\n }\n }\n return pieces;\n },\n\n async mediaInfo(url, metadata = {}, params = {}) {\n url = this.cloneUrl(url);\n const deliveryType = this.getDeliveryType(url.pathname);\n const mediaType = this.getMediaType(url.pathname);\n if (deliveryType == 'webseed' || mediaType == 'subtitle') return {};\n if (params.cache) {\n const done = await this.throttledTranscodeDoneMarker(url, metadata, params);\n if (done) {\n url = this.trcUrl(url, 'index.json');\n } else {\n url = this.hlsUrl(url, 'index.json');\n }\n } else {\n url = this.hlsUrl(url, 'index.json');\n }\n const res = await(retryFetch(url));\n const mediaInfo = await res.json();\n return mediaInfo;\n },\n async openSubtitles(url) {\n url = this.cloneUrl(url);\n const mediaType = this.getMediaType(url.pathname);\n if (mediaType != 'video') return {};\n const subtitlesUrl = this.viUrl(url, '/subtitles.json');\n const res = await(retryFetch(subtitlesUrl));\n const data = await res.json();\n\n for (const k in data) {\n const format = data[k].format; \n if (format != 'srt' && format != 'vtt') continue;\n let src = data[k].src;\n let sUrl = this.viUrl(url, src);\n if (format != 'vtt') {\n sUrl = this.vttUrl(sUrl);\n }\n data[k].src = sUrl\n }\n return data;\n },\n async subdomainsUrl(metadata = {}, params = {}) {\n params = Object.assign({}, self.params, params);\n const url = new Url(params.apiUrl);\n const pathname = '/subdomains.json';\n url.set('pathname', pathname);\n const query = await self.sdk.util.makeQuery(metadata, params);\n url.set('query', query);\n return url;\n },\n async checkApi(metadata = {}, params = {}) {\n params = Object.assign({}, self.params, params);\n return fetch(params.apiUrl);\n },\n async subdomains(u, path, metadata = {}, params = {}) {\n params = Object.assign({}, self.params, params);\n const url = await this.subdomainsUrl(metadata, params);\n const res = await(retryFetch(url));\n const s = await res.json();\n const rr = [];\n for (const e of s) {\n rr.push(e);\n }\n return rr;\n },\n isCDNAllowed(path, params = {}) {\n params = Object.assign({}, self.params, params);\n for (const a of params.cdnPathSuffixes) {\n if (cleanExt(path).endsWith(a)) return true;\n }\n return false;\n },\n cdnUrl(url, metadata = {}, params = {}) {\n url = this.cloneUrl(url);\n params = Object.assign({}, self.params, params);\n if (params.cdn && params.cdnUrl && this.isCDNAllowed(url.pathname, params)) {\n let cdnUrl = new Url(params.cdnUrl);\n url.set('hostname', cdnUrl.hostname);\n url.set('protocol', cdnUrl.protocol);\n url.set('query', '?api-key=' + params.apiKey);\n return url;\n }\n return false;\n },\n async throttled(func, interval, url, file, metadata, params, k) {\n let key = url.infoHash + file + func.name;\n if (k) key += k;\n if (!throttledFuncs[key]) {\n throttledFuncs[key] = throttle(bind(func, this, url, file, metadata, params), interval, {\n trailing: false,\n });\n }\n const tf = throttledFuncs[key];\n return await tf();\n },\n async cacheUrl(url, metadata, params) {\n const completedPieces = await this.throttledCompletedPieces(url, metadata, params);\n if (completedPieces.length > 0) {\n return this.tcUrl(url);\n }\n return url;\n\n },\n async throttledCompletedPieces(url, metadata = {}, params = {}) {\n let completedPieces = [];\n if (params.cache) {\n completedPieces = await this.throttled(this.completedPieces, 10*60*1000, url, null, metadata, params);\n }\n return completedPieces;\n },\n async throttledTranscodeIndexExists(url, metadata = {}, params = {}) {\n let done = false;\n if (params.cache) {\n done = await this.throttled(this.transcodeIndexExists, 10*60*1000, url, url.path, metadata, params);\n }\n return done;\n },\n async throttledTranscodeDoneMarker(url, metadata = {}, params = {}) {\n let done = false;\n if (params.cache) {\n done = await this.throttled(this.transcodeDoneMarker, 10*60*1000, url, url.path, metadata, params);\n }\n return done;\n },\n async throttledMultibitrateDoneMarker(url, metadata = {}, params = {}) {\n let done = false;\n if (params.cache) {\n done = await this.throttled(this.multibitrateDoneMarker, 10*60*1000, url, url.path, metadata, params);\n }\n return done;\n },\n async throttledMultibitrateIndexExists(url, metadata = {}, params = {}) {\n let done = false;\n if (params.cache) {\n done = await this.throttled(this.multibitrateIndexExists, 10*60*1000, url, url.path, metadata, params);\n }\n return done;\n },\n async isCached(url, metadata = {}, params = {}) {\n const deliveryType = this.getDeliveryType(url.pathname);\n const mediaType = this.getMediaType(url.pathname);\n if (mediaType == 'video') {\n if (await this.throttledMultibitrateDoneMarker(url, metadata, params)) return true;\n }\n if (deliveryType == 'transcode') {\n if (await this.throttledTranscodeDoneMarker(url, metadata, params)) return true;\n }\n const completedPieces = await this.throttledCompletedPieces(url, metadata, params);\n return completedPieces.length > 0;\n },\n async subdomainUrl(url, context = {}, metadata = {}, params = {}) {\n url = this.cloneUrl(url);\n params = Object.assign({}, self.params, params);\n if (!params.subdomains) {\n return url;\n }\n try {\n // const cached = await this.isCached(url, metadata, params);\n const subdomains = await this.throttled(this.subdomains, 30*1000, url, null, metadata, params, metadata.pool);\n if (!context.usedSubdomains) context.usedSubdomains = [];\n let sub = subdomains.filter(e => !context.usedSubdomains.includes(e));\n if (sub.length == 0 && subdomains.length > 0) {\n sub = [subdomains[0]];\n context.usedSubdomains = [];\n }\n if (sub.length !== 0) {\n const s = sub[0];\n url.set('hostname', s + '.' + url.hostname);\n context.usedSubdomains.push(s);\n }\n } catch (e) {\n debug(e);\n console.log(e);\n return false;\n }\n return url;\n }\n };\n return util;\n}","const pathParse = require('path-parse');\nconst Url = require('url-parse');\n\nexport default function(params, sdk) {\n const self = {params, sdk};\n return {\n async url(extUrl, metadata = {}, params = {}) {\n params = Object.assign(self.params, params);\n const url = new Url(params.apiUrl);\n let fileName = \"\";\n if (params.fileName) {\n fileName = params.fileName;\n } else {\n fileName = pathParse(extUrl).base;\n }\n const encodedUrl = encodeURIComponent(btoa(extUrl));\n const pathname = '/ext/' + encodedUrl + '/' + fileName;\n url.set('pathname', pathname);\n const query = await self.sdk.util.makeQuery(metadata, params);\n url.set('query', query);\n return url;\n },\n async streamSubtitleUrl(extUrl, metadata = {}, params = {}) {\n const url = await this.url(extUrl, metadata, params);\n return self.sdk.util.streamSubtitleUrl(url);\n },\n async streamUrl(extUrl, metadata = {}, params = {}) {\n params = Object.assign({}, this.params, params);\n let url = await this.url(extUrl, metadata, params);\n return self.sdk.util.streamUrl(url, metadata, params);\n },\n async mediaInfo(extUrl, metadata = {}, params = {}) {\n const url = await this.url(extUrl, metadata, params);\n return await self.sdk.util.mediaInfo(url);\n },\n async openSubtitles(extUrl, metadata = {}, params = {}) {\n const url = await this.url(extUrl, metadata, params);\n return await self.sdk.util.openSubtitles(url);\n },\n };\n};","import torrent from './sdk/torrent';\nimport magnet from './sdk/magnet';\nimport abuse from './sdk/abuse';\nimport seeder from './sdk/seeder';\nimport tracker from './sdk/tracker';\nimport loader from './sdk/loader';\nimport util from './sdk/util';\nimport ext from './sdk/ext';\nimport throttle from 'lodash/throttle';\n\nconst defaultParams = {\n db: null,\n grpcDebug: false,\n retryInterval: 1000,\n retryLimit: 3,\n cache: false,\n multibitrate: false,\n vod: false,\n pools: {\n cache: [],\n seeder: [],\n transcoder: [],\n },\n subdomains: false,\n async getToken() {\n return null;\n },\n endpoints: {\n torrent: '/store'\n },\n tokenRenewInterval: 60000,\n}\n\nfunction sdk(params = {}) {\n params = Object.assign(defaultParams, params);\n if (params.tokenUrl) {\n params.getToken = async () => {\n const res = await fetch(params.tokenUrl);\n return res.text();\n }\n }\n if (params.tokenRenewInterval) {\n const t = params.getToken;\n params.getToken = throttle(t, params.tokenRenewInterval, {\n trailing: false,\n });\n }\n\n let sdk = {};\n\n sdk = Object.assign(sdk, {\n params,\n tracker: tracker(params, sdk),\n seeder: seeder(params, sdk),\n ext: ext(params, sdk),\n magnet: magnet(params, sdk),\n torrent: torrent(params, sdk),\n abuse: abuse(params, sdk),\n util: util(params, sdk),\n loader: loader(params, sdk),\n });\n sdk.checkApi = (metadata = {}, params = {}) => {\n return sdk.util.checkApi(metadata, params);\n }\n sdk.load = (source, metadata = {}, params = {}) => {\n return sdk.loader.load(source, metadata, params);\n };\n sdk.loadById = (type, id, metadata = {}, params = {}) => {\n return sdk.loader.loadById(type, id, metadata, params);\n };\n\n return sdk;\n\n};\n\nexport default function(params = {}) {\n return sdk(params);\n}","// source: proto/torrent-store/torrent-store.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar proto = {};\n\ngoog.exportSymbol('CheckReply', null, proto);\ngoog.exportSymbol('CheckRequest', null, proto);\ngoog.exportSymbol('PullReply', null, proto);\ngoog.exportSymbol('PullRequest', null, proto);\ngoog.exportSymbol('PushReply', null, proto);\ngoog.exportSymbol('PushRequest', null, proto);\ngoog.exportSymbol('TouchReply', null, proto);\ngoog.exportSymbol('TouchRequest', null, proto);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PushReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PushReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PushReply.displayName = 'proto.PushReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PushRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PushRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PushRequest.displayName = 'proto.PushRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PullRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PullRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PullRequest.displayName = 'proto.PullRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.PullReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.PullReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.PullReply.displayName = 'proto.PullReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.CheckRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.CheckRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.CheckRequest.displayName = 'proto.CheckRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.CheckReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.CheckReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.CheckReply.displayName = 'proto.CheckReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.TouchReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.TouchReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.TouchReply.displayName = 'proto.TouchReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.TouchRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.TouchRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.TouchRequest.displayName = 'proto.TouchRequest';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PushReply.prototype.toObject = function(opt_includeInstance) {\n return proto.PushReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PushReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n infohash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PushReply}\n */\nproto.PushReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PushReply;\n return proto.PushReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PushReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PushReply}\n */\nproto.PushReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PushReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PushReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PushReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string infoHash = 1;\n * @return {string}\n */\nproto.PushReply.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PushReply} returns this\n */\nproto.PushReply.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PushRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.PushRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PushRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n torrent: msg.getTorrent_asB64(),\n expire: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PushRequest}\n */\nproto.PushRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PushRequest;\n return proto.PushRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PushRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PushRequest}\n */\nproto.PushRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setTorrent(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setExpire(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PushRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PushRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PushRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PushRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTorrent_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getExpire();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bytes torrent = 1;\n * @return {!(string|Uint8Array)}\n */\nproto.PushRequest.prototype.getTorrent = function() {\n return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {string}\n */\nproto.PushRequest.prototype.getTorrent_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getTorrent()));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {!Uint8Array}\n */\nproto.PushRequest.prototype.getTorrent_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getTorrent()));\n};\n\n\n/**\n * @param {!(string|Uint8Array)} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setTorrent = function(value) {\n return jspb.Message.setProto3BytesField(this, 1, value);\n};\n\n\n/**\n * optional int32 expire = 2;\n * @return {number}\n */\nproto.PushRequest.prototype.getExpire = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.PushRequest} returns this\n */\nproto.PushRequest.prototype.setExpire = function(value) {\n return jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PullRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.PullRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PullRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PullRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n infohash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PullRequest}\n */\nproto.PullRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PullRequest;\n return proto.PullRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PullRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PullRequest}\n */\nproto.PullRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PullRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PullRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PullRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PullRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string infoHash = 1;\n * @return {string}\n */\nproto.PullRequest.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.PullRequest} returns this\n */\nproto.PullRequest.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.PullReply.prototype.toObject = function(opt_includeInstance) {\n return proto.PullReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.PullReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PullReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n torrent: msg.getTorrent_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.PullReply}\n */\nproto.PullReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.PullReply;\n return proto.PullReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.PullReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.PullReply}\n */\nproto.PullReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setTorrent(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.PullReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.PullReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.PullReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.PullReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTorrent_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bytes torrent = 1;\n * @return {!(string|Uint8Array)}\n */\nproto.PullReply.prototype.getTorrent = function() {\n return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {string}\n */\nproto.PullReply.prototype.getTorrent_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getTorrent()));\n};\n\n\n/**\n * optional bytes torrent = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getTorrent()`\n * @return {!Uint8Array}\n */\nproto.PullReply.prototype.getTorrent_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getTorrent()));\n};\n\n\n/**\n * @param {!(string|Uint8Array)} value\n * @return {!proto.PullReply} returns this\n */\nproto.PullReply.prototype.setTorrent = function(value) {\n return jspb.Message.setProto3BytesField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.CheckRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.CheckRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.CheckRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n infohash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.CheckRequest}\n */\nproto.CheckRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.CheckRequest;\n return proto.CheckRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.CheckRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.CheckRequest}\n */\nproto.CheckRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.CheckRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.CheckRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.CheckRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string infoHash = 1;\n * @return {string}\n */\nproto.CheckRequest.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.CheckRequest} returns this\n */\nproto.CheckRequest.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.CheckReply.prototype.toObject = function(opt_includeInstance) {\n return proto.CheckReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.CheckReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n exists: jspb.Message.getBooleanFieldWithDefault(msg, 1, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.CheckReply}\n */\nproto.CheckReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.CheckReply;\n return proto.CheckReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.CheckReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.CheckReply}\n */\nproto.CheckReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setExists(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.CheckReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.CheckReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.CheckReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.CheckReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getExists();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bool exists = 1;\n * @return {boolean}\n */\nproto.CheckReply.prototype.getExists = function() {\n return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 1, false));\n};\n\n\n/**\n * @param {boolean} value\n * @return {!proto.CheckReply} returns this\n */\nproto.CheckReply.prototype.setExists = function(value) {\n return jspb.Message.setProto3BooleanField(this, 1, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.TouchReply.prototype.toObject = function(opt_includeInstance) {\n return proto.TouchReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.TouchReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.TouchReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.TouchReply}\n */\nproto.TouchReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.TouchReply;\n return proto.TouchReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.TouchReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.TouchReply}\n */\nproto.TouchReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.TouchReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.TouchReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.TouchReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.TouchReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.TouchRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.TouchRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.TouchRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.TouchRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n infohash: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n expire: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.TouchRequest}\n */\nproto.TouchRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.TouchRequest;\n return proto.TouchRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.TouchRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.TouchRequest}\n */\nproto.TouchRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setInfohash(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setExpire(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.TouchRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.TouchRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.TouchRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.TouchRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInfohash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getExpire();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string infoHash = 1;\n * @return {string}\n */\nproto.TouchRequest.prototype.getInfohash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.TouchRequest} returns this\n */\nproto.TouchRequest.prototype.setInfohash = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n/**\n * optional int32 expire = 2;\n * @return {number}\n */\nproto.TouchRequest.prototype.getExpire = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.TouchRequest} returns this\n */\nproto.TouchRequest.prototype.setExpire = function(value) {\n return jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\ngoog.object.extend(exports, proto);\n","// package: \n// file: proto/abuse-store/abuse-store.proto\n\nvar proto_abuse_store_abuse_store_pb = require(\"../../proto/abuse-store/abuse-store_pb\");\nvar grpc = require(\"@improbable-eng/grpc-web\").grpc;\n\nvar AbuseStore = (function () {\n function AbuseStore() {}\n AbuseStore.serviceName = \"AbuseStore\";\n return AbuseStore;\n}());\n\nAbuseStore.Push = {\n methodName: \"Push\",\n service: AbuseStore,\n requestStream: false,\n responseStream: false,\n requestType: proto_abuse_store_abuse_store_pb.PushRequest,\n responseType: proto_abuse_store_abuse_store_pb.PushReply\n};\n\nAbuseStore.Check = {\n methodName: \"Check\",\n service: AbuseStore,\n requestStream: false,\n responseStream: false,\n requestType: proto_abuse_store_abuse_store_pb.CheckRequest,\n responseType: proto_abuse_store_abuse_store_pb.CheckReply\n};\n\nexports.AbuseStore = AbuseStore;\n\nfunction AbuseStoreClient(serviceHost, options) {\n this.serviceHost = serviceHost;\n this.options = options || {};\n}\n\nAbuseStoreClient.prototype.push = function push(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(AbuseStore.Push, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nAbuseStoreClient.prototype.check = function check(requestMessage, metadata, callback) {\n if (arguments.length === 2) {\n callback = arguments[1];\n }\n var client = grpc.unary(AbuseStore.Check, {\n request: requestMessage,\n host: this.serviceHost,\n metadata: metadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (callback) {\n if (response.status !== grpc.Code.OK) {\n var err = new Error(response.statusMessage);\n err.code = response.status;\n err.metadata = response.trailers;\n callback(err, null);\n } else {\n callback(null, response.message);\n }\n }\n }\n });\n return {\n cancel: function () {\n callback = null;\n client.close();\n }\n };\n};\n\nexports.AbuseStoreClient = AbuseStoreClient;\n\n","module.exports = require('./build/mediaelement-and-player.js');\n","// source: proto/torrent-web-seeder/torrent-web-seeder.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar proto = {};\n\ngoog.exportSymbol('File', null, proto);\ngoog.exportSymbol('FilesReply', null, proto);\ngoog.exportSymbol('FilesRequest', null, proto);\ngoog.exportSymbol('Piece', null, proto);\ngoog.exportSymbol('Piece.Priority', null, proto);\ngoog.exportSymbol('StatReply', null, proto);\ngoog.exportSymbol('StatReply.Status', null, proto);\ngoog.exportSymbol('StatRequest', null, proto);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.StatRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.StatRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.StatRequest.displayName = 'proto.StatRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.StatReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.StatReply.repeatedFields_, null);\n};\ngoog.inherits(proto.StatReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.StatReply.displayName = 'proto.StatReply';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.Piece = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.Piece, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.Piece.displayName = 'proto.Piece';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.FilesRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.FilesRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.FilesRequest.displayName = 'proto.FilesRequest';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.File = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.File, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.File.displayName = 'proto.File';\n}\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.FilesReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.FilesReply.repeatedFields_, null);\n};\ngoog.inherits(proto.FilesReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.FilesReply.displayName = 'proto.FilesReply';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.StatRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.StatRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.StatRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n path: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.StatRequest}\n */\nproto.StatRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.StatRequest;\n return proto.StatRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.StatRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.StatRequest}\n */\nproto.StatRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPath(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.StatRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.StatRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.StatRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPath();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string path = 1;\n * @return {string}\n */\nproto.StatRequest.prototype.getPath = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.StatRequest} returns this\n */\nproto.StatRequest.prototype.setPath = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.StatReply.repeatedFields_ = [5];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.StatReply.prototype.toObject = function(opt_includeInstance) {\n return proto.StatReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.StatReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n total: jspb.Message.getFieldWithDefault(msg, 1, 0),\n completed: jspb.Message.getFieldWithDefault(msg, 2, 0),\n peers: jspb.Message.getFieldWithDefault(msg, 3, 0),\n status: jspb.Message.getFieldWithDefault(msg, 4, 0),\n piecesList: jspb.Message.toObjectList(msg.getPiecesList(),\n proto.Piece.toObject, includeInstance),\n seeders: jspb.Message.getFieldWithDefault(msg, 6, 0),\n leechers: jspb.Message.getFieldWithDefault(msg, 7, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.StatReply}\n */\nproto.StatReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.StatReply;\n return proto.StatReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.StatReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.StatReply}\n */\nproto.StatReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotal(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCompleted(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setPeers(value);\n break;\n case 4:\n var value = /** @type {!proto.StatReply.Status} */ (reader.readEnum());\n msg.setStatus(value);\n break;\n case 5:\n var value = new proto.Piece;\n reader.readMessage(value,proto.Piece.deserializeBinaryFromReader);\n msg.addPieces(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setSeeders(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setLeechers(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.StatReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.StatReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.StatReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.StatReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTotal();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getCompleted();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getPeers();\n if (f !== 0) {\n writer.writeInt32(\n 3,\n f\n );\n }\n f = message.getStatus();\n if (f !== 0.0) {\n writer.writeEnum(\n 4,\n f\n );\n }\n f = message.getPiecesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 5,\n f,\n proto.Piece.serializeBinaryToWriter\n );\n }\n f = message.getSeeders();\n if (f !== 0) {\n writer.writeInt32(\n 6,\n f\n );\n }\n f = message.getLeechers();\n if (f !== 0) {\n writer.writeInt32(\n 7,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.StatReply.Status = {\n INITIALIZATION: 0,\n SEEDING: 1,\n IDLE: 2,\n TERMINATED: 3,\n WAITING_FOR_PEERS: 4,\n RESTORING: 5,\n BACKINGUP: 6\n};\n\n/**\n * optional int64 total = 1;\n * @return {number}\n */\nproto.StatReply.prototype.getTotal = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setTotal = function(value) {\n return jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional int64 completed = 2;\n * @return {number}\n */\nproto.StatReply.prototype.getCompleted = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setCompleted = function(value) {\n return jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\n/**\n * optional int32 peers = 3;\n * @return {number}\n */\nproto.StatReply.prototype.getPeers = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setPeers = function(value) {\n return jspb.Message.setProto3IntField(this, 3, value);\n};\n\n\n/**\n * optional Status status = 4;\n * @return {!proto.StatReply.Status}\n */\nproto.StatReply.prototype.getStatus = function() {\n return /** @type {!proto.StatReply.Status} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/**\n * @param {!proto.StatReply.Status} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setStatus = function(value) {\n return jspb.Message.setProto3EnumField(this, 4, value);\n};\n\n\n/**\n * repeated Piece pieces = 5;\n * @return {!Array}\n */\nproto.StatReply.prototype.getPiecesList = function() {\n return /** @type{!Array} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.Piece, 5));\n};\n\n\n/**\n * @param {!Array} value\n * @return {!proto.StatReply} returns this\n*/\nproto.StatReply.prototype.setPiecesList = function(value) {\n return jspb.Message.setRepeatedWrapperField(this, 5, value);\n};\n\n\n/**\n * @param {!proto.Piece=} opt_value\n * @param {number=} opt_index\n * @return {!proto.Piece}\n */\nproto.StatReply.prototype.addPieces = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 5, opt_value, proto.Piece, opt_index);\n};\n\n\n/**\n * Clears the list making it empty but non-null.\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.clearPiecesList = function() {\n return this.setPiecesList([]);\n};\n\n\n/**\n * optional int32 seeders = 6;\n * @return {number}\n */\nproto.StatReply.prototype.getSeeders = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setSeeders = function(value) {\n return jspb.Message.setProto3IntField(this, 6, value);\n};\n\n\n/**\n * optional int32 leechers = 7;\n * @return {number}\n */\nproto.StatReply.prototype.getLeechers = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.StatReply} returns this\n */\nproto.StatReply.prototype.setLeechers = function(value) {\n return jspb.Message.setProto3IntField(this, 7, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.Piece.prototype.toObject = function(opt_includeInstance) {\n return proto.Piece.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.Piece} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Piece.toObject = function(includeInstance, msg) {\n var f, obj = {\n position: jspb.Message.getFieldWithDefault(msg, 1, 0),\n complete: jspb.Message.getBooleanFieldWithDefault(msg, 2, false),\n priority: jspb.Message.getFieldWithDefault(msg, 3, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.Piece}\n */\nproto.Piece.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.Piece;\n return proto.Piece.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.Piece} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.Piece}\n */\nproto.Piece.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPosition(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setComplete(value);\n break;\n case 3:\n var value = /** @type {!proto.Piece.Priority} */ (reader.readEnum());\n msg.setPriority(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.Piece.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.Piece.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.Piece} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.Piece.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPosition();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getComplete();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n f = message.getPriority();\n if (f !== 0.0) {\n writer.writeEnum(\n 3,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.Piece.Priority = {\n NONE: 0,\n NORMAL: 1,\n HIGH: 2,\n READAHEAD: 3,\n NEXT: 4,\n NOW: 5\n};\n\n/**\n * optional int64 position = 1;\n * @return {number}\n */\nproto.Piece.prototype.getPosition = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.Piece} returns this\n */\nproto.Piece.prototype.setPosition = function(value) {\n return jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional bool complete = 2;\n * @return {boolean}\n */\nproto.Piece.prototype.getComplete = function() {\n return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 2, false));\n};\n\n\n/**\n * @param {boolean} value\n * @return {!proto.Piece} returns this\n */\nproto.Piece.prototype.setComplete = function(value) {\n return jspb.Message.setProto3BooleanField(this, 2, value);\n};\n\n\n/**\n * optional Priority priority = 3;\n * @return {!proto.Piece.Priority}\n */\nproto.Piece.prototype.getPriority = function() {\n return /** @type {!proto.Piece.Priority} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/**\n * @param {!proto.Piece.Priority} value\n * @return {!proto.Piece} returns this\n */\nproto.Piece.prototype.setPriority = function(value) {\n return jspb.Message.setProto3EnumField(this, 3, value);\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.FilesRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.FilesRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.FilesRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.FilesRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.FilesRequest}\n */\nproto.FilesRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.FilesRequest;\n return proto.FilesRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.FilesRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.FilesRequest}\n */\nproto.FilesRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.FilesRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.FilesRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.FilesRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.FilesRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.File.prototype.toObject = function(opt_includeInstance) {\n return proto.File.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.File} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.File.toObject = function(includeInstance, msg) {\n var f, obj = {\n path: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.File}\n */\nproto.File.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.File;\n return proto.File.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.File} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.File}\n */\nproto.File.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPath(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.File.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.File.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.File} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.File.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPath();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string path = 1;\n * @return {string}\n */\nproto.File.prototype.getPath = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.File} returns this\n */\nproto.File.prototype.setPath = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.FilesReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.FilesReply.prototype.toObject = function(opt_includeInstance) {\n return proto.FilesReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.FilesReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.FilesReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n filesList: jspb.Message.toObjectList(msg.getFilesList(),\n proto.File.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.FilesReply}\n */\nproto.FilesReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.FilesReply;\n return proto.FilesReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.FilesReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.FilesReply}\n */\nproto.FilesReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.File;\n reader.readMessage(value,proto.File.deserializeBinaryFromReader);\n msg.addFiles(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.FilesReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.FilesReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.FilesReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.FilesReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getFilesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.File.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated File files = 1;\n * @return {!Array}\n */\nproto.FilesReply.prototype.getFilesList = function() {\n return /** @type{!Array} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.File, 1));\n};\n\n\n/**\n * @param {!Array} value\n * @return {!proto.FilesReply} returns this\n*/\nproto.FilesReply.prototype.setFilesList = function(value) {\n return jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.File=} opt_value\n * @param {number=} opt_index\n * @return {!proto.File}\n */\nproto.FilesReply.prototype.addFiles = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.File, opt_index);\n};\n\n\n/**\n * Clears the list making it empty but non-null.\n * @return {!proto.FilesReply} returns this\n */\nproto.FilesReply.prototype.clearFilesList = function() {\n return this.setFilesList([]);\n};\n\n\ngoog.object.extend(exports, proto);\n"],"sourceRoot":""} \ No newline at end of file diff --git a/ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js.map.gz b/ui/dist/async_main_493df0b3.c8a5d568b3002b296cb0.bundle.js.map.gz new file mode 100644 index 0000000000000000000000000000000000000000..349c842baccbd7e249d94c9f73a7d3b75bc79fbd GIT binary patch literal 42001 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 F1ORSt;H3Zn literal 0 HcmV?d00001 diff --git a/ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.js.gz b/ui/dist/async_main_493df0b3.dc63956c75681b023819.bundle.js.gz deleted file mode 100644 index e8596044bd20a9861e94f34fd417c38aae21da65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13335 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 F1OO*)x6%Lr diff --git a/ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.css b/ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.css similarity index 65% rename from ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.css rename to ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.css index 7592976..4f40d11 100644 --- a/ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.css +++ b/ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.css @@ -3,4 +3,4 @@ * Copyright 2011-2020 The Bootstrap Authors * Copyright 2011-2020 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - */[data-v-7c3232e0]:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#203040;--secondary:#ce0cb7;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}[data-v-7c3232e0],[data-v-7c3232e0]:after,[data-v-7c3232e0]:before{box-sizing:border-box}html[data-v-7c3232e0]{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article[data-v-7c3232e0],aside[data-v-7c3232e0],figcaption[data-v-7c3232e0],figure[data-v-7c3232e0],footer[data-v-7c3232e0],header[data-v-7c3232e0],hgroup[data-v-7c3232e0],main[data-v-7c3232e0],nav[data-v-7c3232e0],section[data-v-7c3232e0]{display:block}body[data-v-7c3232e0]{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:1rem;font-weight:400;line-height:1.5;color:#a79e8b;text-align:left;background-color:#101417}[tabindex="-1"][data-v-7c3232e0]:focus:not(:focus-visible){outline:0!important}hr[data-v-7c3232e0]{box-sizing:initial;height:0;overflow:visible}h1[data-v-7c3232e0],h2[data-v-7c3232e0],h3[data-v-7c3232e0],h4[data-v-7c3232e0],h5[data-v-7c3232e0],h6[data-v-7c3232e0]{margin-top:0;margin-bottom:.5rem}p[data-v-7c3232e0]{margin-top:0;margin-bottom:1rem}abbr[data-original-title][data-v-7c3232e0],abbr[title][data-v-7c3232e0]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address[data-v-7c3232e0]{margin-bottom:1rem;font-style:normal;line-height:inherit}dl[data-v-7c3232e0],ol[data-v-7c3232e0],ul[data-v-7c3232e0]{margin-top:0;margin-bottom:1rem}ol ol[data-v-7c3232e0],ol ul[data-v-7c3232e0],ul ol[data-v-7c3232e0],ul ul[data-v-7c3232e0]{margin-bottom:0}dt[data-v-7c3232e0]{font-weight:700}dd[data-v-7c3232e0]{margin-bottom:.5rem;margin-left:0}blockquote[data-v-7c3232e0]{margin:0 0 1rem}b[data-v-7c3232e0],strong[data-v-7c3232e0]{font-weight:bolder}small[data-v-7c3232e0]{font-size:80%}sub[data-v-7c3232e0],sup[data-v-7c3232e0]{position:relative;font-size:75%;line-height:0;vertical-align:initial}sub[data-v-7c3232e0]{bottom:-.25em}sup[data-v-7c3232e0]{top:-.5em}a[data-v-7c3232e0]{color:#80b6cc;text-decoration:none;background-color:initial}a[data-v-7c3232e0]:hover{color:#4997b6;text-decoration:underline}a[data-v-7c3232e0]:not([href]):not([class]),a[data-v-7c3232e0]:not([href]):not([class]):hover{color:inherit;text-decoration:none}code[data-v-7c3232e0],kbd[data-v-7c3232e0],pre[data-v-7c3232e0],samp[data-v-7c3232e0]{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre[data-v-7c3232e0]{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure[data-v-7c3232e0]{margin:0 0 1rem}img[data-v-7c3232e0]{vertical-align:middle;border-style:none}svg[data-v-7c3232e0]{overflow:hidden;vertical-align:middle}table[data-v-7c3232e0]{border-collapse:collapse}caption[data-v-7c3232e0]{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th[data-v-7c3232e0]{text-align:inherit}label[data-v-7c3232e0]{display:inline-block;margin-bottom:.5rem}button[data-v-7c3232e0]{border-radius:0}button[data-v-7c3232e0]:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button[data-v-7c3232e0],input[data-v-7c3232e0],optgroup[data-v-7c3232e0],select[data-v-7c3232e0],textarea[data-v-7c3232e0]{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button[data-v-7c3232e0],input[data-v-7c3232e0]{overflow:visible}button[data-v-7c3232e0],select[data-v-7c3232e0]{text-transform:none}[role=button][data-v-7c3232e0]{cursor:pointer}select[data-v-7c3232e0]{word-wrap:normal}[type=button][data-v-7c3232e0],[type=reset][data-v-7c3232e0],[type=submit][data-v-7c3232e0],button[data-v-7c3232e0]{-webkit-appearance:button}[type=button][data-v-7c3232e0]:not(:disabled),[type=reset][data-v-7c3232e0]:not(:disabled),[type=submit][data-v-7c3232e0]:not(:disabled),button[data-v-7c3232e0]:not(:disabled){cursor:pointer}[type=button][data-v-7c3232e0]::-moz-focus-inner,[type=reset][data-v-7c3232e0]::-moz-focus-inner,[type=submit][data-v-7c3232e0]::-moz-focus-inner,button[data-v-7c3232e0]::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox][data-v-7c3232e0],input[type=radio][data-v-7c3232e0]{box-sizing:border-box;padding:0}textarea[data-v-7c3232e0]{overflow:auto;resize:vertical}fieldset[data-v-7c3232e0]{min-width:0;padding:0;margin:0;border:0}legend[data-v-7c3232e0]{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress[data-v-7c3232e0]{vertical-align:initial}[type=number][data-v-7c3232e0]::-webkit-inner-spin-button,[type=number][data-v-7c3232e0]::-webkit-outer-spin-button{height:auto}[type=search][data-v-7c3232e0]{outline-offset:-2px;-webkit-appearance:none}[type=search][data-v-7c3232e0]::-webkit-search-decoration{-webkit-appearance:none}[data-v-7c3232e0]::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output[data-v-7c3232e0]{display:inline-block}summary[data-v-7c3232e0]{display:list-item;cursor:pointer}template[data-v-7c3232e0]{display:none}[hidden][data-v-7c3232e0]{display:none!important}.h1[data-v-7c3232e0],.h2[data-v-7c3232e0],.h3[data-v-7c3232e0],.h4[data-v-7c3232e0],.h5[data-v-7c3232e0],.h6[data-v-7c3232e0],h1[data-v-7c3232e0],h2[data-v-7c3232e0],h3[data-v-7c3232e0],h4[data-v-7c3232e0],h5[data-v-7c3232e0],h6[data-v-7c3232e0]{margin-bottom:.5rem;font-weight:500;line-height:1.2;color:#f78e66}.h1[data-v-7c3232e0],h1[data-v-7c3232e0]{font-size:2.5rem}.h2[data-v-7c3232e0],h2[data-v-7c3232e0]{font-size:2rem}.h3[data-v-7c3232e0],h3[data-v-7c3232e0]{font-size:1.75rem}.h4[data-v-7c3232e0],h4[data-v-7c3232e0]{font-size:1.5rem}.h5[data-v-7c3232e0],h5[data-v-7c3232e0]{font-size:1.25rem}.h6[data-v-7c3232e0],h6[data-v-7c3232e0]{font-size:1rem}.lead[data-v-7c3232e0]{font-size:1.25rem;font-weight:300}.display-1[data-v-7c3232e0]{font-size:6rem;font-weight:300;line-height:1.2}.display-2[data-v-7c3232e0]{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3[data-v-7c3232e0]{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4[data-v-7c3232e0]{font-size:3.5rem;font-weight:300;line-height:1.2}hr[data-v-7c3232e0]{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small[data-v-7c3232e0],small[data-v-7c3232e0]{font-size:80%;font-weight:400}.mark[data-v-7c3232e0],mark[data-v-7c3232e0]{padding:.2em;background-color:#fcf8e3}.list-inline[data-v-7c3232e0],.list-unstyled[data-v-7c3232e0]{padding-left:0;list-style:none}.list-inline-item[data-v-7c3232e0]{display:inline-block}.list-inline-item[data-v-7c3232e0]:not(:last-child){margin-right:.5rem}.initialism[data-v-7c3232e0]{font-size:90%;text-transform:uppercase}.blockquote[data-v-7c3232e0]{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer[data-v-7c3232e0]{display:block;font-size:80%;color:#6c757d}.blockquote-footer[data-v-7c3232e0]:before{content:"\2014\A0"}.img-fluid[data-v-7c3232e0]{max-width:100%;height:auto}.img-thumbnail[data-v-7c3232e0]{padding:.25rem;background-color:#101417;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure[data-v-7c3232e0]{display:inline-block}.figure-img[data-v-7c3232e0]{margin-bottom:.5rem;line-height:1}.figure-caption[data-v-7c3232e0]{font-size:90%;color:#6c757d}code[data-v-7c3232e0]{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code[data-v-7c3232e0]{color:inherit}kbd[data-v-7c3232e0]{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd[data-v-7c3232e0]{padding:0;font-size:100%;font-weight:700}pre[data-v-7c3232e0]{display:block;font-size:87.5%;color:#212529}pre code[data-v-7c3232e0]{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable[data-v-7c3232e0]{max-height:340px;overflow-y:scroll}.container-fluid[data-v-7c3232e0],.container-lg[data-v-7c3232e0],.container-md[data-v-7c3232e0],.container-sm[data-v-7c3232e0],.container-xl[data-v-7c3232e0],.container[data-v-7c3232e0]{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container-sm[data-v-7c3232e0],.container[data-v-7c3232e0]{max-width:540px}}@media (min-width:768px){.container-md[data-v-7c3232e0],.container-sm[data-v-7c3232e0],.container[data-v-7c3232e0]{max-width:720px}}@media (min-width:992px){.container-lg[data-v-7c3232e0],.container-md[data-v-7c3232e0],.container-sm[data-v-7c3232e0],.container[data-v-7c3232e0]{max-width:960px}}@media (min-width:1200px){.container-lg[data-v-7c3232e0],.container-md[data-v-7c3232e0],.container-sm[data-v-7c3232e0],.container-xl[data-v-7c3232e0],.container[data-v-7c3232e0]{max-width:1140px}}.row[data-v-7c3232e0]{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters[data-v-7c3232e0]{margin-right:0;margin-left:0}.no-gutters>.col[data-v-7c3232e0],.no-gutters>[class*=col-][data-v-7c3232e0]{padding-right:0;padding-left:0}.col-1[data-v-7c3232e0],.col-2[data-v-7c3232e0],.col-3[data-v-7c3232e0],.col-4[data-v-7c3232e0],.col-5[data-v-7c3232e0],.col-6[data-v-7c3232e0],.col-7[data-v-7c3232e0],.col-8[data-v-7c3232e0],.col-9[data-v-7c3232e0],.col-10[data-v-7c3232e0],.col-11[data-v-7c3232e0],.col-12[data-v-7c3232e0],.col-auto[data-v-7c3232e0],.col-lg-1[data-v-7c3232e0],.col-lg-2[data-v-7c3232e0],.col-lg-3[data-v-7c3232e0],.col-lg-4[data-v-7c3232e0],.col-lg-5[data-v-7c3232e0],.col-lg-6[data-v-7c3232e0],.col-lg-7[data-v-7c3232e0],.col-lg-8[data-v-7c3232e0],.col-lg-9[data-v-7c3232e0],.col-lg-10[data-v-7c3232e0],.col-lg-11[data-v-7c3232e0],.col-lg-12[data-v-7c3232e0],.col-lg-auto[data-v-7c3232e0],.col-lg[data-v-7c3232e0],.col-md-1[data-v-7c3232e0],.col-md-2[data-v-7c3232e0],.col-md-3[data-v-7c3232e0],.col-md-4[data-v-7c3232e0],.col-md-5[data-v-7c3232e0],.col-md-6[data-v-7c3232e0],.col-md-7[data-v-7c3232e0],.col-md-8[data-v-7c3232e0],.col-md-9[data-v-7c3232e0],.col-md-10[data-v-7c3232e0],.col-md-11[data-v-7c3232e0],.col-md-12[data-v-7c3232e0],.col-md-auto[data-v-7c3232e0],.col-md[data-v-7c3232e0],.col-sm-1[data-v-7c3232e0],.col-sm-2[data-v-7c3232e0],.col-sm-3[data-v-7c3232e0],.col-sm-4[data-v-7c3232e0],.col-sm-5[data-v-7c3232e0],.col-sm-6[data-v-7c3232e0],.col-sm-7[data-v-7c3232e0],.col-sm-8[data-v-7c3232e0],.col-sm-9[data-v-7c3232e0],.col-sm-10[data-v-7c3232e0],.col-sm-11[data-v-7c3232e0],.col-sm-12[data-v-7c3232e0],.col-sm-auto[data-v-7c3232e0],.col-sm[data-v-7c3232e0],.col-xl-1[data-v-7c3232e0],.col-xl-2[data-v-7c3232e0],.col-xl-3[data-v-7c3232e0],.col-xl-4[data-v-7c3232e0],.col-xl-5[data-v-7c3232e0],.col-xl-6[data-v-7c3232e0],.col-xl-7[data-v-7c3232e0],.col-xl-8[data-v-7c3232e0],.col-xl-9[data-v-7c3232e0],.col-xl-10[data-v-7c3232e0],.col-xl-11[data-v-7c3232e0],.col-xl-12[data-v-7c3232e0],.col-xl-auto[data-v-7c3232e0],.col-xl[data-v-7c3232e0],.col[data-v-7c3232e0]{position:relative;width:100%;padding-right:15px;padding-left:15px}.col[data-v-7c3232e0]{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.row-cols-2>[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.row-cols-3>[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-4>[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.row-cols-5>[data-v-7c3232e0]{flex:0 0 20%;max-width:20%}.row-cols-6>[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-auto[data-v-7c3232e0]{flex:0 0 auto;width:auto;max-width:100%}.col-1[data-v-7c3232e0]{flex:0 0 8.33333%;max-width:8.33333%}.col-2[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-3[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.col-4[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.col-5[data-v-7c3232e0]{flex:0 0 41.66667%;max-width:41.66667%}.col-6[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.col-7[data-v-7c3232e0]{flex:0 0 58.33333%;max-width:58.33333%}.col-8[data-v-7c3232e0]{flex:0 0 66.66667%;max-width:66.66667%}.col-9[data-v-7c3232e0]{flex:0 0 75%;max-width:75%}.col-10[data-v-7c3232e0]{flex:0 0 83.33333%;max-width:83.33333%}.col-11[data-v-7c3232e0]{flex:0 0 91.66667%;max-width:91.66667%}.col-12[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.order-first[data-v-7c3232e0]{order:-1}.order-last[data-v-7c3232e0]{order:13}.order-0[data-v-7c3232e0]{order:0}.order-1[data-v-7c3232e0]{order:1}.order-2[data-v-7c3232e0]{order:2}.order-3[data-v-7c3232e0]{order:3}.order-4[data-v-7c3232e0]{order:4}.order-5[data-v-7c3232e0]{order:5}.order-6[data-v-7c3232e0]{order:6}.order-7[data-v-7c3232e0]{order:7}.order-8[data-v-7c3232e0]{order:8}.order-9[data-v-7c3232e0]{order:9}.order-10[data-v-7c3232e0]{order:10}.order-11[data-v-7c3232e0]{order:11}.order-12[data-v-7c3232e0]{order:12}.offset-1[data-v-7c3232e0]{margin-left:8.33333%}.offset-2[data-v-7c3232e0]{margin-left:16.66667%}.offset-3[data-v-7c3232e0]{margin-left:25%}.offset-4[data-v-7c3232e0]{margin-left:33.33333%}.offset-5[data-v-7c3232e0]{margin-left:41.66667%}.offset-6[data-v-7c3232e0]{margin-left:50%}.offset-7[data-v-7c3232e0]{margin-left:58.33333%}.offset-8[data-v-7c3232e0]{margin-left:66.66667%}.offset-9[data-v-7c3232e0]{margin-left:75%}.offset-10[data-v-7c3232e0]{margin-left:83.33333%}.offset-11[data-v-7c3232e0]{margin-left:91.66667%}@media (min-width:576px){.col-sm[data-v-7c3232e0]{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.row-cols-sm-2>[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.row-cols-sm-3>[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-sm-4>[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.row-cols-sm-5>[data-v-7c3232e0]{flex:0 0 20%;max-width:20%}.row-cols-sm-6>[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-auto[data-v-7c3232e0]{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1[data-v-7c3232e0]{flex:0 0 8.33333%;max-width:8.33333%}.col-sm-2[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-3[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.col-sm-4[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.col-sm-5[data-v-7c3232e0]{flex:0 0 41.66667%;max-width:41.66667%}.col-sm-6[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.col-sm-7[data-v-7c3232e0]{flex:0 0 58.33333%;max-width:58.33333%}.col-sm-8[data-v-7c3232e0]{flex:0 0 66.66667%;max-width:66.66667%}.col-sm-9[data-v-7c3232e0]{flex:0 0 75%;max-width:75%}.col-sm-10[data-v-7c3232e0]{flex:0 0 83.33333%;max-width:83.33333%}.col-sm-11[data-v-7c3232e0]{flex:0 0 91.66667%;max-width:91.66667%}.col-sm-12[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.order-sm-first[data-v-7c3232e0]{order:-1}.order-sm-last[data-v-7c3232e0]{order:13}.order-sm-0[data-v-7c3232e0]{order:0}.order-sm-1[data-v-7c3232e0]{order:1}.order-sm-2[data-v-7c3232e0]{order:2}.order-sm-3[data-v-7c3232e0]{order:3}.order-sm-4[data-v-7c3232e0]{order:4}.order-sm-5[data-v-7c3232e0]{order:5}.order-sm-6[data-v-7c3232e0]{order:6}.order-sm-7[data-v-7c3232e0]{order:7}.order-sm-8[data-v-7c3232e0]{order:8}.order-sm-9[data-v-7c3232e0]{order:9}.order-sm-10[data-v-7c3232e0]{order:10}.order-sm-11[data-v-7c3232e0]{order:11}.order-sm-12[data-v-7c3232e0]{order:12}.offset-sm-0[data-v-7c3232e0]{margin-left:0}.offset-sm-1[data-v-7c3232e0]{margin-left:8.33333%}.offset-sm-2[data-v-7c3232e0]{margin-left:16.66667%}.offset-sm-3[data-v-7c3232e0]{margin-left:25%}.offset-sm-4[data-v-7c3232e0]{margin-left:33.33333%}.offset-sm-5[data-v-7c3232e0]{margin-left:41.66667%}.offset-sm-6[data-v-7c3232e0]{margin-left:50%}.offset-sm-7[data-v-7c3232e0]{margin-left:58.33333%}.offset-sm-8[data-v-7c3232e0]{margin-left:66.66667%}.offset-sm-9[data-v-7c3232e0]{margin-left:75%}.offset-sm-10[data-v-7c3232e0]{margin-left:83.33333%}.offset-sm-11[data-v-7c3232e0]{margin-left:91.66667%}}@media (min-width:768px){.col-md[data-v-7c3232e0]{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.row-cols-md-2>[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.row-cols-md-3>[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-md-4>[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.row-cols-md-5>[data-v-7c3232e0]{flex:0 0 20%;max-width:20%}.row-cols-md-6>[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-md-auto[data-v-7c3232e0]{flex:0 0 auto;width:auto;max-width:100%}.col-md-1[data-v-7c3232e0]{flex:0 0 8.33333%;max-width:8.33333%}.col-md-2[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-md-3[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.col-md-4[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.col-md-5[data-v-7c3232e0]{flex:0 0 41.66667%;max-width:41.66667%}.col-md-6[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.col-md-7[data-v-7c3232e0]{flex:0 0 58.33333%;max-width:58.33333%}.col-md-8[data-v-7c3232e0]{flex:0 0 66.66667%;max-width:66.66667%}.col-md-9[data-v-7c3232e0]{flex:0 0 75%;max-width:75%}.col-md-10[data-v-7c3232e0]{flex:0 0 83.33333%;max-width:83.33333%}.col-md-11[data-v-7c3232e0]{flex:0 0 91.66667%;max-width:91.66667%}.col-md-12[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.order-md-first[data-v-7c3232e0]{order:-1}.order-md-last[data-v-7c3232e0]{order:13}.order-md-0[data-v-7c3232e0]{order:0}.order-md-1[data-v-7c3232e0]{order:1}.order-md-2[data-v-7c3232e0]{order:2}.order-md-3[data-v-7c3232e0]{order:3}.order-md-4[data-v-7c3232e0]{order:4}.order-md-5[data-v-7c3232e0]{order:5}.order-md-6[data-v-7c3232e0]{order:6}.order-md-7[data-v-7c3232e0]{order:7}.order-md-8[data-v-7c3232e0]{order:8}.order-md-9[data-v-7c3232e0]{order:9}.order-md-10[data-v-7c3232e0]{order:10}.order-md-11[data-v-7c3232e0]{order:11}.order-md-12[data-v-7c3232e0]{order:12}.offset-md-0[data-v-7c3232e0]{margin-left:0}.offset-md-1[data-v-7c3232e0]{margin-left:8.33333%}.offset-md-2[data-v-7c3232e0]{margin-left:16.66667%}.offset-md-3[data-v-7c3232e0]{margin-left:25%}.offset-md-4[data-v-7c3232e0]{margin-left:33.33333%}.offset-md-5[data-v-7c3232e0]{margin-left:41.66667%}.offset-md-6[data-v-7c3232e0]{margin-left:50%}.offset-md-7[data-v-7c3232e0]{margin-left:58.33333%}.offset-md-8[data-v-7c3232e0]{margin-left:66.66667%}.offset-md-9[data-v-7c3232e0]{margin-left:75%}.offset-md-10[data-v-7c3232e0]{margin-left:83.33333%}.offset-md-11[data-v-7c3232e0]{margin-left:91.66667%}}@media (min-width:992px){.col-lg[data-v-7c3232e0]{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.row-cols-lg-2>[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.row-cols-lg-3>[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-lg-4>[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.row-cols-lg-5>[data-v-7c3232e0]{flex:0 0 20%;max-width:20%}.row-cols-lg-6>[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-auto[data-v-7c3232e0]{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1[data-v-7c3232e0]{flex:0 0 8.33333%;max-width:8.33333%}.col-lg-2[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-3[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.col-lg-4[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.col-lg-5[data-v-7c3232e0]{flex:0 0 41.66667%;max-width:41.66667%}.col-lg-6[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.col-lg-7[data-v-7c3232e0]{flex:0 0 58.33333%;max-width:58.33333%}.col-lg-8[data-v-7c3232e0]{flex:0 0 66.66667%;max-width:66.66667%}.col-lg-9[data-v-7c3232e0]{flex:0 0 75%;max-width:75%}.col-lg-10[data-v-7c3232e0]{flex:0 0 83.33333%;max-width:83.33333%}.col-lg-11[data-v-7c3232e0]{flex:0 0 91.66667%;max-width:91.66667%}.col-lg-12[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.order-lg-first[data-v-7c3232e0]{order:-1}.order-lg-last[data-v-7c3232e0]{order:13}.order-lg-0[data-v-7c3232e0]{order:0}.order-lg-1[data-v-7c3232e0]{order:1}.order-lg-2[data-v-7c3232e0]{order:2}.order-lg-3[data-v-7c3232e0]{order:3}.order-lg-4[data-v-7c3232e0]{order:4}.order-lg-5[data-v-7c3232e0]{order:5}.order-lg-6[data-v-7c3232e0]{order:6}.order-lg-7[data-v-7c3232e0]{order:7}.order-lg-8[data-v-7c3232e0]{order:8}.order-lg-9[data-v-7c3232e0]{order:9}.order-lg-10[data-v-7c3232e0]{order:10}.order-lg-11[data-v-7c3232e0]{order:11}.order-lg-12[data-v-7c3232e0]{order:12}.offset-lg-0[data-v-7c3232e0]{margin-left:0}.offset-lg-1[data-v-7c3232e0]{margin-left:8.33333%}.offset-lg-2[data-v-7c3232e0]{margin-left:16.66667%}.offset-lg-3[data-v-7c3232e0]{margin-left:25%}.offset-lg-4[data-v-7c3232e0]{margin-left:33.33333%}.offset-lg-5[data-v-7c3232e0]{margin-left:41.66667%}.offset-lg-6[data-v-7c3232e0]{margin-left:50%}.offset-lg-7[data-v-7c3232e0]{margin-left:58.33333%}.offset-lg-8[data-v-7c3232e0]{margin-left:66.66667%}.offset-lg-9[data-v-7c3232e0]{margin-left:75%}.offset-lg-10[data-v-7c3232e0]{margin-left:83.33333%}.offset-lg-11[data-v-7c3232e0]{margin-left:91.66667%}}@media (min-width:1200px){.col-xl[data-v-7c3232e0]{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.row-cols-xl-2>[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.row-cols-xl-3>[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-xl-4>[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.row-cols-xl-5>[data-v-7c3232e0]{flex:0 0 20%;max-width:20%}.row-cols-xl-6>[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-auto[data-v-7c3232e0]{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1[data-v-7c3232e0]{flex:0 0 8.33333%;max-width:8.33333%}.col-xl-2[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-3[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.col-xl-4[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.col-xl-5[data-v-7c3232e0]{flex:0 0 41.66667%;max-width:41.66667%}.col-xl-6[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.col-xl-7[data-v-7c3232e0]{flex:0 0 58.33333%;max-width:58.33333%}.col-xl-8[data-v-7c3232e0]{flex:0 0 66.66667%;max-width:66.66667%}.col-xl-9[data-v-7c3232e0]{flex:0 0 75%;max-width:75%}.col-xl-10[data-v-7c3232e0]{flex:0 0 83.33333%;max-width:83.33333%}.col-xl-11[data-v-7c3232e0]{flex:0 0 91.66667%;max-width:91.66667%}.col-xl-12[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.order-xl-first[data-v-7c3232e0]{order:-1}.order-xl-last[data-v-7c3232e0]{order:13}.order-xl-0[data-v-7c3232e0]{order:0}.order-xl-1[data-v-7c3232e0]{order:1}.order-xl-2[data-v-7c3232e0]{order:2}.order-xl-3[data-v-7c3232e0]{order:3}.order-xl-4[data-v-7c3232e0]{order:4}.order-xl-5[data-v-7c3232e0]{order:5}.order-xl-6[data-v-7c3232e0]{order:6}.order-xl-7[data-v-7c3232e0]{order:7}.order-xl-8[data-v-7c3232e0]{order:8}.order-xl-9[data-v-7c3232e0]{order:9}.order-xl-10[data-v-7c3232e0]{order:10}.order-xl-11[data-v-7c3232e0]{order:11}.order-xl-12[data-v-7c3232e0]{order:12}.offset-xl-0[data-v-7c3232e0]{margin-left:0}.offset-xl-1[data-v-7c3232e0]{margin-left:8.33333%}.offset-xl-2[data-v-7c3232e0]{margin-left:16.66667%}.offset-xl-3[data-v-7c3232e0]{margin-left:25%}.offset-xl-4[data-v-7c3232e0]{margin-left:33.33333%}.offset-xl-5[data-v-7c3232e0]{margin-left:41.66667%}.offset-xl-6[data-v-7c3232e0]{margin-left:50%}.offset-xl-7[data-v-7c3232e0]{margin-left:58.33333%}.offset-xl-8[data-v-7c3232e0]{margin-left:66.66667%}.offset-xl-9[data-v-7c3232e0]{margin-left:75%}.offset-xl-10[data-v-7c3232e0]{margin-left:83.33333%}.offset-xl-11[data-v-7c3232e0]{margin-left:91.66667%}}.table[data-v-7c3232e0]{width:100%;margin-bottom:1rem;color:#a79e8b}.table td[data-v-7c3232e0],.table th[data-v-7c3232e0]{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th[data-v-7c3232e0]{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody[data-v-7c3232e0]{border-top:2px solid #dee2e6}.table-sm td[data-v-7c3232e0],.table-sm th[data-v-7c3232e0]{padding:.3rem}.table-bordered[data-v-7c3232e0],.table-bordered td[data-v-7c3232e0],.table-bordered th[data-v-7c3232e0]{border:1px solid #dee2e6}.table-bordered thead td[data-v-7c3232e0],.table-bordered thead th[data-v-7c3232e0]{border-bottom-width:2px}.table-borderless tbody+tbody[data-v-7c3232e0],.table-borderless td[data-v-7c3232e0],.table-borderless th[data-v-7c3232e0],.table-borderless thead th[data-v-7c3232e0]{border:0}.table-striped tbody tr[data-v-7c3232e0]:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr[data-v-7c3232e0]:hover{color:#a79e8b;background-color:rgba(0,0,0,.075)}.table-primary>td[data-v-7c3232e0],.table-primary>th[data-v-7c3232e0],.table-primary[data-v-7c3232e0]{background-color:#c1c5ca}.table-primary tbody+tbody[data-v-7c3232e0],.table-primary td[data-v-7c3232e0],.table-primary th[data-v-7c3232e0],.table-primary thead th[data-v-7c3232e0]{border-color:#8b939c}.table-hover .table-primary:hover>td[data-v-7c3232e0],.table-hover .table-primary:hover>th[data-v-7c3232e0],.table-hover .table-primary[data-v-7c3232e0]:hover{background-color:#b3b8be}.table-secondary>td[data-v-7c3232e0],.table-secondary>th[data-v-7c3232e0],.table-secondary[data-v-7c3232e0]{background-color:#f1bbeb}.table-secondary tbody+tbody[data-v-7c3232e0],.table-secondary td[data-v-7c3232e0],.table-secondary th[data-v-7c3232e0],.table-secondary thead th[data-v-7c3232e0]{border-color:#e681da}.table-hover .table-secondary:hover>td[data-v-7c3232e0],.table-hover .table-secondary:hover>th[data-v-7c3232e0],.table-hover .table-secondary[data-v-7c3232e0]:hover{background-color:#eda6e5}.table-success>td[data-v-7c3232e0],.table-success>th[data-v-7c3232e0],.table-success[data-v-7c3232e0]{background-color:#c3e6cb}.table-success tbody+tbody[data-v-7c3232e0],.table-success td[data-v-7c3232e0],.table-success th[data-v-7c3232e0],.table-success thead th[data-v-7c3232e0]{border-color:#8fd19e}.table-hover .table-success:hover>td[data-v-7c3232e0],.table-hover .table-success:hover>th[data-v-7c3232e0],.table-hover .table-success[data-v-7c3232e0]:hover{background-color:#b1dfbb}.table-info>td[data-v-7c3232e0],.table-info>th[data-v-7c3232e0],.table-info[data-v-7c3232e0]{background-color:#bee5eb}.table-info tbody+tbody[data-v-7c3232e0],.table-info td[data-v-7c3232e0],.table-info th[data-v-7c3232e0],.table-info thead th[data-v-7c3232e0]{border-color:#86cfda}.table-hover .table-info:hover>td[data-v-7c3232e0],.table-hover .table-info:hover>th[data-v-7c3232e0],.table-hover .table-info[data-v-7c3232e0]:hover{background-color:#abdde5}.table-warning>td[data-v-7c3232e0],.table-warning>th[data-v-7c3232e0],.table-warning[data-v-7c3232e0]{background-color:#ffeeba}.table-warning tbody+tbody[data-v-7c3232e0],.table-warning td[data-v-7c3232e0],.table-warning th[data-v-7c3232e0],.table-warning thead th[data-v-7c3232e0]{border-color:#ffdf7e}.table-hover .table-warning:hover>td[data-v-7c3232e0],.table-hover .table-warning:hover>th[data-v-7c3232e0],.table-hover .table-warning[data-v-7c3232e0]:hover{background-color:#ffe8a1}.table-danger>td[data-v-7c3232e0],.table-danger>th[data-v-7c3232e0],.table-danger[data-v-7c3232e0]{background-color:#f5c6cb}.table-danger tbody+tbody[data-v-7c3232e0],.table-danger td[data-v-7c3232e0],.table-danger th[data-v-7c3232e0],.table-danger thead th[data-v-7c3232e0]{border-color:#ed969e}.table-hover .table-danger:hover>td[data-v-7c3232e0],.table-hover .table-danger:hover>th[data-v-7c3232e0],.table-hover .table-danger[data-v-7c3232e0]:hover{background-color:#f1b0b7}.table-light>td[data-v-7c3232e0],.table-light>th[data-v-7c3232e0],.table-light[data-v-7c3232e0]{background-color:#fdfdfe}.table-light tbody+tbody[data-v-7c3232e0],.table-light td[data-v-7c3232e0],.table-light th[data-v-7c3232e0],.table-light thead th[data-v-7c3232e0]{border-color:#fbfcfc}.table-hover .table-light:hover>td[data-v-7c3232e0],.table-hover .table-light:hover>th[data-v-7c3232e0],.table-hover .table-light[data-v-7c3232e0]:hover{background-color:#ececf6}.table-dark>td[data-v-7c3232e0],.table-dark>th[data-v-7c3232e0],.table-dark[data-v-7c3232e0]{background-color:#c6c8ca}.table-dark tbody+tbody[data-v-7c3232e0],.table-dark td[data-v-7c3232e0],.table-dark th[data-v-7c3232e0],.table-dark thead th[data-v-7c3232e0]{border-color:#95999c}.table-hover .table-dark:hover>td[data-v-7c3232e0],.table-hover .table-dark:hover>th[data-v-7c3232e0],.table-hover .table-dark[data-v-7c3232e0]:hover{background-color:#b9bbbe}.table-active>td[data-v-7c3232e0],.table-active>th[data-v-7c3232e0],.table-active[data-v-7c3232e0],.table-hover .table-active:hover>td[data-v-7c3232e0],.table-hover .table-active:hover>th[data-v-7c3232e0],.table-hover .table-active[data-v-7c3232e0]:hover{background-color:rgba(0,0,0,.075)}.table .thead-dark th[data-v-7c3232e0]{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th[data-v-7c3232e0]{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark[data-v-7c3232e0]{color:#fff;background-color:#343a40}.table-dark td[data-v-7c3232e0],.table-dark th[data-v-7c3232e0],.table-dark thead th[data-v-7c3232e0]{border-color:#454d55}.table-dark.table-bordered[data-v-7c3232e0]{border:0}.table-dark.table-striped tbody tr[data-v-7c3232e0]:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr[data-v-7c3232e0]:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm[data-v-7c3232e0]{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered[data-v-7c3232e0]{border:0}}@media (max-width:767.98px){.table-responsive-md[data-v-7c3232e0]{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered[data-v-7c3232e0]{border:0}}@media (max-width:991.98px){.table-responsive-lg[data-v-7c3232e0]{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered[data-v-7c3232e0]{border:0}}@media (max-width:1199.98px){.table-responsive-xl[data-v-7c3232e0]{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered[data-v-7c3232e0]{border:0}}.table-responsive[data-v-7c3232e0]{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered[data-v-7c3232e0]{border:0}.form-control[data-v-7c3232e0]{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control[data-v-7c3232e0]{transition:none}}.form-control[data-v-7c3232e0]::-ms-expand{background-color:initial;border:0}.form-control[data-v-7c3232e0]:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control[data-v-7c3232e0]:focus{color:#495057;background-color:#fff;border-color:#4b7095;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.form-control[data-v-7c3232e0]::placeholder{color:#6c757d;opacity:1}.form-control[data-v-7c3232e0]:disabled,.form-control[readonly][data-v-7c3232e0]{background-color:#e9ecef;opacity:1}input[type=date].form-control[data-v-7c3232e0],input[type=datetime-local].form-control[data-v-7c3232e0],input[type=month].form-control[data-v-7c3232e0],input[type=time].form-control[data-v-7c3232e0]{-webkit-appearance:none;appearance:none}select.form-control[data-v-7c3232e0]:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file[data-v-7c3232e0],.form-control-range[data-v-7c3232e0]{display:block;width:100%}.col-form-label[data-v-7c3232e0]{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg[data-v-7c3232e0]{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm[data-v-7c3232e0]{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext[data-v-7c3232e0]{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#a79e8b;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg[data-v-7c3232e0],.form-control-plaintext.form-control-sm[data-v-7c3232e0]{padding-right:0;padding-left:0}.form-control-sm[data-v-7c3232e0]{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg[data-v-7c3232e0]{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple][data-v-7c3232e0],select.form-control[size][data-v-7c3232e0],textarea.form-control[data-v-7c3232e0]{height:auto}.form-group[data-v-7c3232e0]{margin-bottom:1rem}.form-text[data-v-7c3232e0]{display:block;margin-top:.25rem}.form-row[data-v-7c3232e0]{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col[data-v-7c3232e0],.form-row>[class*=col-][data-v-7c3232e0]{padding-right:5px;padding-left:5px}.form-check[data-v-7c3232e0]{position:relative;display:block;padding-left:1.25rem}.form-check-input[data-v-7c3232e0]{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label[data-v-7c3232e0],.form-check-input[disabled]~.form-check-label[data-v-7c3232e0]{color:#6c757d}.form-check-label[data-v-7c3232e0]{margin-bottom:0}.form-check-inline[data-v-7c3232e0]{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input[data-v-7c3232e0]{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback[data-v-7c3232e0]{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip[data-v-7c3232e0]{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback[data-v-7c3232e0],.is-valid~.valid-tooltip[data-v-7c3232e0],.was-validated :valid~.valid-feedback[data-v-7c3232e0],.was-validated :valid~.valid-tooltip[data-v-7c3232e0]{display:block}.form-control.is-valid[data-v-7c3232e0],.was-validated .form-control[data-v-7c3232e0]:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid[data-v-7c3232e0]:focus,.was-validated .form-control[data-v-7c3232e0]:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control[data-v-7c3232e0]:valid,textarea.form-control.is-valid[data-v-7c3232e0]{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid[data-v-7c3232e0],.was-validated .custom-select[data-v-7c3232e0]:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid[data-v-7c3232e0]:focus,.was-validated .custom-select[data-v-7c3232e0]:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label[data-v-7c3232e0],.was-validated .form-check-input:valid~.form-check-label[data-v-7c3232e0]{color:#28a745}.form-check-input.is-valid~.valid-feedback[data-v-7c3232e0],.form-check-input.is-valid~.valid-tooltip[data-v-7c3232e0],.was-validated .form-check-input:valid~.valid-feedback[data-v-7c3232e0],.was-validated .form-check-input:valid~.valid-tooltip[data-v-7c3232e0]{display:block}.custom-control-input.is-valid~.custom-control-label[data-v-7c3232e0],.was-validated .custom-control-input:valid~.custom-control-label[data-v-7c3232e0]{color:#28a745}.custom-control-input.is-valid~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:valid~.custom-control-label[data-v-7c3232e0]:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:valid:checked~.custom-control-label[data-v-7c3232e0]:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:valid:focus~.custom-control-label[data-v-7c3232e0]:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label[data-v-7c3232e0]:before,.custom-file-input.is-valid~.custom-file-label[data-v-7c3232e0],.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-file-input:valid~.custom-file-label[data-v-7c3232e0]{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label[data-v-7c3232e0],.was-validated .custom-file-input:valid:focus~.custom-file-label[data-v-7c3232e0]{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback[data-v-7c3232e0]{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip[data-v-7c3232e0]{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback[data-v-7c3232e0],.is-invalid~.invalid-tooltip[data-v-7c3232e0],.was-validated :invalid~.invalid-feedback[data-v-7c3232e0],.was-validated :invalid~.invalid-tooltip[data-v-7c3232e0]{display:block}.form-control.is-invalid[data-v-7c3232e0],.was-validated .form-control[data-v-7c3232e0]:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid[data-v-7c3232e0]:focus,.was-validated .form-control[data-v-7c3232e0]:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control[data-v-7c3232e0]:invalid,textarea.form-control.is-invalid[data-v-7c3232e0]{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid[data-v-7c3232e0],.was-validated .custom-select[data-v-7c3232e0]:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid[data-v-7c3232e0]:focus,.was-validated .custom-select[data-v-7c3232e0]:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label[data-v-7c3232e0],.was-validated .form-check-input:invalid~.form-check-label[data-v-7c3232e0]{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback[data-v-7c3232e0],.form-check-input.is-invalid~.invalid-tooltip[data-v-7c3232e0],.was-validated .form-check-input:invalid~.invalid-feedback[data-v-7c3232e0],.was-validated .form-check-input:invalid~.invalid-tooltip[data-v-7c3232e0]{display:block}.custom-control-input.is-invalid~.custom-control-label[data-v-7c3232e0],.was-validated .custom-control-input:invalid~.custom-control-label[data-v-7c3232e0]{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:invalid~.custom-control-label[data-v-7c3232e0]:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label[data-v-7c3232e0]:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label[data-v-7c3232e0]:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label[data-v-7c3232e0]:before,.custom-file-input.is-invalid~.custom-file-label[data-v-7c3232e0],.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-file-input:invalid~.custom-file-label[data-v-7c3232e0]{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label[data-v-7c3232e0],.was-validated .custom-file-input:invalid:focus~.custom-file-label[data-v-7c3232e0]{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline[data-v-7c3232e0]{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check[data-v-7c3232e0]{width:100%}@media (min-width:576px){.form-inline label[data-v-7c3232e0]{display:flex;align-items:center;justify-content:center;margin-bottom:0}.form-inline .form-group[data-v-7c3232e0]{display:flex;flex:0 0 auto;flex-flow:row wrap;align-items:center;margin-bottom:0}.form-inline .form-control[data-v-7c3232e0]{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext[data-v-7c3232e0]{display:inline-block}.form-inline .custom-select[data-v-7c3232e0],.form-inline .input-group[data-v-7c3232e0]{width:auto}.form-inline .form-check[data-v-7c3232e0]{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input[data-v-7c3232e0]{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control[data-v-7c3232e0]{align-items:center;justify-content:center}.form-inline .custom-control-label[data-v-7c3232e0]{margin-bottom:0}}.btn[data-v-7c3232e0]{display:inline-block;font-weight:400;text-align:center;vertical-align:middle;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn[data-v-7c3232e0]{transition:none}}.btn[data-v-7c3232e0]:hover{color:#a79e8b;text-decoration:none}.btn.focus[data-v-7c3232e0],.btn[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.btn.disabled[data-v-7c3232e0],.btn[data-v-7c3232e0]:disabled{opacity:.65}.btn[data-v-7c3232e0]:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled[data-v-7c3232e0],fieldset:disabled a.btn[data-v-7c3232e0]{pointer-events:none}.btn-primary[data-v-7c3232e0]{color:#fff;background-color:#203040;border-color:#203040}.btn-primary[data-v-7c3232e0]:hover{color:#fff;background-color:#131d27;border-color:#0f171e}.btn-primary.focus[data-v-7c3232e0],.btn-primary[data-v-7c3232e0]:focus{color:#fff;background-color:#131d27;border-color:#0f171e;box-shadow:0 0 0 .2rem rgba(65,79,93,.5)}.btn-primary.disabled[data-v-7c3232e0],.btn-primary[data-v-7c3232e0]:disabled{color:#fff;background-color:#203040;border-color:#203040}.btn-primary:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-primary[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#0f171e;border-color:#0b1016}.btn-primary:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-primary[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(65,79,93,.5)}.btn-secondary[data-v-7c3232e0]{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-secondary[data-v-7c3232e0]:hover{color:#fff;background-color:#aa0a97;border-color:#9e098c}.btn-secondary.focus[data-v-7c3232e0],.btn-secondary[data-v-7c3232e0]:focus{color:#fff;background-color:#aa0a97;border-color:#9e098c;box-shadow:0 0 0 .2rem rgba(213,48,194,.5)}.btn-secondary.disabled[data-v-7c3232e0],.btn-secondary[data-v-7c3232e0]:disabled{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-secondary:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-secondary[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#9e098c;border-color:#920881}.btn-secondary:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-secondary[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(213,48,194,.5)}.btn-success[data-v-7c3232e0]{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success[data-v-7c3232e0]:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus[data-v-7c3232e0],.btn-success[data-v-7c3232e0]:focus{color:#fff;background-color:#218838;border-color:#1e7e34;box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled[data-v-7c3232e0],.btn-success[data-v-7c3232e0]:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-success[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-success[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info[data-v-7c3232e0]{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info[data-v-7c3232e0]:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus[data-v-7c3232e0],.btn-info[data-v-7c3232e0]:focus{color:#fff;background-color:#138496;border-color:#117a8b;box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled[data-v-7c3232e0],.btn-info[data-v-7c3232e0]:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-info[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-info[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning[data-v-7c3232e0]{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning[data-v-7c3232e0]:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus[data-v-7c3232e0],.btn-warning[data-v-7c3232e0]:focus{color:#212529;background-color:#e0a800;border-color:#d39e00;box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled[data-v-7c3232e0],.btn-warning[data-v-7c3232e0]:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-warning[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle[data-v-7c3232e0]{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-warning[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger[data-v-7c3232e0]{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger[data-v-7c3232e0]:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus[data-v-7c3232e0],.btn-danger[data-v-7c3232e0]:focus{color:#fff;background-color:#c82333;border-color:#bd2130;box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled[data-v-7c3232e0],.btn-danger[data-v-7c3232e0]:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-danger[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-danger[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light[data-v-7c3232e0]{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light[data-v-7c3232e0]:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus[data-v-7c3232e0],.btn-light[data-v-7c3232e0]:focus{color:#212529;background-color:#e2e6ea;border-color:#dae0e5;box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled[data-v-7c3232e0],.btn-light[data-v-7c3232e0]:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-light[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle[data-v-7c3232e0]{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-light[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark[data-v-7c3232e0]{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark[data-v-7c3232e0]:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus[data-v-7c3232e0],.btn-dark[data-v-7c3232e0]:focus{color:#fff;background-color:#23272b;border-color:#1d2124;box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled[data-v-7c3232e0],.btn-dark[data-v-7c3232e0]:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-dark[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-dark[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary[data-v-7c3232e0]{color:#203040;border-color:#203040}.btn-outline-primary[data-v-7c3232e0]:hover{color:#fff;background-color:#203040;border-color:#203040}.btn-outline-primary.focus[data-v-7c3232e0],.btn-outline-primary[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.btn-outline-primary.disabled[data-v-7c3232e0],.btn-outline-primary[data-v-7c3232e0]:disabled{color:#203040;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-primary[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#203040;border-color:#203040}.btn-outline-primary:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-primary[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.btn-outline-secondary[data-v-7c3232e0]{color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary[data-v-7c3232e0]:hover{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary.focus[data-v-7c3232e0],.btn-outline-secondary[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.btn-outline-secondary.disabled[data-v-7c3232e0],.btn-outline-secondary[data-v-7c3232e0]:disabled{color:#ce0cb7;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-secondary[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-secondary[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.btn-outline-success[data-v-7c3232e0]{color:#28a745;border-color:#28a745}.btn-outline-success[data-v-7c3232e0]:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus[data-v-7c3232e0],.btn-outline-success[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled[data-v-7c3232e0],.btn-outline-success[data-v-7c3232e0]:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-success[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-success[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info[data-v-7c3232e0]{color:#17a2b8;border-color:#17a2b8}.btn-outline-info[data-v-7c3232e0]:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus[data-v-7c3232e0],.btn-outline-info[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled[data-v-7c3232e0],.btn-outline-info[data-v-7c3232e0]:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-info[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-info[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning[data-v-7c3232e0]{color:#ffc107;border-color:#ffc107}.btn-outline-warning[data-v-7c3232e0]:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus[data-v-7c3232e0],.btn-outline-warning[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled[data-v-7c3232e0],.btn-outline-warning[data-v-7c3232e0]:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-warning[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle[data-v-7c3232e0]{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-warning[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger[data-v-7c3232e0]{color:#dc3545;border-color:#dc3545}.btn-outline-danger[data-v-7c3232e0]:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus[data-v-7c3232e0],.btn-outline-danger[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled[data-v-7c3232e0],.btn-outline-danger[data-v-7c3232e0]:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-danger[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-danger[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light[data-v-7c3232e0]{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light[data-v-7c3232e0]:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus[data-v-7c3232e0],.btn-outline-light[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled[data-v-7c3232e0],.btn-outline-light[data-v-7c3232e0]:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-light[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle[data-v-7c3232e0]{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-light[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark[data-v-7c3232e0]{color:#343a40;border-color:#343a40}.btn-outline-dark[data-v-7c3232e0]:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus[data-v-7c3232e0],.btn-outline-dark[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled[data-v-7c3232e0],.btn-outline-dark[data-v-7c3232e0]:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-dark[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-dark[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link[data-v-7c3232e0]{font-weight:400;color:#80b6cc;text-decoration:none}.btn-link[data-v-7c3232e0]:hover{color:#4997b6;text-decoration:underline}.btn-link.focus[data-v-7c3232e0],.btn-link[data-v-7c3232e0]:focus{text-decoration:underline}.btn-link.disabled[data-v-7c3232e0],.btn-link[data-v-7c3232e0]:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn[data-v-7c3232e0],.btn-lg[data-v-7c3232e0]{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn[data-v-7c3232e0],.btn-sm[data-v-7c3232e0]{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block[data-v-7c3232e0]{display:block;width:100%}.btn-block+.btn-block[data-v-7c3232e0]{margin-top:.5rem}input[type=button].btn-block[data-v-7c3232e0],input[type=reset].btn-block[data-v-7c3232e0],input[type=submit].btn-block[data-v-7c3232e0]{width:100%}.fade[data-v-7c3232e0]{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade[data-v-7c3232e0]{transition:none}}.fade[data-v-7c3232e0]:not(.show){opacity:0}.collapse[data-v-7c3232e0]:not(.show){display:none}.collapsing[data-v-7c3232e0]{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing[data-v-7c3232e0]{transition:none}}.dropdown[data-v-7c3232e0],.dropleft[data-v-7c3232e0],.dropright[data-v-7c3232e0],.dropup[data-v-7c3232e0]{position:relative}.dropdown-toggle[data-v-7c3232e0]{white-space:nowrap}.dropdown-toggle[data-v-7c3232e0]:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle[data-v-7c3232e0]:empty:after{margin-left:0}.dropdown-menu[data-v-7c3232e0]{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#a79e8b;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left[data-v-7c3232e0]{right:auto;left:0}.dropdown-menu-right[data-v-7c3232e0]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left[data-v-7c3232e0]{right:auto;left:0}.dropdown-menu-sm-right[data-v-7c3232e0]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left[data-v-7c3232e0]{right:auto;left:0}.dropdown-menu-md-right[data-v-7c3232e0]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left[data-v-7c3232e0]{right:auto;left:0}.dropdown-menu-lg-right[data-v-7c3232e0]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left[data-v-7c3232e0]{right:auto;left:0}.dropdown-menu-xl-right[data-v-7c3232e0]{right:0;left:auto}}.dropup .dropdown-menu[data-v-7c3232e0]{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle[data-v-7c3232e0]:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle[data-v-7c3232e0]:empty:after{margin-left:0}.dropright .dropdown-menu[data-v-7c3232e0]{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle[data-v-7c3232e0]:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle[data-v-7c3232e0]:empty:after{margin-left:0}.dropright .dropdown-toggle[data-v-7c3232e0]:after{vertical-align:0}.dropleft .dropdown-menu[data-v-7c3232e0]{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle[data-v-7c3232e0]:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle[data-v-7c3232e0]:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle[data-v-7c3232e0]:empty:after{margin-left:0}.dropleft .dropdown-toggle[data-v-7c3232e0]:before{vertical-align:0}.dropdown-menu[x-placement^=bottom][data-v-7c3232e0],.dropdown-menu[x-placement^=left][data-v-7c3232e0],.dropdown-menu[x-placement^=right][data-v-7c3232e0],.dropdown-menu[x-placement^=top][data-v-7c3232e0]{right:auto;bottom:auto}.dropdown-divider[data-v-7c3232e0]{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item[data-v-7c3232e0]{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item[data-v-7c3232e0]:focus,.dropdown-item[data-v-7c3232e0]:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active[data-v-7c3232e0],.dropdown-item[data-v-7c3232e0]:active{color:#fff;text-decoration:none;background-color:#203040}.dropdown-item.disabled[data-v-7c3232e0],.dropdown-item[data-v-7c3232e0]:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show[data-v-7c3232e0]{display:block}.dropdown-header[data-v-7c3232e0]{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text[data-v-7c3232e0]{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group-vertical[data-v-7c3232e0],.btn-group[data-v-7c3232e0]{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn[data-v-7c3232e0],.btn-group>.btn[data-v-7c3232e0]{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active[data-v-7c3232e0],.btn-group-vertical>.btn[data-v-7c3232e0]:active,.btn-group-vertical>.btn[data-v-7c3232e0]:focus,.btn-group-vertical>.btn[data-v-7c3232e0]:hover,.btn-group>.btn.active[data-v-7c3232e0],.btn-group>.btn[data-v-7c3232e0]:active,.btn-group>.btn[data-v-7c3232e0]:focus,.btn-group>.btn[data-v-7c3232e0]:hover{z-index:1}.btn-toolbar[data-v-7c3232e0]{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group[data-v-7c3232e0]{width:auto}.btn-group>.btn-group[data-v-7c3232e0]:not(:first-child),.btn-group>.btn[data-v-7c3232e0]:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn[data-v-7c3232e0],.btn-group>.btn[data-v-7c3232e0]:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn[data-v-7c3232e0],.btn-group>.btn[data-v-7c3232e0]:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split[data-v-7c3232e0]{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split[data-v-7c3232e0]:after,.dropright .dropdown-toggle-split[data-v-7c3232e0]:after,.dropup .dropdown-toggle-split[data-v-7c3232e0]:after{margin-left:0}.dropleft .dropdown-toggle-split[data-v-7c3232e0]:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split[data-v-7c3232e0],.btn-sm+.dropdown-toggle-split[data-v-7c3232e0]{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split[data-v-7c3232e0],.btn-lg+.dropdown-toggle-split[data-v-7c3232e0]{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical[data-v-7c3232e0]{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn-group[data-v-7c3232e0],.btn-group-vertical>.btn[data-v-7c3232e0]{width:100%}.btn-group-vertical>.btn-group[data-v-7c3232e0]:not(:first-child),.btn-group-vertical>.btn[data-v-7c3232e0]:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn[data-v-7c3232e0],.btn-group-vertical>.btn[data-v-7c3232e0]:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn[data-v-7c3232e0],.btn-group-vertical>.btn[data-v-7c3232e0]:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn-group>.btn[data-v-7c3232e0],.btn-group-toggle>.btn[data-v-7c3232e0]{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox][data-v-7c3232e0],.btn-group-toggle>.btn-group>.btn input[type=radio][data-v-7c3232e0],.btn-group-toggle>.btn input[type=checkbox][data-v-7c3232e0],.btn-group-toggle>.btn input[type=radio][data-v-7c3232e0]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group[data-v-7c3232e0]{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file[data-v-7c3232e0],.input-group>.custom-select[data-v-7c3232e0],.input-group>.form-control-plaintext[data-v-7c3232e0],.input-group>.form-control[data-v-7c3232e0]{position:relative;flex:1 1 auto;width:1%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file[data-v-7c3232e0],.input-group>.custom-file+.custom-select[data-v-7c3232e0],.input-group>.custom-file+.form-control[data-v-7c3232e0],.input-group>.custom-select+.custom-file[data-v-7c3232e0],.input-group>.custom-select+.custom-select[data-v-7c3232e0],.input-group>.custom-select+.form-control[data-v-7c3232e0],.input-group>.form-control+.custom-file[data-v-7c3232e0],.input-group>.form-control+.custom-select[data-v-7c3232e0],.input-group>.form-control+.form-control[data-v-7c3232e0],.input-group>.form-control-plaintext+.custom-file[data-v-7c3232e0],.input-group>.form-control-plaintext+.custom-select[data-v-7c3232e0],.input-group>.form-control-plaintext+.form-control[data-v-7c3232e0]{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label[data-v-7c3232e0],.input-group>.custom-select[data-v-7c3232e0]:focus,.input-group>.form-control[data-v-7c3232e0]:focus{z-index:3}.input-group>.custom-file .custom-file-input[data-v-7c3232e0]:focus{z-index:4}.input-group>.custom-select[data-v-7c3232e0]:not(:last-child),.input-group>.form-control[data-v-7c3232e0]:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select[data-v-7c3232e0]:not(:first-child),.input-group>.form-control[data-v-7c3232e0]:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file[data-v-7c3232e0]{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label[data-v-7c3232e0],.input-group>.custom-file:not(:last-child) .custom-file-label[data-v-7c3232e0]:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label[data-v-7c3232e0]{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append[data-v-7c3232e0],.input-group-prepend[data-v-7c3232e0]{display:flex}.input-group-append .btn[data-v-7c3232e0],.input-group-prepend .btn[data-v-7c3232e0]{position:relative;z-index:2}.input-group-append .btn[data-v-7c3232e0]:focus,.input-group-prepend .btn[data-v-7c3232e0]:focus{z-index:3}.input-group-append .btn+.btn[data-v-7c3232e0],.input-group-append .btn+.input-group-text[data-v-7c3232e0],.input-group-append .input-group-text+.btn[data-v-7c3232e0],.input-group-append .input-group-text+.input-group-text[data-v-7c3232e0],.input-group-prepend .btn+.btn[data-v-7c3232e0],.input-group-prepend .btn+.input-group-text[data-v-7c3232e0],.input-group-prepend .input-group-text+.btn[data-v-7c3232e0],.input-group-prepend .input-group-text+.input-group-text[data-v-7c3232e0]{margin-left:-1px}.input-group-prepend[data-v-7c3232e0]{margin-right:-1px}.input-group-append[data-v-7c3232e0]{margin-left:-1px}.input-group-text[data-v-7c3232e0]{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox][data-v-7c3232e0],.input-group-text input[type=radio][data-v-7c3232e0]{margin-top:0}.input-group-lg>.custom-select[data-v-7c3232e0],.input-group-lg>.form-control[data-v-7c3232e0]:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select[data-v-7c3232e0],.input-group-lg>.form-control[data-v-7c3232e0],.input-group-lg>.input-group-append>.btn[data-v-7c3232e0],.input-group-lg>.input-group-append>.input-group-text[data-v-7c3232e0],.input-group-lg>.input-group-prepend>.btn[data-v-7c3232e0],.input-group-lg>.input-group-prepend>.input-group-text[data-v-7c3232e0]{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select[data-v-7c3232e0],.input-group-sm>.form-control[data-v-7c3232e0]:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select[data-v-7c3232e0],.input-group-sm>.form-control[data-v-7c3232e0],.input-group-sm>.input-group-append>.btn[data-v-7c3232e0],.input-group-sm>.input-group-append>.input-group-text[data-v-7c3232e0],.input-group-sm>.input-group-prepend>.btn[data-v-7c3232e0],.input-group-sm>.input-group-prepend>.input-group-text[data-v-7c3232e0]{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select[data-v-7c3232e0],.input-group-sm>.custom-select[data-v-7c3232e0]{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn[data-v-7c3232e0]:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text[data-v-7c3232e0]:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn[data-v-7c3232e0],.input-group>.input-group-append:not(:last-child)>.input-group-text[data-v-7c3232e0],.input-group>.input-group-prepend>.btn[data-v-7c3232e0],.input-group>.input-group-prepend>.input-group-text[data-v-7c3232e0]{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn[data-v-7c3232e0],.input-group>.input-group-append>.input-group-text[data-v-7c3232e0],.input-group>.input-group-prepend:first-child>.btn[data-v-7c3232e0]:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text[data-v-7c3232e0]:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn[data-v-7c3232e0],.input-group>.input-group-prepend:not(:first-child)>.input-group-text[data-v-7c3232e0]{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control[data-v-7c3232e0]{position:relative;z-index:1;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline[data-v-7c3232e0]{display:inline-flex;margin-right:1rem}.custom-control-input[data-v-7c3232e0]{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label[data-v-7c3232e0]:before{color:#fff;border-color:#203040;background-color:#203040}.custom-control-input:focus~.custom-control-label[data-v-7c3232e0]:before{box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label[data-v-7c3232e0]:before{border-color:#4b7095}.custom-control-input:not(:disabled):active~.custom-control-label[data-v-7c3232e0]:before{color:#fff;background-color:#6289b1;border-color:#6289b1}.custom-control-input:disabled~.custom-control-label[data-v-7c3232e0],.custom-control-input[disabled]~.custom-control-label[data-v-7c3232e0]{color:#6c757d}.custom-control-input:disabled~.custom-control-label[data-v-7c3232e0]:before,.custom-control-input[disabled]~.custom-control-label[data-v-7c3232e0]:before{background-color:#e9ecef}.custom-control-label[data-v-7c3232e0]{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label[data-v-7c3232e0]:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fff;border:1px solid #adb5bd}.custom-control-label[data-v-7c3232e0]:after{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label[data-v-7c3232e0]:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label[data-v-7c3232e0]:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label[data-v-7c3232e0]:before{border-color:#203040;background-color:#203040}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label[data-v-7c3232e0]:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label[data-v-7c3232e0]:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label[data-v-7c3232e0]:before{background-color:rgba(32,48,64,.5)}.custom-radio .custom-control-label[data-v-7c3232e0]:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label[data-v-7c3232e0]:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label[data-v-7c3232e0]:before{background-color:rgba(32,48,64,.5)}.custom-switch[data-v-7c3232e0]{padding-left:2.25rem}.custom-switch .custom-control-label[data-v-7c3232e0]:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label[data-v-7c3232e0]:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label[data-v-7c3232e0]:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label[data-v-7c3232e0]:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label[data-v-7c3232e0]:before{background-color:rgba(32,48,64,.5)}.custom-select[data-v-7c3232e0]{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;appearance:none}.custom-select[data-v-7c3232e0]:focus{border-color:#4b7095;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-select[data-v-7c3232e0]:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple][data-v-7c3232e0],.custom-select[size][data-v-7c3232e0]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select[data-v-7c3232e0]:disabled{color:#6c757d;background-color:#e9ecef}.custom-select[data-v-7c3232e0]::-ms-expand{display:none}.custom-select[data-v-7c3232e0]:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm[data-v-7c3232e0]{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg[data-v-7c3232e0]{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file[data-v-7c3232e0]{position:relative;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);margin-bottom:0}.custom-file-input[data-v-7c3232e0]{position:relative;z-index:2;width:100%;height:calc(1.5em + .75rem + 2px);margin:0;opacity:0}.custom-file-input:focus~.custom-file-label[data-v-7c3232e0]{border-color:#4b7095;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-file-input:disabled~.custom-file-label[data-v-7c3232e0],.custom-file-input[disabled]~.custom-file-label[data-v-7c3232e0]{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label[data-v-7c3232e0]:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse][data-v-7c3232e0]:after{content:attr(data-browse)}.custom-file-label[data-v-7c3232e0]{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label[data-v-7c3232e0],.custom-file-label[data-v-7c3232e0]:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label[data-v-7c3232e0]:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range[data-v-7c3232e0]{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;appearance:none}.custom-range[data-v-7c3232e0]:focus{outline:none}.custom-range[data-v-7c3232e0]:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range[data-v-7c3232e0]:focus::-moz-range-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range[data-v-7c3232e0]:focus::-ms-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range[data-v-7c3232e0]::-moz-focus-outer{border:0}.custom-range[data-v-7c3232e0]::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#203040;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range[data-v-7c3232e0]::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range[data-v-7c3232e0]::-webkit-slider-thumb:active{background-color:#6289b1}.custom-range[data-v-7c3232e0]::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range[data-v-7c3232e0]::-moz-range-thumb{width:1rem;height:1rem;background-color:#203040;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range[data-v-7c3232e0]::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range[data-v-7c3232e0]::-moz-range-thumb:active{background-color:#6289b1}.custom-range[data-v-7c3232e0]::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range[data-v-7c3232e0]::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#203040;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range[data-v-7c3232e0]::-ms-thumb{-ms-transition:none;transition:none}}.custom-range[data-v-7c3232e0]::-ms-thumb:active{background-color:#6289b1}.custom-range[data-v-7c3232e0]::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range[data-v-7c3232e0]::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range[data-v-7c3232e0]::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range[data-v-7c3232e0]:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range[data-v-7c3232e0]:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range[data-v-7c3232e0]:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range[data-v-7c3232e0]:disabled::-moz-range-track{cursor:default}.custom-range[data-v-7c3232e0]:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label[data-v-7c3232e0]:before,.custom-file-label[data-v-7c3232e0],.custom-select[data-v-7c3232e0]{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label[data-v-7c3232e0]:before,.custom-file-label[data-v-7c3232e0],.custom-select[data-v-7c3232e0]{transition:none}}.nav[data-v-7c3232e0]{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link[data-v-7c3232e0]{display:block;padding:.5rem 1rem}.nav-link[data-v-7c3232e0]:focus,.nav-link[data-v-7c3232e0]:hover{text-decoration:none}.nav-link.disabled[data-v-7c3232e0]{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs[data-v-7c3232e0]{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item[data-v-7c3232e0]{margin-bottom:-1px}.nav-tabs .nav-link[data-v-7c3232e0]{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link[data-v-7c3232e0]:focus,.nav-tabs .nav-link[data-v-7c3232e0]:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled[data-v-7c3232e0]{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link[data-v-7c3232e0],.nav-tabs .nav-link.active[data-v-7c3232e0]{color:#495057;background-color:#101417;border-color:#dee2e6 #dee2e6 #101417}.nav-tabs .dropdown-menu[data-v-7c3232e0]{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link[data-v-7c3232e0]{border-radius:.25rem}.nav-pills .nav-link.active[data-v-7c3232e0],.nav-pills .show>.nav-link[data-v-7c3232e0]{color:#fff;background-color:#203040}.nav-fill .nav-item[data-v-7c3232e0],.nav-fill>.nav-link[data-v-7c3232e0]{flex:1 1 auto;text-align:center}.nav-justified .nav-item[data-v-7c3232e0],.nav-justified>.nav-link[data-v-7c3232e0]{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane[data-v-7c3232e0]{display:none}.tab-content>.active[data-v-7c3232e0]{display:block}.navbar[data-v-7c3232e0]{position:relative;padding:.5rem 1rem}.navbar .container-fluid[data-v-7c3232e0],.navbar .container-lg[data-v-7c3232e0],.navbar .container-md[data-v-7c3232e0],.navbar .container-sm[data-v-7c3232e0],.navbar .container-xl[data-v-7c3232e0],.navbar .container[data-v-7c3232e0],.navbar[data-v-7c3232e0]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand[data-v-7c3232e0]{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand[data-v-7c3232e0]:focus,.navbar-brand[data-v-7c3232e0]:hover{text-decoration:none}.navbar-nav[data-v-7c3232e0]{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link[data-v-7c3232e0]{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu[data-v-7c3232e0]{position:static;float:none}.navbar-text[data-v-7c3232e0]{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse[data-v-7c3232e0]{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler[data-v-7c3232e0]{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler[data-v-7c3232e0]:focus,.navbar-toggler[data-v-7c3232e0]:hover{text-decoration:none}.navbar-toggler-icon[data-v-7c3232e0]{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container-fluid[data-v-7c3232e0],.navbar-expand-sm>.container-lg[data-v-7c3232e0],.navbar-expand-sm>.container-md[data-v-7c3232e0],.navbar-expand-sm>.container-sm[data-v-7c3232e0],.navbar-expand-sm>.container-xl[data-v-7c3232e0],.navbar-expand-sm>.container[data-v-7c3232e0]{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm[data-v-7c3232e0]{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav[data-v-7c3232e0]{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu[data-v-7c3232e0]{position:absolute}.navbar-expand-sm .navbar-nav .nav-link[data-v-7c3232e0]{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container-fluid[data-v-7c3232e0],.navbar-expand-sm>.container-lg[data-v-7c3232e0],.navbar-expand-sm>.container-md[data-v-7c3232e0],.navbar-expand-sm>.container-sm[data-v-7c3232e0],.navbar-expand-sm>.container-xl[data-v-7c3232e0],.navbar-expand-sm>.container[data-v-7c3232e0]{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse[data-v-7c3232e0]{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler[data-v-7c3232e0]{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container-fluid[data-v-7c3232e0],.navbar-expand-md>.container-lg[data-v-7c3232e0],.navbar-expand-md>.container-md[data-v-7c3232e0],.navbar-expand-md>.container-sm[data-v-7c3232e0],.navbar-expand-md>.container-xl[data-v-7c3232e0],.navbar-expand-md>.container[data-v-7c3232e0]{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md[data-v-7c3232e0]{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav[data-v-7c3232e0]{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu[data-v-7c3232e0]{position:absolute}.navbar-expand-md .navbar-nav .nav-link[data-v-7c3232e0]{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container-fluid[data-v-7c3232e0],.navbar-expand-md>.container-lg[data-v-7c3232e0],.navbar-expand-md>.container-md[data-v-7c3232e0],.navbar-expand-md>.container-sm[data-v-7c3232e0],.navbar-expand-md>.container-xl[data-v-7c3232e0],.navbar-expand-md>.container[data-v-7c3232e0]{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse[data-v-7c3232e0]{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler[data-v-7c3232e0]{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container-fluid[data-v-7c3232e0],.navbar-expand-lg>.container-lg[data-v-7c3232e0],.navbar-expand-lg>.container-md[data-v-7c3232e0],.navbar-expand-lg>.container-sm[data-v-7c3232e0],.navbar-expand-lg>.container-xl[data-v-7c3232e0],.navbar-expand-lg>.container[data-v-7c3232e0]{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg[data-v-7c3232e0]{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav[data-v-7c3232e0]{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu[data-v-7c3232e0]{position:absolute}.navbar-expand-lg .navbar-nav .nav-link[data-v-7c3232e0]{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container-fluid[data-v-7c3232e0],.navbar-expand-lg>.container-lg[data-v-7c3232e0],.navbar-expand-lg>.container-md[data-v-7c3232e0],.navbar-expand-lg>.container-sm[data-v-7c3232e0],.navbar-expand-lg>.container-xl[data-v-7c3232e0],.navbar-expand-lg>.container[data-v-7c3232e0]{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse[data-v-7c3232e0]{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler[data-v-7c3232e0]{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container-fluid[data-v-7c3232e0],.navbar-expand-xl>.container-lg[data-v-7c3232e0],.navbar-expand-xl>.container-md[data-v-7c3232e0],.navbar-expand-xl>.container-sm[data-v-7c3232e0],.navbar-expand-xl>.container-xl[data-v-7c3232e0],.navbar-expand-xl>.container[data-v-7c3232e0]{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl[data-v-7c3232e0]{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav[data-v-7c3232e0]{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu[data-v-7c3232e0]{position:absolute}.navbar-expand-xl .navbar-nav .nav-link[data-v-7c3232e0]{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container-fluid[data-v-7c3232e0],.navbar-expand-xl>.container-lg[data-v-7c3232e0],.navbar-expand-xl>.container-md[data-v-7c3232e0],.navbar-expand-xl>.container-sm[data-v-7c3232e0],.navbar-expand-xl>.container-xl[data-v-7c3232e0],.navbar-expand-xl>.container[data-v-7c3232e0]{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse[data-v-7c3232e0]{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler[data-v-7c3232e0]{display:none}}.navbar-expand[data-v-7c3232e0]{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container-fluid[data-v-7c3232e0],.navbar-expand>.container-lg[data-v-7c3232e0],.navbar-expand>.container-md[data-v-7c3232e0],.navbar-expand>.container-sm[data-v-7c3232e0],.navbar-expand>.container-xl[data-v-7c3232e0],.navbar-expand>.container[data-v-7c3232e0]{padding-right:0;padding-left:0}.navbar-expand .navbar-nav[data-v-7c3232e0]{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu[data-v-7c3232e0]{position:absolute}.navbar-expand .navbar-nav .nav-link[data-v-7c3232e0]{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container-fluid[data-v-7c3232e0],.navbar-expand>.container-lg[data-v-7c3232e0],.navbar-expand>.container-md[data-v-7c3232e0],.navbar-expand>.container-sm[data-v-7c3232e0],.navbar-expand>.container-xl[data-v-7c3232e0],.navbar-expand>.container[data-v-7c3232e0]{flex-wrap:nowrap}.navbar-expand .navbar-collapse[data-v-7c3232e0]{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler[data-v-7c3232e0]{display:none}.navbar-light .navbar-brand[data-v-7c3232e0],.navbar-light .navbar-brand[data-v-7c3232e0]:focus,.navbar-light .navbar-brand[data-v-7c3232e0]:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link[data-v-7c3232e0]{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link[data-v-7c3232e0]:focus,.navbar-light .navbar-nav .nav-link[data-v-7c3232e0]:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled[data-v-7c3232e0]{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link[data-v-7c3232e0],.navbar-light .navbar-nav .nav-link.active[data-v-7c3232e0],.navbar-light .navbar-nav .nav-link.show[data-v-7c3232e0],.navbar-light .navbar-nav .show>.nav-link[data-v-7c3232e0]{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler[data-v-7c3232e0]{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon[data-v-7c3232e0]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text[data-v-7c3232e0]{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a[data-v-7c3232e0],.navbar-light .navbar-text a[data-v-7c3232e0]:focus,.navbar-light .navbar-text a[data-v-7c3232e0]:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand[data-v-7c3232e0],.navbar-dark .navbar-brand[data-v-7c3232e0]:focus,.navbar-dark .navbar-brand[data-v-7c3232e0]:hover{color:#fff}.navbar-dark .navbar-nav .nav-link[data-v-7c3232e0]{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link[data-v-7c3232e0]:focus,.navbar-dark .navbar-nav .nav-link[data-v-7c3232e0]:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled[data-v-7c3232e0]{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link[data-v-7c3232e0],.navbar-dark .navbar-nav .nav-link.active[data-v-7c3232e0],.navbar-dark .navbar-nav .nav-link.show[data-v-7c3232e0],.navbar-dark .navbar-nav .show>.nav-link[data-v-7c3232e0]{color:#fff}.navbar-dark .navbar-toggler[data-v-7c3232e0]{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon[data-v-7c3232e0]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text[data-v-7c3232e0]{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a[data-v-7c3232e0],.navbar-dark .navbar-text a[data-v-7c3232e0]:focus,.navbar-dark .navbar-text a[data-v-7c3232e0]:hover{color:#fff}.card[data-v-7c3232e0]{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr[data-v-7c3232e0]{margin-right:0;margin-left:0}.card>.list-group[data-v-7c3232e0]{border-top:inherit;border-bottom:inherit}.card>.list-group[data-v-7c3232e0]:first-child{border-top-width:0;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card>.list-group[data-v-7c3232e0]:last-child{border-bottom-width:0;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card>.card-header+.list-group[data-v-7c3232e0],.card>.list-group+.card-footer[data-v-7c3232e0]{border-top:0}.card-body[data-v-7c3232e0]{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title[data-v-7c3232e0]{margin-bottom:.75rem}.card-subtitle[data-v-7c3232e0]{margin-top:-.375rem;margin-bottom:0}.card-text[data-v-7c3232e0]:last-child{margin-bottom:0}.card-link[data-v-7c3232e0]:hover{text-decoration:none}.card-link+.card-link[data-v-7c3232e0]{margin-left:1.25rem}.card-header[data-v-7c3232e0]{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header[data-v-7c3232e0]:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer[data-v-7c3232e0]{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer[data-v-7c3232e0]:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs[data-v-7c3232e0]{margin-bottom:-.75rem;border-bottom:0}.card-header-pills[data-v-7c3232e0],.card-header-tabs[data-v-7c3232e0]{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay[data-v-7c3232e0]{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem;border-radius:calc(.25rem - 1px)}.card-img-bottom[data-v-7c3232e0],.card-img-top[data-v-7c3232e0],.card-img[data-v-7c3232e0]{flex-shrink:0;width:100%}.card-img-top[data-v-7c3232e0],.card-img[data-v-7c3232e0]{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img-bottom[data-v-7c3232e0],.card-img[data-v-7c3232e0]{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card[data-v-7c3232e0]{margin-bottom:15px}@media (min-width:576px){.card-deck[data-v-7c3232e0]{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card[data-v-7c3232e0]{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card[data-v-7c3232e0]{margin-bottom:15px}@media (min-width:576px){.card-group[data-v-7c3232e0]{display:flex;flex-flow:row wrap}.card-group>.card[data-v-7c3232e0]{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card[data-v-7c3232e0]{margin-left:0;border-left:0}.card-group>.card[data-v-7c3232e0]:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header[data-v-7c3232e0],.card-group>.card:not(:last-child) .card-img-top[data-v-7c3232e0]{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer[data-v-7c3232e0],.card-group>.card:not(:last-child) .card-img-bottom[data-v-7c3232e0]{border-bottom-right-radius:0}.card-group>.card[data-v-7c3232e0]:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header[data-v-7c3232e0],.card-group>.card:not(:first-child) .card-img-top[data-v-7c3232e0]{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer[data-v-7c3232e0],.card-group>.card:not(:first-child) .card-img-bottom[data-v-7c3232e0]{border-bottom-left-radius:0}}.card-columns .card[data-v-7c3232e0]{margin-bottom:.75rem}@media (min-width:576px){.card-columns[data-v-7c3232e0]{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card[data-v-7c3232e0]{display:inline-block;width:100%}}.accordion[data-v-7c3232e0]{overflow-anchor:none}.accordion>.card[data-v-7c3232e0]{overflow:hidden}.accordion>.card[data-v-7c3232e0]:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card[data-v-7c3232e0]:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header[data-v-7c3232e0]{border-radius:0;margin-bottom:-1px}.breadcrumb[data-v-7c3232e0]{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item[data-v-7c3232e0]{display:flex}.breadcrumb-item+.breadcrumb-item[data-v-7c3232e0]{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item[data-v-7c3232e0]:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item[data-v-7c3232e0]:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active[data-v-7c3232e0]{color:#6c757d}.pagination[data-v-7c3232e0]{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link[data-v-7c3232e0]{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#80b6cc;background-color:#fff;border:1px solid #dee2e6}.page-link[data-v-7c3232e0]:hover{z-index:2;color:#4997b6;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link[data-v-7c3232e0]:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.page-item:first-child .page-link[data-v-7c3232e0]{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link[data-v-7c3232e0]{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link[data-v-7c3232e0]{z-index:3;color:#fff;background-color:#203040;border-color:#203040}.page-item.disabled .page-link[data-v-7c3232e0]{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link[data-v-7c3232e0]{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link[data-v-7c3232e0]{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link[data-v-7c3232e0]{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link[data-v-7c3232e0]{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link[data-v-7c3232e0]{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link[data-v-7c3232e0]{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge[data-v-7c3232e0]{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge[data-v-7c3232e0]{transition:none}}a.badge[data-v-7c3232e0]:focus,a.badge[data-v-7c3232e0]:hover{text-decoration:none}.badge[data-v-7c3232e0]:empty{display:none}.btn .badge[data-v-7c3232e0]{position:relative;top:-1px}.badge-pill[data-v-7c3232e0]{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary[data-v-7c3232e0]{color:#fff;background-color:#203040}a.badge-primary[data-v-7c3232e0]:focus,a.badge-primary[data-v-7c3232e0]:hover{color:#fff;background-color:#0f171e}a.badge-primary.focus[data-v-7c3232e0],a.badge-primary[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.badge-secondary[data-v-7c3232e0]{color:#fff;background-color:#ce0cb7}a.badge-secondary[data-v-7c3232e0]:focus,a.badge-secondary[data-v-7c3232e0]:hover{color:#fff;background-color:#9e098c}a.badge-secondary.focus[data-v-7c3232e0],a.badge-secondary[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.badge-success[data-v-7c3232e0]{color:#fff;background-color:#28a745}a.badge-success[data-v-7c3232e0]:focus,a.badge-success[data-v-7c3232e0]:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus[data-v-7c3232e0],a.badge-success[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info[data-v-7c3232e0]{color:#fff;background-color:#17a2b8}a.badge-info[data-v-7c3232e0]:focus,a.badge-info[data-v-7c3232e0]:hover{color:#fff;background-color:#117a8b}a.badge-info.focus[data-v-7c3232e0],a.badge-info[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning[data-v-7c3232e0]{color:#212529;background-color:#ffc107}a.badge-warning[data-v-7c3232e0]:focus,a.badge-warning[data-v-7c3232e0]:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus[data-v-7c3232e0],a.badge-warning[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger[data-v-7c3232e0]{color:#fff;background-color:#dc3545}a.badge-danger[data-v-7c3232e0]:focus,a.badge-danger[data-v-7c3232e0]:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus[data-v-7c3232e0],a.badge-danger[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light[data-v-7c3232e0]{color:#212529;background-color:#f8f9fa}a.badge-light[data-v-7c3232e0]:focus,a.badge-light[data-v-7c3232e0]:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus[data-v-7c3232e0],a.badge-light[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark[data-v-7c3232e0]{color:#fff;background-color:#343a40}a.badge-dark[data-v-7c3232e0]:focus,a.badge-dark[data-v-7c3232e0]:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus[data-v-7c3232e0],a.badge-dark[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron[data-v-7c3232e0]{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron[data-v-7c3232e0]{padding:4rem 2rem}}.jumbotron-fluid[data-v-7c3232e0]{padding-right:0;padding-left:0;border-radius:0}.alert[data-v-7c3232e0]{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading[data-v-7c3232e0]{color:inherit}.alert-link[data-v-7c3232e0]{font-weight:700}.alert-dismissible[data-v-7c3232e0]{padding-right:4rem}.alert-dismissible .close[data-v-7c3232e0]{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary[data-v-7c3232e0]{color:#111921;background-color:#d2d6d9;border-color:#c1c5ca}.alert-primary hr[data-v-7c3232e0]{border-top-color:#b3b8be}.alert-primary .alert-link[data-v-7c3232e0]{color:#000}.alert-secondary[data-v-7c3232e0]{color:#6b065f;background-color:#f5cef1;border-color:#f1bbeb}.alert-secondary hr[data-v-7c3232e0]{border-top-color:#eda6e5}.alert-secondary .alert-link[data-v-7c3232e0]{color:#3b0334}.alert-success[data-v-7c3232e0]{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr[data-v-7c3232e0]{border-top-color:#b1dfbb}.alert-success .alert-link[data-v-7c3232e0]{color:#0b2e13}.alert-info[data-v-7c3232e0]{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr[data-v-7c3232e0]{border-top-color:#abdde5}.alert-info .alert-link[data-v-7c3232e0]{color:#062c33}.alert-warning[data-v-7c3232e0]{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr[data-v-7c3232e0]{border-top-color:#ffe8a1}.alert-warning .alert-link[data-v-7c3232e0]{color:#533f03}.alert-danger[data-v-7c3232e0]{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr[data-v-7c3232e0]{border-top-color:#f1b0b7}.alert-danger .alert-link[data-v-7c3232e0]{color:#491217}.alert-light[data-v-7c3232e0]{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr[data-v-7c3232e0]{border-top-color:#ececf6}.alert-light .alert-link[data-v-7c3232e0]{color:#686868}.alert-dark[data-v-7c3232e0]{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr[data-v-7c3232e0]{border-top-color:#b9bbbe}.alert-dark .alert-link[data-v-7c3232e0]{color:#040505}@keyframes progress-bar-stripes-data-v-7c3232e0{0%{background-position:1rem 0}to{background-position:0 0}}.progress[data-v-7c3232e0]{display:flex;height:1rem;overflow:hidden;line-height:0;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar[data-v-7c3232e0]{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#203040;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar[data-v-7c3232e0]{transition:none}}.progress-bar-striped[data-v-7c3232e0]{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated[data-v-7c3232e0]{animation:progress-bar-stripes-data-v-7c3232e0 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated[data-v-7c3232e0]{animation:none}}.media[data-v-7c3232e0]{display:flex;align-items:flex-start}.media-body[data-v-7c3232e0]{flex:1}.list-group[data-v-7c3232e0]{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-item-action[data-v-7c3232e0]{width:100%;color:#495057;text-align:inherit}.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-action[data-v-7c3232e0]:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action[data-v-7c3232e0]:active{color:#a79e8b;background-color:#e9ecef}.list-group-item[data-v-7c3232e0]{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item[data-v-7c3232e0]:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item[data-v-7c3232e0]:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled[data-v-7c3232e0],.list-group-item[data-v-7c3232e0]:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active[data-v-7c3232e0]{z-index:2;color:#fff;background-color:#203040;border-color:#203040}.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:0}.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-top:-1px;border-top-width:1px}.list-group-horizontal[data-v-7c3232e0]{flex-direction:row}.list-group-horizontal>.list-group-item[data-v-7c3232e0]:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item[data-v-7c3232e0]:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active[data-v-7c3232e0]{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm[data-v-7c3232e0]{flex-direction:row}.list-group-horizontal-sm>.list-group-item[data-v-7c3232e0]:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item[data-v-7c3232e0]:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active[data-v-7c3232e0]{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md[data-v-7c3232e0]{flex-direction:row}.list-group-horizontal-md>.list-group-item[data-v-7c3232e0]:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item[data-v-7c3232e0]:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active[data-v-7c3232e0]{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg[data-v-7c3232e0]{flex-direction:row}.list-group-horizontal-lg>.list-group-item[data-v-7c3232e0]:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item[data-v-7c3232e0]:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active[data-v-7c3232e0]{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl[data-v-7c3232e0]{flex-direction:row}.list-group-horizontal-xl>.list-group-item[data-v-7c3232e0]:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item[data-v-7c3232e0]:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active[data-v-7c3232e0]{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-left:-1px;border-left-width:1px}}.list-group-flush[data-v-7c3232e0]{border-radius:0}.list-group-flush>.list-group-item[data-v-7c3232e0]{border-width:0 0 1px}.list-group-flush>.list-group-item[data-v-7c3232e0]:last-child{border-bottom-width:0}.list-group-item-primary[data-v-7c3232e0]{color:#111921;background-color:#c1c5ca}.list-group-item-primary.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-primary.list-group-item-action[data-v-7c3232e0]:hover{color:#111921;background-color:#b3b8be}.list-group-item-primary.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#111921;border-color:#111921}.list-group-item-secondary[data-v-7c3232e0]{color:#6b065f;background-color:#f1bbeb}.list-group-item-secondary.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-secondary.list-group-item-action[data-v-7c3232e0]:hover{color:#6b065f;background-color:#eda6e5}.list-group-item-secondary.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#6b065f;border-color:#6b065f}.list-group-item-success[data-v-7c3232e0]{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-success.list-group-item-action[data-v-7c3232e0]:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info[data-v-7c3232e0]{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-info.list-group-item-action[data-v-7c3232e0]:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning[data-v-7c3232e0]{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-warning.list-group-item-action[data-v-7c3232e0]:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger[data-v-7c3232e0]{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-danger.list-group-item-action[data-v-7c3232e0]:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light[data-v-7c3232e0]{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-light.list-group-item-action[data-v-7c3232e0]:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark[data-v-7c3232e0]{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-dark.list-group-item-action[data-v-7c3232e0]:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close[data-v-7c3232e0]{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close[data-v-7c3232e0]:hover{color:#000;text-decoration:none}.close[data-v-7c3232e0]:not(:disabled):not(.disabled):focus,.close[data-v-7c3232e0]:not(:disabled):not(.disabled):hover{opacity:.75}button.close[data-v-7c3232e0]{padding:0;background-color:initial;border:0}a.close.disabled[data-v-7c3232e0]{pointer-events:none}.toast[data-v-7c3232e0]{flex-basis:350px;max-width:350px;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);opacity:0;border-radius:.25rem}.toast[data-v-7c3232e0]:not(:last-child){margin-bottom:.75rem}.toast.showing[data-v-7c3232e0]{opacity:1}.toast.show[data-v-7c3232e0]{display:block;opacity:1}.toast.hide[data-v-7c3232e0]{display:none}.toast-header[data-v-7c3232e0]{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.toast-body[data-v-7c3232e0]{padding:.75rem}.modal-open[data-v-7c3232e0]{overflow:hidden}.modal-open .modal[data-v-7c3232e0]{overflow-x:hidden;overflow-y:auto}.modal[data-v-7c3232e0]{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog[data-v-7c3232e0]{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog[data-v-7c3232e0]{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog[data-v-7c3232e0]{transition:none}}.modal.show .modal-dialog[data-v-7c3232e0]{transform:none}.modal.modal-static .modal-dialog[data-v-7c3232e0]{transform:scale(1.02)}.modal-dialog-scrollable[data-v-7c3232e0]{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content[data-v-7c3232e0]{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer[data-v-7c3232e0],.modal-dialog-scrollable .modal-header[data-v-7c3232e0]{flex-shrink:0}.modal-dialog-scrollable .modal-body[data-v-7c3232e0]{overflow-y:auto}.modal-dialog-centered[data-v-7c3232e0]{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered[data-v-7c3232e0]:before{display:block;height:calc(100vh - 1rem);height:min-content;content:""}.modal-dialog-centered.modal-dialog-scrollable[data-v-7c3232e0]{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content[data-v-7c3232e0]{max-height:none}.modal-dialog-centered.modal-dialog-scrollable[data-v-7c3232e0]:before{content:none}.modal-content[data-v-7c3232e0]{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop[data-v-7c3232e0]{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade[data-v-7c3232e0]{opacity:0}.modal-backdrop.show[data-v-7c3232e0]{opacity:.5}.modal-header[data-v-7c3232e0]{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close[data-v-7c3232e0]{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title[data-v-7c3232e0]{margin-bottom:0;line-height:1.5}.modal-body[data-v-7c3232e0]{position:relative;flex:1 1 auto;padding:1rem}.modal-footer[data-v-7c3232e0]{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>[data-v-7c3232e0]{margin:.25rem}.modal-scrollbar-measure[data-v-7c3232e0]{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog[data-v-7c3232e0]{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable[data-v-7c3232e0]{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content[data-v-7c3232e0]{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered[data-v-7c3232e0]{min-height:calc(100% - 3.5rem)}.modal-dialog-centered[data-v-7c3232e0]:before{height:calc(100vh - 3.5rem);height:min-content}.modal-sm[data-v-7c3232e0]{max-width:300px}}@media (min-width:992px){.modal-lg[data-v-7c3232e0],.modal-xl[data-v-7c3232e0]{max-width:800px}}@media (min-width:1200px){.modal-xl[data-v-7c3232e0]{max-width:1140px}}.tooltip[data-v-7c3232e0]{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show[data-v-7c3232e0]{opacity:.9}.tooltip .arrow[data-v-7c3232e0]{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow[data-v-7c3232e0]:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top][data-v-7c3232e0],.bs-tooltip-top[data-v-7c3232e0]{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow[data-v-7c3232e0],.bs-tooltip-top .arrow[data-v-7c3232e0]{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow[data-v-7c3232e0]:before,.bs-tooltip-top .arrow[data-v-7c3232e0]:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right][data-v-7c3232e0],.bs-tooltip-right[data-v-7c3232e0]{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow[data-v-7c3232e0],.bs-tooltip-right .arrow[data-v-7c3232e0]{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow[data-v-7c3232e0]:before,.bs-tooltip-right .arrow[data-v-7c3232e0]:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom][data-v-7c3232e0],.bs-tooltip-bottom[data-v-7c3232e0]{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow[data-v-7c3232e0],.bs-tooltip-bottom .arrow[data-v-7c3232e0]{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow[data-v-7c3232e0]:before,.bs-tooltip-bottom .arrow[data-v-7c3232e0]:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left][data-v-7c3232e0],.bs-tooltip-left[data-v-7c3232e0]{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow[data-v-7c3232e0],.bs-tooltip-left .arrow[data-v-7c3232e0]{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow[data-v-7c3232e0]:before,.bs-tooltip-left .arrow[data-v-7c3232e0]:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner[data-v-7c3232e0]{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover[data-v-7c3232e0]{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow[data-v-7c3232e0]{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow[data-v-7c3232e0]:after,.popover .arrow[data-v-7c3232e0]:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top][data-v-7c3232e0],.bs-popover-top[data-v-7c3232e0]{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow[data-v-7c3232e0],.bs-popover-top>.arrow[data-v-7c3232e0]{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow[data-v-7c3232e0]:before,.bs-popover-top>.arrow[data-v-7c3232e0]:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow[data-v-7c3232e0]:after,.bs-popover-top>.arrow[data-v-7c3232e0]:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right][data-v-7c3232e0],.bs-popover-right[data-v-7c3232e0]{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow[data-v-7c3232e0],.bs-popover-right>.arrow[data-v-7c3232e0]{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow[data-v-7c3232e0]:before,.bs-popover-right>.arrow[data-v-7c3232e0]:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow[data-v-7c3232e0]:after,.bs-popover-right>.arrow[data-v-7c3232e0]:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom][data-v-7c3232e0],.bs-popover-bottom[data-v-7c3232e0]{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow[data-v-7c3232e0],.bs-popover-bottom>.arrow[data-v-7c3232e0]{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow[data-v-7c3232e0]:before,.bs-popover-bottom>.arrow[data-v-7c3232e0]:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow[data-v-7c3232e0]:after,.bs-popover-bottom>.arrow[data-v-7c3232e0]:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header[data-v-7c3232e0]:before,.bs-popover-bottom .popover-header[data-v-7c3232e0]:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left][data-v-7c3232e0],.bs-popover-left[data-v-7c3232e0]{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow[data-v-7c3232e0],.bs-popover-left>.arrow[data-v-7c3232e0]{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow[data-v-7c3232e0]:before,.bs-popover-left>.arrow[data-v-7c3232e0]:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow[data-v-7c3232e0]:after,.bs-popover-left>.arrow[data-v-7c3232e0]:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header[data-v-7c3232e0]{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;color:#f78e66;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header[data-v-7c3232e0]:empty{display:none}.popover-body[data-v-7c3232e0]{padding:.5rem .75rem;color:#a79e8b}.carousel[data-v-7c3232e0]{position:relative}.carousel.pointer-event[data-v-7c3232e0]{touch-action:pan-y}.carousel-inner[data-v-7c3232e0]{position:relative;width:100%;overflow:hidden}.carousel-inner[data-v-7c3232e0]:after{display:block;clear:both;content:""}.carousel-item[data-v-7c3232e0]{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item[data-v-7c3232e0]{transition:none}}.carousel-item-next[data-v-7c3232e0],.carousel-item-prev[data-v-7c3232e0],.carousel-item.active[data-v-7c3232e0]{display:block}.active.carousel-item-right[data-v-7c3232e0],.carousel-item-next[data-v-7c3232e0]:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left[data-v-7c3232e0],.carousel-item-prev[data-v-7c3232e0]:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item[data-v-7c3232e0]{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left[data-v-7c3232e0],.carousel-fade .carousel-item-prev.carousel-item-right[data-v-7c3232e0],.carousel-fade .carousel-item.active[data-v-7c3232e0]{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left[data-v-7c3232e0],.carousel-fade .active.carousel-item-right[data-v-7c3232e0]{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left[data-v-7c3232e0],.carousel-fade .active.carousel-item-right[data-v-7c3232e0]{transition:none}}.carousel-control-next[data-v-7c3232e0],.carousel-control-prev[data-v-7c3232e0]{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next[data-v-7c3232e0],.carousel-control-prev[data-v-7c3232e0]{transition:none}}.carousel-control-next[data-v-7c3232e0]:focus,.carousel-control-next[data-v-7c3232e0]:hover,.carousel-control-prev[data-v-7c3232e0]:focus,.carousel-control-prev[data-v-7c3232e0]:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev[data-v-7c3232e0]{left:0}.carousel-control-next[data-v-7c3232e0]{right:0}.carousel-control-next-icon[data-v-7c3232e0],.carousel-control-prev-icon[data-v-7c3232e0]{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon[data-v-7c3232e0]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3E%3C/svg%3E")}.carousel-control-next-icon[data-v-7c3232e0]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators[data-v-7c3232e0]{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li[data-v-7c3232e0]{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li[data-v-7c3232e0]{transition:none}}.carousel-indicators .active[data-v-7c3232e0]{opacity:1}.carousel-caption[data-v-7c3232e0]{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border-data-v-7c3232e0{to{transform:rotate(1turn)}}.spinner-border[data-v-7c3232e0]{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border-data-v-7c3232e0 .75s linear infinite}.spinner-border-sm[data-v-7c3232e0]{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow-data-v-7c3232e0{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow[data-v-7c3232e0]{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow-data-v-7c3232e0 .75s linear infinite}.spinner-grow-sm[data-v-7c3232e0]{width:1rem;height:1rem}.align-baseline[data-v-7c3232e0]{vertical-align:initial!important}.align-top[data-v-7c3232e0]{vertical-align:top!important}.align-middle[data-v-7c3232e0]{vertical-align:middle!important}.align-bottom[data-v-7c3232e0]{vertical-align:bottom!important}.align-text-bottom[data-v-7c3232e0]{vertical-align:text-bottom!important}.align-text-top[data-v-7c3232e0]{vertical-align:text-top!important}.bg-primary[data-v-7c3232e0]{background-color:#203040!important}a.bg-primary[data-v-7c3232e0]:focus,a.bg-primary[data-v-7c3232e0]:hover,button.bg-primary[data-v-7c3232e0]:focus,button.bg-primary[data-v-7c3232e0]:hover{background-color:#0f171e!important}.bg-secondary[data-v-7c3232e0]{background-color:#ce0cb7!important}a.bg-secondary[data-v-7c3232e0]:focus,a.bg-secondary[data-v-7c3232e0]:hover,button.bg-secondary[data-v-7c3232e0]:focus,button.bg-secondary[data-v-7c3232e0]:hover{background-color:#9e098c!important}.bg-success[data-v-7c3232e0]{background-color:#28a745!important}a.bg-success[data-v-7c3232e0]:focus,a.bg-success[data-v-7c3232e0]:hover,button.bg-success[data-v-7c3232e0]:focus,button.bg-success[data-v-7c3232e0]:hover{background-color:#1e7e34!important}.bg-info[data-v-7c3232e0]{background-color:#17a2b8!important}a.bg-info[data-v-7c3232e0]:focus,a.bg-info[data-v-7c3232e0]:hover,button.bg-info[data-v-7c3232e0]:focus,button.bg-info[data-v-7c3232e0]:hover{background-color:#117a8b!important}.bg-warning[data-v-7c3232e0]{background-color:#ffc107!important}a.bg-warning[data-v-7c3232e0]:focus,a.bg-warning[data-v-7c3232e0]:hover,button.bg-warning[data-v-7c3232e0]:focus,button.bg-warning[data-v-7c3232e0]:hover{background-color:#d39e00!important}.bg-danger[data-v-7c3232e0]{background-color:#dc3545!important}a.bg-danger[data-v-7c3232e0]:focus,a.bg-danger[data-v-7c3232e0]:hover,button.bg-danger[data-v-7c3232e0]:focus,button.bg-danger[data-v-7c3232e0]:hover{background-color:#bd2130!important}.bg-light[data-v-7c3232e0]{background-color:#f8f9fa!important}a.bg-light[data-v-7c3232e0]:focus,a.bg-light[data-v-7c3232e0]:hover,button.bg-light[data-v-7c3232e0]:focus,button.bg-light[data-v-7c3232e0]:hover{background-color:#dae0e5!important}.bg-dark[data-v-7c3232e0]{background-color:#343a40!important}a.bg-dark[data-v-7c3232e0]:focus,a.bg-dark[data-v-7c3232e0]:hover,button.bg-dark[data-v-7c3232e0]:focus,button.bg-dark[data-v-7c3232e0]:hover{background-color:#1d2124!important}.bg-white[data-v-7c3232e0]{background-color:#fff!important}.bg-transparent[data-v-7c3232e0]{background-color:initial!important}.border[data-v-7c3232e0]{border:1px solid #dee2e6!important}.border-top[data-v-7c3232e0]{border-top:1px solid #dee2e6!important}.border-right[data-v-7c3232e0]{border-right:1px solid #dee2e6!important}.border-bottom[data-v-7c3232e0]{border-bottom:1px solid #dee2e6!important}.border-left[data-v-7c3232e0]{border-left:1px solid #dee2e6!important}.border-0[data-v-7c3232e0]{border:0!important}.border-top-0[data-v-7c3232e0]{border-top:0!important}.border-right-0[data-v-7c3232e0]{border-right:0!important}.border-bottom-0[data-v-7c3232e0]{border-bottom:0!important}.border-left-0[data-v-7c3232e0]{border-left:0!important}.border-primary[data-v-7c3232e0]{border-color:#203040!important}.border-secondary[data-v-7c3232e0]{border-color:#ce0cb7!important}.border-success[data-v-7c3232e0]{border-color:#28a745!important}.border-info[data-v-7c3232e0]{border-color:#17a2b8!important}.border-warning[data-v-7c3232e0]{border-color:#ffc107!important}.border-danger[data-v-7c3232e0]{border-color:#dc3545!important}.border-light[data-v-7c3232e0]{border-color:#f8f9fa!important}.border-dark[data-v-7c3232e0]{border-color:#343a40!important}.border-white[data-v-7c3232e0]{border-color:#fff!important}.rounded-sm[data-v-7c3232e0]{border-radius:.2rem!important}.rounded[data-v-7c3232e0]{border-radius:.25rem!important}.rounded-top[data-v-7c3232e0]{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right[data-v-7c3232e0]{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom[data-v-7c3232e0]{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left[data-v-7c3232e0]{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-lg[data-v-7c3232e0]{border-radius:.3rem!important}.rounded-circle[data-v-7c3232e0]{border-radius:50%!important}.rounded-pill[data-v-7c3232e0]{border-radius:50rem!important}.rounded-0[data-v-7c3232e0]{border-radius:0!important}.clearfix[data-v-7c3232e0]:after{display:block;clear:both;content:""}.d-none[data-v-7c3232e0]{display:none!important}.d-inline[data-v-7c3232e0]{display:inline!important}.d-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-block[data-v-7c3232e0]{display:block!important}.d-table[data-v-7c3232e0]{display:table!important}.d-table-row[data-v-7c3232e0]{display:table-row!important}.d-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-flex[data-v-7c3232e0]{display:flex!important}.d-inline-flex[data-v-7c3232e0]{display:inline-flex!important}@media (min-width:576px){.d-sm-none[data-v-7c3232e0]{display:none!important}.d-sm-inline[data-v-7c3232e0]{display:inline!important}.d-sm-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-sm-block[data-v-7c3232e0]{display:block!important}.d-sm-table[data-v-7c3232e0]{display:table!important}.d-sm-table-row[data-v-7c3232e0]{display:table-row!important}.d-sm-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-sm-flex[data-v-7c3232e0]{display:flex!important}.d-sm-inline-flex[data-v-7c3232e0]{display:inline-flex!important}}@media (min-width:768px){.d-md-none[data-v-7c3232e0]{display:none!important}.d-md-inline[data-v-7c3232e0]{display:inline!important}.d-md-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-md-block[data-v-7c3232e0]{display:block!important}.d-md-table[data-v-7c3232e0]{display:table!important}.d-md-table-row[data-v-7c3232e0]{display:table-row!important}.d-md-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-md-flex[data-v-7c3232e0]{display:flex!important}.d-md-inline-flex[data-v-7c3232e0]{display:inline-flex!important}}@media (min-width:992px){.d-lg-none[data-v-7c3232e0]{display:none!important}.d-lg-inline[data-v-7c3232e0]{display:inline!important}.d-lg-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-lg-block[data-v-7c3232e0]{display:block!important}.d-lg-table[data-v-7c3232e0]{display:table!important}.d-lg-table-row[data-v-7c3232e0]{display:table-row!important}.d-lg-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-lg-flex[data-v-7c3232e0]{display:flex!important}.d-lg-inline-flex[data-v-7c3232e0]{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none[data-v-7c3232e0]{display:none!important}.d-xl-inline[data-v-7c3232e0]{display:inline!important}.d-xl-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-xl-block[data-v-7c3232e0]{display:block!important}.d-xl-table[data-v-7c3232e0]{display:table!important}.d-xl-table-row[data-v-7c3232e0]{display:table-row!important}.d-xl-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-xl-flex[data-v-7c3232e0]{display:flex!important}.d-xl-inline-flex[data-v-7c3232e0]{display:inline-flex!important}}@media print{.d-print-none[data-v-7c3232e0]{display:none!important}.d-print-inline[data-v-7c3232e0]{display:inline!important}.d-print-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-print-block[data-v-7c3232e0]{display:block!important}.d-print-table[data-v-7c3232e0]{display:table!important}.d-print-table-row[data-v-7c3232e0]{display:table-row!important}.d-print-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-print-flex[data-v-7c3232e0]{display:flex!important}.d-print-inline-flex[data-v-7c3232e0]{display:inline-flex!important}}.embed-responsive[data-v-7c3232e0]{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive[data-v-7c3232e0]:before{display:block;content:""}.embed-responsive .embed-responsive-item[data-v-7c3232e0],.embed-responsive embed[data-v-7c3232e0],.embed-responsive iframe[data-v-7c3232e0],.embed-responsive object[data-v-7c3232e0],.embed-responsive video[data-v-7c3232e0]{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9[data-v-7c3232e0]:before{padding-top:42.85714%}.embed-responsive-16by9[data-v-7c3232e0]:before{padding-top:56.25%}.embed-responsive-4by3[data-v-7c3232e0]:before{padding-top:75%}.embed-responsive-1by1[data-v-7c3232e0]:before{padding-top:100%}.flex-row[data-v-7c3232e0]{flex-direction:row!important}.flex-column[data-v-7c3232e0]{flex-direction:column!important}.flex-row-reverse[data-v-7c3232e0]{flex-direction:row-reverse!important}.flex-column-reverse[data-v-7c3232e0]{flex-direction:column-reverse!important}.flex-wrap[data-v-7c3232e0]{flex-wrap:wrap!important}.flex-nowrap[data-v-7c3232e0]{flex-wrap:nowrap!important}.flex-wrap-reverse[data-v-7c3232e0]{flex-wrap:wrap-reverse!important}.flex-fill[data-v-7c3232e0]{flex:1 1 auto!important}.flex-grow-0[data-v-7c3232e0]{flex-grow:0!important}.flex-grow-1[data-v-7c3232e0]{flex-grow:1!important}.flex-shrink-0[data-v-7c3232e0]{flex-shrink:0!important}.flex-shrink-1[data-v-7c3232e0]{flex-shrink:1!important}.justify-content-start[data-v-7c3232e0]{justify-content:flex-start!important}.justify-content-end[data-v-7c3232e0]{justify-content:flex-end!important}.justify-content-center[data-v-7c3232e0]{justify-content:center!important}.justify-content-between[data-v-7c3232e0]{justify-content:space-between!important}.justify-content-around[data-v-7c3232e0]{justify-content:space-around!important}.align-items-start[data-v-7c3232e0]{align-items:flex-start!important}.align-items-end[data-v-7c3232e0]{align-items:flex-end!important}.align-items-center[data-v-7c3232e0]{align-items:center!important}.align-items-baseline[data-v-7c3232e0]{align-items:baseline!important}.align-items-stretch[data-v-7c3232e0]{align-items:stretch!important}.align-content-start[data-v-7c3232e0]{align-content:flex-start!important}.align-content-end[data-v-7c3232e0]{align-content:flex-end!important}.align-content-center[data-v-7c3232e0]{align-content:center!important}.align-content-between[data-v-7c3232e0]{align-content:space-between!important}.align-content-around[data-v-7c3232e0]{align-content:space-around!important}.align-content-stretch[data-v-7c3232e0]{align-content:stretch!important}.align-self-auto[data-v-7c3232e0]{align-self:auto!important}.align-self-start[data-v-7c3232e0]{align-self:flex-start!important}.align-self-end[data-v-7c3232e0]{align-self:flex-end!important}.align-self-center[data-v-7c3232e0]{align-self:center!important}.align-self-baseline[data-v-7c3232e0]{align-self:baseline!important}.align-self-stretch[data-v-7c3232e0]{align-self:stretch!important}@media (min-width:576px){.flex-sm-row[data-v-7c3232e0]{flex-direction:row!important}.flex-sm-column[data-v-7c3232e0]{flex-direction:column!important}.flex-sm-row-reverse[data-v-7c3232e0]{flex-direction:row-reverse!important}.flex-sm-column-reverse[data-v-7c3232e0]{flex-direction:column-reverse!important}.flex-sm-wrap[data-v-7c3232e0]{flex-wrap:wrap!important}.flex-sm-nowrap[data-v-7c3232e0]{flex-wrap:nowrap!important}.flex-sm-wrap-reverse[data-v-7c3232e0]{flex-wrap:wrap-reverse!important}.flex-sm-fill[data-v-7c3232e0]{flex:1 1 auto!important}.flex-sm-grow-0[data-v-7c3232e0]{flex-grow:0!important}.flex-sm-grow-1[data-v-7c3232e0]{flex-grow:1!important}.flex-sm-shrink-0[data-v-7c3232e0]{flex-shrink:0!important}.flex-sm-shrink-1[data-v-7c3232e0]{flex-shrink:1!important}.justify-content-sm-start[data-v-7c3232e0]{justify-content:flex-start!important}.justify-content-sm-end[data-v-7c3232e0]{justify-content:flex-end!important}.justify-content-sm-center[data-v-7c3232e0]{justify-content:center!important}.justify-content-sm-between[data-v-7c3232e0]{justify-content:space-between!important}.justify-content-sm-around[data-v-7c3232e0]{justify-content:space-around!important}.align-items-sm-start[data-v-7c3232e0]{align-items:flex-start!important}.align-items-sm-end[data-v-7c3232e0]{align-items:flex-end!important}.align-items-sm-center[data-v-7c3232e0]{align-items:center!important}.align-items-sm-baseline[data-v-7c3232e0]{align-items:baseline!important}.align-items-sm-stretch[data-v-7c3232e0]{align-items:stretch!important}.align-content-sm-start[data-v-7c3232e0]{align-content:flex-start!important}.align-content-sm-end[data-v-7c3232e0]{align-content:flex-end!important}.align-content-sm-center[data-v-7c3232e0]{align-content:center!important}.align-content-sm-between[data-v-7c3232e0]{align-content:space-between!important}.align-content-sm-around[data-v-7c3232e0]{align-content:space-around!important}.align-content-sm-stretch[data-v-7c3232e0]{align-content:stretch!important}.align-self-sm-auto[data-v-7c3232e0]{align-self:auto!important}.align-self-sm-start[data-v-7c3232e0]{align-self:flex-start!important}.align-self-sm-end[data-v-7c3232e0]{align-self:flex-end!important}.align-self-sm-center[data-v-7c3232e0]{align-self:center!important}.align-self-sm-baseline[data-v-7c3232e0]{align-self:baseline!important}.align-self-sm-stretch[data-v-7c3232e0]{align-self:stretch!important}}@media (min-width:768px){.flex-md-row[data-v-7c3232e0]{flex-direction:row!important}.flex-md-column[data-v-7c3232e0]{flex-direction:column!important}.flex-md-row-reverse[data-v-7c3232e0]{flex-direction:row-reverse!important}.flex-md-column-reverse[data-v-7c3232e0]{flex-direction:column-reverse!important}.flex-md-wrap[data-v-7c3232e0]{flex-wrap:wrap!important}.flex-md-nowrap[data-v-7c3232e0]{flex-wrap:nowrap!important}.flex-md-wrap-reverse[data-v-7c3232e0]{flex-wrap:wrap-reverse!important}.flex-md-fill[data-v-7c3232e0]{flex:1 1 auto!important}.flex-md-grow-0[data-v-7c3232e0]{flex-grow:0!important}.flex-md-grow-1[data-v-7c3232e0]{flex-grow:1!important}.flex-md-shrink-0[data-v-7c3232e0]{flex-shrink:0!important}.flex-md-shrink-1[data-v-7c3232e0]{flex-shrink:1!important}.justify-content-md-start[data-v-7c3232e0]{justify-content:flex-start!important}.justify-content-md-end[data-v-7c3232e0]{justify-content:flex-end!important}.justify-content-md-center[data-v-7c3232e0]{justify-content:center!important}.justify-content-md-between[data-v-7c3232e0]{justify-content:space-between!important}.justify-content-md-around[data-v-7c3232e0]{justify-content:space-around!important}.align-items-md-start[data-v-7c3232e0]{align-items:flex-start!important}.align-items-md-end[data-v-7c3232e0]{align-items:flex-end!important}.align-items-md-center[data-v-7c3232e0]{align-items:center!important}.align-items-md-baseline[data-v-7c3232e0]{align-items:baseline!important}.align-items-md-stretch[data-v-7c3232e0]{align-items:stretch!important}.align-content-md-start[data-v-7c3232e0]{align-content:flex-start!important}.align-content-md-end[data-v-7c3232e0]{align-content:flex-end!important}.align-content-md-center[data-v-7c3232e0]{align-content:center!important}.align-content-md-between[data-v-7c3232e0]{align-content:space-between!important}.align-content-md-around[data-v-7c3232e0]{align-content:space-around!important}.align-content-md-stretch[data-v-7c3232e0]{align-content:stretch!important}.align-self-md-auto[data-v-7c3232e0]{align-self:auto!important}.align-self-md-start[data-v-7c3232e0]{align-self:flex-start!important}.align-self-md-end[data-v-7c3232e0]{align-self:flex-end!important}.align-self-md-center[data-v-7c3232e0]{align-self:center!important}.align-self-md-baseline[data-v-7c3232e0]{align-self:baseline!important}.align-self-md-stretch[data-v-7c3232e0]{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row[data-v-7c3232e0]{flex-direction:row!important}.flex-lg-column[data-v-7c3232e0]{flex-direction:column!important}.flex-lg-row-reverse[data-v-7c3232e0]{flex-direction:row-reverse!important}.flex-lg-column-reverse[data-v-7c3232e0]{flex-direction:column-reverse!important}.flex-lg-wrap[data-v-7c3232e0]{flex-wrap:wrap!important}.flex-lg-nowrap[data-v-7c3232e0]{flex-wrap:nowrap!important}.flex-lg-wrap-reverse[data-v-7c3232e0]{flex-wrap:wrap-reverse!important}.flex-lg-fill[data-v-7c3232e0]{flex:1 1 auto!important}.flex-lg-grow-0[data-v-7c3232e0]{flex-grow:0!important}.flex-lg-grow-1[data-v-7c3232e0]{flex-grow:1!important}.flex-lg-shrink-0[data-v-7c3232e0]{flex-shrink:0!important}.flex-lg-shrink-1[data-v-7c3232e0]{flex-shrink:1!important}.justify-content-lg-start[data-v-7c3232e0]{justify-content:flex-start!important}.justify-content-lg-end[data-v-7c3232e0]{justify-content:flex-end!important}.justify-content-lg-center[data-v-7c3232e0]{justify-content:center!important}.justify-content-lg-between[data-v-7c3232e0]{justify-content:space-between!important}.justify-content-lg-around[data-v-7c3232e0]{justify-content:space-around!important}.align-items-lg-start[data-v-7c3232e0]{align-items:flex-start!important}.align-items-lg-end[data-v-7c3232e0]{align-items:flex-end!important}.align-items-lg-center[data-v-7c3232e0]{align-items:center!important}.align-items-lg-baseline[data-v-7c3232e0]{align-items:baseline!important}.align-items-lg-stretch[data-v-7c3232e0]{align-items:stretch!important}.align-content-lg-start[data-v-7c3232e0]{align-content:flex-start!important}.align-content-lg-end[data-v-7c3232e0]{align-content:flex-end!important}.align-content-lg-center[data-v-7c3232e0]{align-content:center!important}.align-content-lg-between[data-v-7c3232e0]{align-content:space-between!important}.align-content-lg-around[data-v-7c3232e0]{align-content:space-around!important}.align-content-lg-stretch[data-v-7c3232e0]{align-content:stretch!important}.align-self-lg-auto[data-v-7c3232e0]{align-self:auto!important}.align-self-lg-start[data-v-7c3232e0]{align-self:flex-start!important}.align-self-lg-end[data-v-7c3232e0]{align-self:flex-end!important}.align-self-lg-center[data-v-7c3232e0]{align-self:center!important}.align-self-lg-baseline[data-v-7c3232e0]{align-self:baseline!important}.align-self-lg-stretch[data-v-7c3232e0]{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row[data-v-7c3232e0]{flex-direction:row!important}.flex-xl-column[data-v-7c3232e0]{flex-direction:column!important}.flex-xl-row-reverse[data-v-7c3232e0]{flex-direction:row-reverse!important}.flex-xl-column-reverse[data-v-7c3232e0]{flex-direction:column-reverse!important}.flex-xl-wrap[data-v-7c3232e0]{flex-wrap:wrap!important}.flex-xl-nowrap[data-v-7c3232e0]{flex-wrap:nowrap!important}.flex-xl-wrap-reverse[data-v-7c3232e0]{flex-wrap:wrap-reverse!important}.flex-xl-fill[data-v-7c3232e0]{flex:1 1 auto!important}.flex-xl-grow-0[data-v-7c3232e0]{flex-grow:0!important}.flex-xl-grow-1[data-v-7c3232e0]{flex-grow:1!important}.flex-xl-shrink-0[data-v-7c3232e0]{flex-shrink:0!important}.flex-xl-shrink-1[data-v-7c3232e0]{flex-shrink:1!important}.justify-content-xl-start[data-v-7c3232e0]{justify-content:flex-start!important}.justify-content-xl-end[data-v-7c3232e0]{justify-content:flex-end!important}.justify-content-xl-center[data-v-7c3232e0]{justify-content:center!important}.justify-content-xl-between[data-v-7c3232e0]{justify-content:space-between!important}.justify-content-xl-around[data-v-7c3232e0]{justify-content:space-around!important}.align-items-xl-start[data-v-7c3232e0]{align-items:flex-start!important}.align-items-xl-end[data-v-7c3232e0]{align-items:flex-end!important}.align-items-xl-center[data-v-7c3232e0]{align-items:center!important}.align-items-xl-baseline[data-v-7c3232e0]{align-items:baseline!important}.align-items-xl-stretch[data-v-7c3232e0]{align-items:stretch!important}.align-content-xl-start[data-v-7c3232e0]{align-content:flex-start!important}.align-content-xl-end[data-v-7c3232e0]{align-content:flex-end!important}.align-content-xl-center[data-v-7c3232e0]{align-content:center!important}.align-content-xl-between[data-v-7c3232e0]{align-content:space-between!important}.align-content-xl-around[data-v-7c3232e0]{align-content:space-around!important}.align-content-xl-stretch[data-v-7c3232e0]{align-content:stretch!important}.align-self-xl-auto[data-v-7c3232e0]{align-self:auto!important}.align-self-xl-start[data-v-7c3232e0]{align-self:flex-start!important}.align-self-xl-end[data-v-7c3232e0]{align-self:flex-end!important}.align-self-xl-center[data-v-7c3232e0]{align-self:center!important}.align-self-xl-baseline[data-v-7c3232e0]{align-self:baseline!important}.align-self-xl-stretch[data-v-7c3232e0]{align-self:stretch!important}}.float-left[data-v-7c3232e0]{float:left!important}.float-right[data-v-7c3232e0]{float:right!important}.float-none[data-v-7c3232e0]{float:none!important}@media (min-width:576px){.float-sm-left[data-v-7c3232e0]{float:left!important}.float-sm-right[data-v-7c3232e0]{float:right!important}.float-sm-none[data-v-7c3232e0]{float:none!important}}@media (min-width:768px){.float-md-left[data-v-7c3232e0]{float:left!important}.float-md-right[data-v-7c3232e0]{float:right!important}.float-md-none[data-v-7c3232e0]{float:none!important}}@media (min-width:992px){.float-lg-left[data-v-7c3232e0]{float:left!important}.float-lg-right[data-v-7c3232e0]{float:right!important}.float-lg-none[data-v-7c3232e0]{float:none!important}}@media (min-width:1200px){.float-xl-left[data-v-7c3232e0]{float:left!important}.float-xl-right[data-v-7c3232e0]{float:right!important}.float-xl-none[data-v-7c3232e0]{float:none!important}}.user-select-all[data-v-7c3232e0]{-webkit-user-select:all!important;user-select:all!important}.user-select-auto[data-v-7c3232e0]{-webkit-user-select:auto!important;user-select:auto!important}.user-select-none[data-v-7c3232e0]{-webkit-user-select:none!important;user-select:none!important}.overflow-auto[data-v-7c3232e0]{overflow:auto!important}.overflow-hidden[data-v-7c3232e0]{overflow:hidden!important}.position-static[data-v-7c3232e0]{position:static!important}.position-relative[data-v-7c3232e0]{position:relative!important}.position-absolute[data-v-7c3232e0]{position:absolute!important}.position-fixed[data-v-7c3232e0]{position:fixed!important}.position-sticky[data-v-7c3232e0]{position:sticky!important}.fixed-top[data-v-7c3232e0]{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom[data-v-7c3232e0]{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports (position:sticky){.sticky-top[data-v-7c3232e0]{position:sticky;top:0;z-index:1020}}.sr-only[data-v-7c3232e0]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable[data-v-7c3232e0]:active,.sr-only-focusable[data-v-7c3232e0]:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm[data-v-7c3232e0]{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow[data-v-7c3232e0]{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg[data-v-7c3232e0]{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none[data-v-7c3232e0]{box-shadow:none!important}.w-25[data-v-7c3232e0]{width:25%!important}.w-50[data-v-7c3232e0]{width:50%!important}.w-75[data-v-7c3232e0]{width:75%!important}.w-100[data-v-7c3232e0]{width:100%!important}.w-auto[data-v-7c3232e0]{width:auto!important}.h-25[data-v-7c3232e0]{height:25%!important}.h-50[data-v-7c3232e0]{height:50%!important}.h-75[data-v-7c3232e0]{height:75%!important}.h-100[data-v-7c3232e0]{height:100%!important}.h-auto[data-v-7c3232e0]{height:auto!important}.mw-100[data-v-7c3232e0]{max-width:100%!important}.mh-100[data-v-7c3232e0]{max-height:100%!important}.min-vw-100[data-v-7c3232e0]{min-width:100vw!important}.min-vh-100[data-v-7c3232e0]{min-height:100vh!important}.vw-100[data-v-7c3232e0]{width:100vw!important}.vh-100[data-v-7c3232e0]{height:100vh!important}.m-0[data-v-7c3232e0]{margin:0!important}.mt-0[data-v-7c3232e0],.my-0[data-v-7c3232e0]{margin-top:0!important}.mr-0[data-v-7c3232e0],.mx-0[data-v-7c3232e0]{margin-right:0!important}.mb-0[data-v-7c3232e0],.my-0[data-v-7c3232e0]{margin-bottom:0!important}.ml-0[data-v-7c3232e0],.mx-0[data-v-7c3232e0]{margin-left:0!important}.m-1[data-v-7c3232e0]{margin:.25rem!important}.mt-1[data-v-7c3232e0],.my-1[data-v-7c3232e0]{margin-top:.25rem!important}.mr-1[data-v-7c3232e0],.mx-1[data-v-7c3232e0]{margin-right:.25rem!important}.mb-1[data-v-7c3232e0],.my-1[data-v-7c3232e0]{margin-bottom:.25rem!important}.ml-1[data-v-7c3232e0],.mx-1[data-v-7c3232e0]{margin-left:.25rem!important}.m-2[data-v-7c3232e0]{margin:.5rem!important}.mt-2[data-v-7c3232e0],.my-2[data-v-7c3232e0]{margin-top:.5rem!important}.mr-2[data-v-7c3232e0],.mx-2[data-v-7c3232e0]{margin-right:.5rem!important}.mb-2[data-v-7c3232e0],.my-2[data-v-7c3232e0]{margin-bottom:.5rem!important}.ml-2[data-v-7c3232e0],.mx-2[data-v-7c3232e0]{margin-left:.5rem!important}.m-3[data-v-7c3232e0]{margin:1rem!important}.mt-3[data-v-7c3232e0],.my-3[data-v-7c3232e0]{margin-top:1rem!important}.mr-3[data-v-7c3232e0],.mx-3[data-v-7c3232e0]{margin-right:1rem!important}.mb-3[data-v-7c3232e0],.my-3[data-v-7c3232e0]{margin-bottom:1rem!important}.ml-3[data-v-7c3232e0],.mx-3[data-v-7c3232e0]{margin-left:1rem!important}.m-4[data-v-7c3232e0]{margin:1.5rem!important}.mt-4[data-v-7c3232e0],.my-4[data-v-7c3232e0]{margin-top:1.5rem!important}.mr-4[data-v-7c3232e0],.mx-4[data-v-7c3232e0]{margin-right:1.5rem!important}.mb-4[data-v-7c3232e0],.my-4[data-v-7c3232e0]{margin-bottom:1.5rem!important}.ml-4[data-v-7c3232e0],.mx-4[data-v-7c3232e0]{margin-left:1.5rem!important}.m-5[data-v-7c3232e0]{margin:3rem!important}.mt-5[data-v-7c3232e0],.my-5[data-v-7c3232e0]{margin-top:3rem!important}.mr-5[data-v-7c3232e0],.mx-5[data-v-7c3232e0]{margin-right:3rem!important}.mb-5[data-v-7c3232e0],.my-5[data-v-7c3232e0]{margin-bottom:3rem!important}.ml-5[data-v-7c3232e0],.mx-5[data-v-7c3232e0]{margin-left:3rem!important}.p-0[data-v-7c3232e0]{padding:0!important}.pt-0[data-v-7c3232e0],.py-0[data-v-7c3232e0]{padding-top:0!important}.pr-0[data-v-7c3232e0],.px-0[data-v-7c3232e0]{padding-right:0!important}.pb-0[data-v-7c3232e0],.py-0[data-v-7c3232e0]{padding-bottom:0!important}.pl-0[data-v-7c3232e0],.px-0[data-v-7c3232e0]{padding-left:0!important}.p-1[data-v-7c3232e0]{padding:.25rem!important}.pt-1[data-v-7c3232e0],.py-1[data-v-7c3232e0]{padding-top:.25rem!important}.pr-1[data-v-7c3232e0],.px-1[data-v-7c3232e0]{padding-right:.25rem!important}.pb-1[data-v-7c3232e0],.py-1[data-v-7c3232e0]{padding-bottom:.25rem!important}.pl-1[data-v-7c3232e0],.px-1[data-v-7c3232e0]{padding-left:.25rem!important}.p-2[data-v-7c3232e0]{padding:.5rem!important}.pt-2[data-v-7c3232e0],.py-2[data-v-7c3232e0]{padding-top:.5rem!important}.pr-2[data-v-7c3232e0],.px-2[data-v-7c3232e0]{padding-right:.5rem!important}.pb-2[data-v-7c3232e0],.py-2[data-v-7c3232e0]{padding-bottom:.5rem!important}.pl-2[data-v-7c3232e0],.px-2[data-v-7c3232e0]{padding-left:.5rem!important}.p-3[data-v-7c3232e0]{padding:1rem!important}.pt-3[data-v-7c3232e0],.py-3[data-v-7c3232e0]{padding-top:1rem!important}.pr-3[data-v-7c3232e0],.px-3[data-v-7c3232e0]{padding-right:1rem!important}.pb-3[data-v-7c3232e0],.py-3[data-v-7c3232e0]{padding-bottom:1rem!important}.pl-3[data-v-7c3232e0],.px-3[data-v-7c3232e0]{padding-left:1rem!important}.p-4[data-v-7c3232e0]{padding:1.5rem!important}.pt-4[data-v-7c3232e0],.py-4[data-v-7c3232e0]{padding-top:1.5rem!important}.pr-4[data-v-7c3232e0],.px-4[data-v-7c3232e0]{padding-right:1.5rem!important}.pb-4[data-v-7c3232e0],.py-4[data-v-7c3232e0]{padding-bottom:1.5rem!important}.pl-4[data-v-7c3232e0],.px-4[data-v-7c3232e0]{padding-left:1.5rem!important}.p-5[data-v-7c3232e0]{padding:3rem!important}.pt-5[data-v-7c3232e0],.py-5[data-v-7c3232e0]{padding-top:3rem!important}.pr-5[data-v-7c3232e0],.px-5[data-v-7c3232e0]{padding-right:3rem!important}.pb-5[data-v-7c3232e0],.py-5[data-v-7c3232e0]{padding-bottom:3rem!important}.pl-5[data-v-7c3232e0],.px-5[data-v-7c3232e0]{padding-left:3rem!important}.m-n1[data-v-7c3232e0]{margin:-.25rem!important}.mt-n1[data-v-7c3232e0],.my-n1[data-v-7c3232e0]{margin-top:-.25rem!important}.mr-n1[data-v-7c3232e0],.mx-n1[data-v-7c3232e0]{margin-right:-.25rem!important}.mb-n1[data-v-7c3232e0],.my-n1[data-v-7c3232e0]{margin-bottom:-.25rem!important}.ml-n1[data-v-7c3232e0],.mx-n1[data-v-7c3232e0]{margin-left:-.25rem!important}.m-n2[data-v-7c3232e0]{margin:-.5rem!important}.mt-n2[data-v-7c3232e0],.my-n2[data-v-7c3232e0]{margin-top:-.5rem!important}.mr-n2[data-v-7c3232e0],.mx-n2[data-v-7c3232e0]{margin-right:-.5rem!important}.mb-n2[data-v-7c3232e0],.my-n2[data-v-7c3232e0]{margin-bottom:-.5rem!important}.ml-n2[data-v-7c3232e0],.mx-n2[data-v-7c3232e0]{margin-left:-.5rem!important}.m-n3[data-v-7c3232e0]{margin:-1rem!important}.mt-n3[data-v-7c3232e0],.my-n3[data-v-7c3232e0]{margin-top:-1rem!important}.mr-n3[data-v-7c3232e0],.mx-n3[data-v-7c3232e0]{margin-right:-1rem!important}.mb-n3[data-v-7c3232e0],.my-n3[data-v-7c3232e0]{margin-bottom:-1rem!important}.ml-n3[data-v-7c3232e0],.mx-n3[data-v-7c3232e0]{margin-left:-1rem!important}.m-n4[data-v-7c3232e0]{margin:-1.5rem!important}.mt-n4[data-v-7c3232e0],.my-n4[data-v-7c3232e0]{margin-top:-1.5rem!important}.mr-n4[data-v-7c3232e0],.mx-n4[data-v-7c3232e0]{margin-right:-1.5rem!important}.mb-n4[data-v-7c3232e0],.my-n4[data-v-7c3232e0]{margin-bottom:-1.5rem!important}.ml-n4[data-v-7c3232e0],.mx-n4[data-v-7c3232e0]{margin-left:-1.5rem!important}.m-n5[data-v-7c3232e0]{margin:-3rem!important}.mt-n5[data-v-7c3232e0],.my-n5[data-v-7c3232e0]{margin-top:-3rem!important}.mr-n5[data-v-7c3232e0],.mx-n5[data-v-7c3232e0]{margin-right:-3rem!important}.mb-n5[data-v-7c3232e0],.my-n5[data-v-7c3232e0]{margin-bottom:-3rem!important}.ml-n5[data-v-7c3232e0],.mx-n5[data-v-7c3232e0]{margin-left:-3rem!important}.m-auto[data-v-7c3232e0]{margin:auto!important}.mt-auto[data-v-7c3232e0],.my-auto[data-v-7c3232e0]{margin-top:auto!important}.mr-auto[data-v-7c3232e0],.mx-auto[data-v-7c3232e0]{margin-right:auto!important}.mb-auto[data-v-7c3232e0],.my-auto[data-v-7c3232e0]{margin-bottom:auto!important}.ml-auto[data-v-7c3232e0],.mx-auto[data-v-7c3232e0]{margin-left:auto!important}@media (min-width:576px){.m-sm-0[data-v-7c3232e0]{margin:0!important}.mt-sm-0[data-v-7c3232e0],.my-sm-0[data-v-7c3232e0]{margin-top:0!important}.mr-sm-0[data-v-7c3232e0],.mx-sm-0[data-v-7c3232e0]{margin-right:0!important}.mb-sm-0[data-v-7c3232e0],.my-sm-0[data-v-7c3232e0]{margin-bottom:0!important}.ml-sm-0[data-v-7c3232e0],.mx-sm-0[data-v-7c3232e0]{margin-left:0!important}.m-sm-1[data-v-7c3232e0]{margin:.25rem!important}.mt-sm-1[data-v-7c3232e0],.my-sm-1[data-v-7c3232e0]{margin-top:.25rem!important}.mr-sm-1[data-v-7c3232e0],.mx-sm-1[data-v-7c3232e0]{margin-right:.25rem!important}.mb-sm-1[data-v-7c3232e0],.my-sm-1[data-v-7c3232e0]{margin-bottom:.25rem!important}.ml-sm-1[data-v-7c3232e0],.mx-sm-1[data-v-7c3232e0]{margin-left:.25rem!important}.m-sm-2[data-v-7c3232e0]{margin:.5rem!important}.mt-sm-2[data-v-7c3232e0],.my-sm-2[data-v-7c3232e0]{margin-top:.5rem!important}.mr-sm-2[data-v-7c3232e0],.mx-sm-2[data-v-7c3232e0]{margin-right:.5rem!important}.mb-sm-2[data-v-7c3232e0],.my-sm-2[data-v-7c3232e0]{margin-bottom:.5rem!important}.ml-sm-2[data-v-7c3232e0],.mx-sm-2[data-v-7c3232e0]{margin-left:.5rem!important}.m-sm-3[data-v-7c3232e0]{margin:1rem!important}.mt-sm-3[data-v-7c3232e0],.my-sm-3[data-v-7c3232e0]{margin-top:1rem!important}.mr-sm-3[data-v-7c3232e0],.mx-sm-3[data-v-7c3232e0]{margin-right:1rem!important}.mb-sm-3[data-v-7c3232e0],.my-sm-3[data-v-7c3232e0]{margin-bottom:1rem!important}.ml-sm-3[data-v-7c3232e0],.mx-sm-3[data-v-7c3232e0]{margin-left:1rem!important}.m-sm-4[data-v-7c3232e0]{margin:1.5rem!important}.mt-sm-4[data-v-7c3232e0],.my-sm-4[data-v-7c3232e0]{margin-top:1.5rem!important}.mr-sm-4[data-v-7c3232e0],.mx-sm-4[data-v-7c3232e0]{margin-right:1.5rem!important}.mb-sm-4[data-v-7c3232e0],.my-sm-4[data-v-7c3232e0]{margin-bottom:1.5rem!important}.ml-sm-4[data-v-7c3232e0],.mx-sm-4[data-v-7c3232e0]{margin-left:1.5rem!important}.m-sm-5[data-v-7c3232e0]{margin:3rem!important}.mt-sm-5[data-v-7c3232e0],.my-sm-5[data-v-7c3232e0]{margin-top:3rem!important}.mr-sm-5[data-v-7c3232e0],.mx-sm-5[data-v-7c3232e0]{margin-right:3rem!important}.mb-sm-5[data-v-7c3232e0],.my-sm-5[data-v-7c3232e0]{margin-bottom:3rem!important}.ml-sm-5[data-v-7c3232e0],.mx-sm-5[data-v-7c3232e0]{margin-left:3rem!important}.p-sm-0[data-v-7c3232e0]{padding:0!important}.pt-sm-0[data-v-7c3232e0],.py-sm-0[data-v-7c3232e0]{padding-top:0!important}.pr-sm-0[data-v-7c3232e0],.px-sm-0[data-v-7c3232e0]{padding-right:0!important}.pb-sm-0[data-v-7c3232e0],.py-sm-0[data-v-7c3232e0]{padding-bottom:0!important}.pl-sm-0[data-v-7c3232e0],.px-sm-0[data-v-7c3232e0]{padding-left:0!important}.p-sm-1[data-v-7c3232e0]{padding:.25rem!important}.pt-sm-1[data-v-7c3232e0],.py-sm-1[data-v-7c3232e0]{padding-top:.25rem!important}.pr-sm-1[data-v-7c3232e0],.px-sm-1[data-v-7c3232e0]{padding-right:.25rem!important}.pb-sm-1[data-v-7c3232e0],.py-sm-1[data-v-7c3232e0]{padding-bottom:.25rem!important}.pl-sm-1[data-v-7c3232e0],.px-sm-1[data-v-7c3232e0]{padding-left:.25rem!important}.p-sm-2[data-v-7c3232e0]{padding:.5rem!important}.pt-sm-2[data-v-7c3232e0],.py-sm-2[data-v-7c3232e0]{padding-top:.5rem!important}.pr-sm-2[data-v-7c3232e0],.px-sm-2[data-v-7c3232e0]{padding-right:.5rem!important}.pb-sm-2[data-v-7c3232e0],.py-sm-2[data-v-7c3232e0]{padding-bottom:.5rem!important}.pl-sm-2[data-v-7c3232e0],.px-sm-2[data-v-7c3232e0]{padding-left:.5rem!important}.p-sm-3[data-v-7c3232e0]{padding:1rem!important}.pt-sm-3[data-v-7c3232e0],.py-sm-3[data-v-7c3232e0]{padding-top:1rem!important}.pr-sm-3[data-v-7c3232e0],.px-sm-3[data-v-7c3232e0]{padding-right:1rem!important}.pb-sm-3[data-v-7c3232e0],.py-sm-3[data-v-7c3232e0]{padding-bottom:1rem!important}.pl-sm-3[data-v-7c3232e0],.px-sm-3[data-v-7c3232e0]{padding-left:1rem!important}.p-sm-4[data-v-7c3232e0]{padding:1.5rem!important}.pt-sm-4[data-v-7c3232e0],.py-sm-4[data-v-7c3232e0]{padding-top:1.5rem!important}.pr-sm-4[data-v-7c3232e0],.px-sm-4[data-v-7c3232e0]{padding-right:1.5rem!important}.pb-sm-4[data-v-7c3232e0],.py-sm-4[data-v-7c3232e0]{padding-bottom:1.5rem!important}.pl-sm-4[data-v-7c3232e0],.px-sm-4[data-v-7c3232e0]{padding-left:1.5rem!important}.p-sm-5[data-v-7c3232e0]{padding:3rem!important}.pt-sm-5[data-v-7c3232e0],.py-sm-5[data-v-7c3232e0]{padding-top:3rem!important}.pr-sm-5[data-v-7c3232e0],.px-sm-5[data-v-7c3232e0]{padding-right:3rem!important}.pb-sm-5[data-v-7c3232e0],.py-sm-5[data-v-7c3232e0]{padding-bottom:3rem!important}.pl-sm-5[data-v-7c3232e0],.px-sm-5[data-v-7c3232e0]{padding-left:3rem!important}.m-sm-n1[data-v-7c3232e0]{margin:-.25rem!important}.mt-sm-n1[data-v-7c3232e0],.my-sm-n1[data-v-7c3232e0]{margin-top:-.25rem!important}.mr-sm-n1[data-v-7c3232e0],.mx-sm-n1[data-v-7c3232e0]{margin-right:-.25rem!important}.mb-sm-n1[data-v-7c3232e0],.my-sm-n1[data-v-7c3232e0]{margin-bottom:-.25rem!important}.ml-sm-n1[data-v-7c3232e0],.mx-sm-n1[data-v-7c3232e0]{margin-left:-.25rem!important}.m-sm-n2[data-v-7c3232e0]{margin:-.5rem!important}.mt-sm-n2[data-v-7c3232e0],.my-sm-n2[data-v-7c3232e0]{margin-top:-.5rem!important}.mr-sm-n2[data-v-7c3232e0],.mx-sm-n2[data-v-7c3232e0]{margin-right:-.5rem!important}.mb-sm-n2[data-v-7c3232e0],.my-sm-n2[data-v-7c3232e0]{margin-bottom:-.5rem!important}.ml-sm-n2[data-v-7c3232e0],.mx-sm-n2[data-v-7c3232e0]{margin-left:-.5rem!important}.m-sm-n3[data-v-7c3232e0]{margin:-1rem!important}.mt-sm-n3[data-v-7c3232e0],.my-sm-n3[data-v-7c3232e0]{margin-top:-1rem!important}.mr-sm-n3[data-v-7c3232e0],.mx-sm-n3[data-v-7c3232e0]{margin-right:-1rem!important}.mb-sm-n3[data-v-7c3232e0],.my-sm-n3[data-v-7c3232e0]{margin-bottom:-1rem!important}.ml-sm-n3[data-v-7c3232e0],.mx-sm-n3[data-v-7c3232e0]{margin-left:-1rem!important}.m-sm-n4[data-v-7c3232e0]{margin:-1.5rem!important}.mt-sm-n4[data-v-7c3232e0],.my-sm-n4[data-v-7c3232e0]{margin-top:-1.5rem!important}.mr-sm-n4[data-v-7c3232e0],.mx-sm-n4[data-v-7c3232e0]{margin-right:-1.5rem!important}.mb-sm-n4[data-v-7c3232e0],.my-sm-n4[data-v-7c3232e0]{margin-bottom:-1.5rem!important}.ml-sm-n4[data-v-7c3232e0],.mx-sm-n4[data-v-7c3232e0]{margin-left:-1.5rem!important}.m-sm-n5[data-v-7c3232e0]{margin:-3rem!important}.mt-sm-n5[data-v-7c3232e0],.my-sm-n5[data-v-7c3232e0]{margin-top:-3rem!important}.mr-sm-n5[data-v-7c3232e0],.mx-sm-n5[data-v-7c3232e0]{margin-right:-3rem!important}.mb-sm-n5[data-v-7c3232e0],.my-sm-n5[data-v-7c3232e0]{margin-bottom:-3rem!important}.ml-sm-n5[data-v-7c3232e0],.mx-sm-n5[data-v-7c3232e0]{margin-left:-3rem!important}.m-sm-auto[data-v-7c3232e0]{margin:auto!important}.mt-sm-auto[data-v-7c3232e0],.my-sm-auto[data-v-7c3232e0]{margin-top:auto!important}.mr-sm-auto[data-v-7c3232e0],.mx-sm-auto[data-v-7c3232e0]{margin-right:auto!important}.mb-sm-auto[data-v-7c3232e0],.my-sm-auto[data-v-7c3232e0]{margin-bottom:auto!important}.ml-sm-auto[data-v-7c3232e0],.mx-sm-auto[data-v-7c3232e0]{margin-left:auto!important}}@media (min-width:768px){.m-md-0[data-v-7c3232e0]{margin:0!important}.mt-md-0[data-v-7c3232e0],.my-md-0[data-v-7c3232e0]{margin-top:0!important}.mr-md-0[data-v-7c3232e0],.mx-md-0[data-v-7c3232e0]{margin-right:0!important}.mb-md-0[data-v-7c3232e0],.my-md-0[data-v-7c3232e0]{margin-bottom:0!important}.ml-md-0[data-v-7c3232e0],.mx-md-0[data-v-7c3232e0]{margin-left:0!important}.m-md-1[data-v-7c3232e0]{margin:.25rem!important}.mt-md-1[data-v-7c3232e0],.my-md-1[data-v-7c3232e0]{margin-top:.25rem!important}.mr-md-1[data-v-7c3232e0],.mx-md-1[data-v-7c3232e0]{margin-right:.25rem!important}.mb-md-1[data-v-7c3232e0],.my-md-1[data-v-7c3232e0]{margin-bottom:.25rem!important}.ml-md-1[data-v-7c3232e0],.mx-md-1[data-v-7c3232e0]{margin-left:.25rem!important}.m-md-2[data-v-7c3232e0]{margin:.5rem!important}.mt-md-2[data-v-7c3232e0],.my-md-2[data-v-7c3232e0]{margin-top:.5rem!important}.mr-md-2[data-v-7c3232e0],.mx-md-2[data-v-7c3232e0]{margin-right:.5rem!important}.mb-md-2[data-v-7c3232e0],.my-md-2[data-v-7c3232e0]{margin-bottom:.5rem!important}.ml-md-2[data-v-7c3232e0],.mx-md-2[data-v-7c3232e0]{margin-left:.5rem!important}.m-md-3[data-v-7c3232e0]{margin:1rem!important}.mt-md-3[data-v-7c3232e0],.my-md-3[data-v-7c3232e0]{margin-top:1rem!important}.mr-md-3[data-v-7c3232e0],.mx-md-3[data-v-7c3232e0]{margin-right:1rem!important}.mb-md-3[data-v-7c3232e0],.my-md-3[data-v-7c3232e0]{margin-bottom:1rem!important}.ml-md-3[data-v-7c3232e0],.mx-md-3[data-v-7c3232e0]{margin-left:1rem!important}.m-md-4[data-v-7c3232e0]{margin:1.5rem!important}.mt-md-4[data-v-7c3232e0],.my-md-4[data-v-7c3232e0]{margin-top:1.5rem!important}.mr-md-4[data-v-7c3232e0],.mx-md-4[data-v-7c3232e0]{margin-right:1.5rem!important}.mb-md-4[data-v-7c3232e0],.my-md-4[data-v-7c3232e0]{margin-bottom:1.5rem!important}.ml-md-4[data-v-7c3232e0],.mx-md-4[data-v-7c3232e0]{margin-left:1.5rem!important}.m-md-5[data-v-7c3232e0]{margin:3rem!important}.mt-md-5[data-v-7c3232e0],.my-md-5[data-v-7c3232e0]{margin-top:3rem!important}.mr-md-5[data-v-7c3232e0],.mx-md-5[data-v-7c3232e0]{margin-right:3rem!important}.mb-md-5[data-v-7c3232e0],.my-md-5[data-v-7c3232e0]{margin-bottom:3rem!important}.ml-md-5[data-v-7c3232e0],.mx-md-5[data-v-7c3232e0]{margin-left:3rem!important}.p-md-0[data-v-7c3232e0]{padding:0!important}.pt-md-0[data-v-7c3232e0],.py-md-0[data-v-7c3232e0]{padding-top:0!important}.pr-md-0[data-v-7c3232e0],.px-md-0[data-v-7c3232e0]{padding-right:0!important}.pb-md-0[data-v-7c3232e0],.py-md-0[data-v-7c3232e0]{padding-bottom:0!important}.pl-md-0[data-v-7c3232e0],.px-md-0[data-v-7c3232e0]{padding-left:0!important}.p-md-1[data-v-7c3232e0]{padding:.25rem!important}.pt-md-1[data-v-7c3232e0],.py-md-1[data-v-7c3232e0]{padding-top:.25rem!important}.pr-md-1[data-v-7c3232e0],.px-md-1[data-v-7c3232e0]{padding-right:.25rem!important}.pb-md-1[data-v-7c3232e0],.py-md-1[data-v-7c3232e0]{padding-bottom:.25rem!important}.pl-md-1[data-v-7c3232e0],.px-md-1[data-v-7c3232e0]{padding-left:.25rem!important}.p-md-2[data-v-7c3232e0]{padding:.5rem!important}.pt-md-2[data-v-7c3232e0],.py-md-2[data-v-7c3232e0]{padding-top:.5rem!important}.pr-md-2[data-v-7c3232e0],.px-md-2[data-v-7c3232e0]{padding-right:.5rem!important}.pb-md-2[data-v-7c3232e0],.py-md-2[data-v-7c3232e0]{padding-bottom:.5rem!important}.pl-md-2[data-v-7c3232e0],.px-md-2[data-v-7c3232e0]{padding-left:.5rem!important}.p-md-3[data-v-7c3232e0]{padding:1rem!important}.pt-md-3[data-v-7c3232e0],.py-md-3[data-v-7c3232e0]{padding-top:1rem!important}.pr-md-3[data-v-7c3232e0],.px-md-3[data-v-7c3232e0]{padding-right:1rem!important}.pb-md-3[data-v-7c3232e0],.py-md-3[data-v-7c3232e0]{padding-bottom:1rem!important}.pl-md-3[data-v-7c3232e0],.px-md-3[data-v-7c3232e0]{padding-left:1rem!important}.p-md-4[data-v-7c3232e0]{padding:1.5rem!important}.pt-md-4[data-v-7c3232e0],.py-md-4[data-v-7c3232e0]{padding-top:1.5rem!important}.pr-md-4[data-v-7c3232e0],.px-md-4[data-v-7c3232e0]{padding-right:1.5rem!important}.pb-md-4[data-v-7c3232e0],.py-md-4[data-v-7c3232e0]{padding-bottom:1.5rem!important}.pl-md-4[data-v-7c3232e0],.px-md-4[data-v-7c3232e0]{padding-left:1.5rem!important}.p-md-5[data-v-7c3232e0]{padding:3rem!important}.pt-md-5[data-v-7c3232e0],.py-md-5[data-v-7c3232e0]{padding-top:3rem!important}.pr-md-5[data-v-7c3232e0],.px-md-5[data-v-7c3232e0]{padding-right:3rem!important}.pb-md-5[data-v-7c3232e0],.py-md-5[data-v-7c3232e0]{padding-bottom:3rem!important}.pl-md-5[data-v-7c3232e0],.px-md-5[data-v-7c3232e0]{padding-left:3rem!important}.m-md-n1[data-v-7c3232e0]{margin:-.25rem!important}.mt-md-n1[data-v-7c3232e0],.my-md-n1[data-v-7c3232e0]{margin-top:-.25rem!important}.mr-md-n1[data-v-7c3232e0],.mx-md-n1[data-v-7c3232e0]{margin-right:-.25rem!important}.mb-md-n1[data-v-7c3232e0],.my-md-n1[data-v-7c3232e0]{margin-bottom:-.25rem!important}.ml-md-n1[data-v-7c3232e0],.mx-md-n1[data-v-7c3232e0]{margin-left:-.25rem!important}.m-md-n2[data-v-7c3232e0]{margin:-.5rem!important}.mt-md-n2[data-v-7c3232e0],.my-md-n2[data-v-7c3232e0]{margin-top:-.5rem!important}.mr-md-n2[data-v-7c3232e0],.mx-md-n2[data-v-7c3232e0]{margin-right:-.5rem!important}.mb-md-n2[data-v-7c3232e0],.my-md-n2[data-v-7c3232e0]{margin-bottom:-.5rem!important}.ml-md-n2[data-v-7c3232e0],.mx-md-n2[data-v-7c3232e0]{margin-left:-.5rem!important}.m-md-n3[data-v-7c3232e0]{margin:-1rem!important}.mt-md-n3[data-v-7c3232e0],.my-md-n3[data-v-7c3232e0]{margin-top:-1rem!important}.mr-md-n3[data-v-7c3232e0],.mx-md-n3[data-v-7c3232e0]{margin-right:-1rem!important}.mb-md-n3[data-v-7c3232e0],.my-md-n3[data-v-7c3232e0]{margin-bottom:-1rem!important}.ml-md-n3[data-v-7c3232e0],.mx-md-n3[data-v-7c3232e0]{margin-left:-1rem!important}.m-md-n4[data-v-7c3232e0]{margin:-1.5rem!important}.mt-md-n4[data-v-7c3232e0],.my-md-n4[data-v-7c3232e0]{margin-top:-1.5rem!important}.mr-md-n4[data-v-7c3232e0],.mx-md-n4[data-v-7c3232e0]{margin-right:-1.5rem!important}.mb-md-n4[data-v-7c3232e0],.my-md-n4[data-v-7c3232e0]{margin-bottom:-1.5rem!important}.ml-md-n4[data-v-7c3232e0],.mx-md-n4[data-v-7c3232e0]{margin-left:-1.5rem!important}.m-md-n5[data-v-7c3232e0]{margin:-3rem!important}.mt-md-n5[data-v-7c3232e0],.my-md-n5[data-v-7c3232e0]{margin-top:-3rem!important}.mr-md-n5[data-v-7c3232e0],.mx-md-n5[data-v-7c3232e0]{margin-right:-3rem!important}.mb-md-n5[data-v-7c3232e0],.my-md-n5[data-v-7c3232e0]{margin-bottom:-3rem!important}.ml-md-n5[data-v-7c3232e0],.mx-md-n5[data-v-7c3232e0]{margin-left:-3rem!important}.m-md-auto[data-v-7c3232e0]{margin:auto!important}.mt-md-auto[data-v-7c3232e0],.my-md-auto[data-v-7c3232e0]{margin-top:auto!important}.mr-md-auto[data-v-7c3232e0],.mx-md-auto[data-v-7c3232e0]{margin-right:auto!important}.mb-md-auto[data-v-7c3232e0],.my-md-auto[data-v-7c3232e0]{margin-bottom:auto!important}.ml-md-auto[data-v-7c3232e0],.mx-md-auto[data-v-7c3232e0]{margin-left:auto!important}}@media (min-width:992px){.m-lg-0[data-v-7c3232e0]{margin:0!important}.mt-lg-0[data-v-7c3232e0],.my-lg-0[data-v-7c3232e0]{margin-top:0!important}.mr-lg-0[data-v-7c3232e0],.mx-lg-0[data-v-7c3232e0]{margin-right:0!important}.mb-lg-0[data-v-7c3232e0],.my-lg-0[data-v-7c3232e0]{margin-bottom:0!important}.ml-lg-0[data-v-7c3232e0],.mx-lg-0[data-v-7c3232e0]{margin-left:0!important}.m-lg-1[data-v-7c3232e0]{margin:.25rem!important}.mt-lg-1[data-v-7c3232e0],.my-lg-1[data-v-7c3232e0]{margin-top:.25rem!important}.mr-lg-1[data-v-7c3232e0],.mx-lg-1[data-v-7c3232e0]{margin-right:.25rem!important}.mb-lg-1[data-v-7c3232e0],.my-lg-1[data-v-7c3232e0]{margin-bottom:.25rem!important}.ml-lg-1[data-v-7c3232e0],.mx-lg-1[data-v-7c3232e0]{margin-left:.25rem!important}.m-lg-2[data-v-7c3232e0]{margin:.5rem!important}.mt-lg-2[data-v-7c3232e0],.my-lg-2[data-v-7c3232e0]{margin-top:.5rem!important}.mr-lg-2[data-v-7c3232e0],.mx-lg-2[data-v-7c3232e0]{margin-right:.5rem!important}.mb-lg-2[data-v-7c3232e0],.my-lg-2[data-v-7c3232e0]{margin-bottom:.5rem!important}.ml-lg-2[data-v-7c3232e0],.mx-lg-2[data-v-7c3232e0]{margin-left:.5rem!important}.m-lg-3[data-v-7c3232e0]{margin:1rem!important}.mt-lg-3[data-v-7c3232e0],.my-lg-3[data-v-7c3232e0]{margin-top:1rem!important}.mr-lg-3[data-v-7c3232e0],.mx-lg-3[data-v-7c3232e0]{margin-right:1rem!important}.mb-lg-3[data-v-7c3232e0],.my-lg-3[data-v-7c3232e0]{margin-bottom:1rem!important}.ml-lg-3[data-v-7c3232e0],.mx-lg-3[data-v-7c3232e0]{margin-left:1rem!important}.m-lg-4[data-v-7c3232e0]{margin:1.5rem!important}.mt-lg-4[data-v-7c3232e0],.my-lg-4[data-v-7c3232e0]{margin-top:1.5rem!important}.mr-lg-4[data-v-7c3232e0],.mx-lg-4[data-v-7c3232e0]{margin-right:1.5rem!important}.mb-lg-4[data-v-7c3232e0],.my-lg-4[data-v-7c3232e0]{margin-bottom:1.5rem!important}.ml-lg-4[data-v-7c3232e0],.mx-lg-4[data-v-7c3232e0]{margin-left:1.5rem!important}.m-lg-5[data-v-7c3232e0]{margin:3rem!important}.mt-lg-5[data-v-7c3232e0],.my-lg-5[data-v-7c3232e0]{margin-top:3rem!important}.mr-lg-5[data-v-7c3232e0],.mx-lg-5[data-v-7c3232e0]{margin-right:3rem!important}.mb-lg-5[data-v-7c3232e0],.my-lg-5[data-v-7c3232e0]{margin-bottom:3rem!important}.ml-lg-5[data-v-7c3232e0],.mx-lg-5[data-v-7c3232e0]{margin-left:3rem!important}.p-lg-0[data-v-7c3232e0]{padding:0!important}.pt-lg-0[data-v-7c3232e0],.py-lg-0[data-v-7c3232e0]{padding-top:0!important}.pr-lg-0[data-v-7c3232e0],.px-lg-0[data-v-7c3232e0]{padding-right:0!important}.pb-lg-0[data-v-7c3232e0],.py-lg-0[data-v-7c3232e0]{padding-bottom:0!important}.pl-lg-0[data-v-7c3232e0],.px-lg-0[data-v-7c3232e0]{padding-left:0!important}.p-lg-1[data-v-7c3232e0]{padding:.25rem!important}.pt-lg-1[data-v-7c3232e0],.py-lg-1[data-v-7c3232e0]{padding-top:.25rem!important}.pr-lg-1[data-v-7c3232e0],.px-lg-1[data-v-7c3232e0]{padding-right:.25rem!important}.pb-lg-1[data-v-7c3232e0],.py-lg-1[data-v-7c3232e0]{padding-bottom:.25rem!important}.pl-lg-1[data-v-7c3232e0],.px-lg-1[data-v-7c3232e0]{padding-left:.25rem!important}.p-lg-2[data-v-7c3232e0]{padding:.5rem!important}.pt-lg-2[data-v-7c3232e0],.py-lg-2[data-v-7c3232e0]{padding-top:.5rem!important}.pr-lg-2[data-v-7c3232e0],.px-lg-2[data-v-7c3232e0]{padding-right:.5rem!important}.pb-lg-2[data-v-7c3232e0],.py-lg-2[data-v-7c3232e0]{padding-bottom:.5rem!important}.pl-lg-2[data-v-7c3232e0],.px-lg-2[data-v-7c3232e0]{padding-left:.5rem!important}.p-lg-3[data-v-7c3232e0]{padding:1rem!important}.pt-lg-3[data-v-7c3232e0],.py-lg-3[data-v-7c3232e0]{padding-top:1rem!important}.pr-lg-3[data-v-7c3232e0],.px-lg-3[data-v-7c3232e0]{padding-right:1rem!important}.pb-lg-3[data-v-7c3232e0],.py-lg-3[data-v-7c3232e0]{padding-bottom:1rem!important}.pl-lg-3[data-v-7c3232e0],.px-lg-3[data-v-7c3232e0]{padding-left:1rem!important}.p-lg-4[data-v-7c3232e0]{padding:1.5rem!important}.pt-lg-4[data-v-7c3232e0],.py-lg-4[data-v-7c3232e0]{padding-top:1.5rem!important}.pr-lg-4[data-v-7c3232e0],.px-lg-4[data-v-7c3232e0]{padding-right:1.5rem!important}.pb-lg-4[data-v-7c3232e0],.py-lg-4[data-v-7c3232e0]{padding-bottom:1.5rem!important}.pl-lg-4[data-v-7c3232e0],.px-lg-4[data-v-7c3232e0]{padding-left:1.5rem!important}.p-lg-5[data-v-7c3232e0]{padding:3rem!important}.pt-lg-5[data-v-7c3232e0],.py-lg-5[data-v-7c3232e0]{padding-top:3rem!important}.pr-lg-5[data-v-7c3232e0],.px-lg-5[data-v-7c3232e0]{padding-right:3rem!important}.pb-lg-5[data-v-7c3232e0],.py-lg-5[data-v-7c3232e0]{padding-bottom:3rem!important}.pl-lg-5[data-v-7c3232e0],.px-lg-5[data-v-7c3232e0]{padding-left:3rem!important}.m-lg-n1[data-v-7c3232e0]{margin:-.25rem!important}.mt-lg-n1[data-v-7c3232e0],.my-lg-n1[data-v-7c3232e0]{margin-top:-.25rem!important}.mr-lg-n1[data-v-7c3232e0],.mx-lg-n1[data-v-7c3232e0]{margin-right:-.25rem!important}.mb-lg-n1[data-v-7c3232e0],.my-lg-n1[data-v-7c3232e0]{margin-bottom:-.25rem!important}.ml-lg-n1[data-v-7c3232e0],.mx-lg-n1[data-v-7c3232e0]{margin-left:-.25rem!important}.m-lg-n2[data-v-7c3232e0]{margin:-.5rem!important}.mt-lg-n2[data-v-7c3232e0],.my-lg-n2[data-v-7c3232e0]{margin-top:-.5rem!important}.mr-lg-n2[data-v-7c3232e0],.mx-lg-n2[data-v-7c3232e0]{margin-right:-.5rem!important}.mb-lg-n2[data-v-7c3232e0],.my-lg-n2[data-v-7c3232e0]{margin-bottom:-.5rem!important}.ml-lg-n2[data-v-7c3232e0],.mx-lg-n2[data-v-7c3232e0]{margin-left:-.5rem!important}.m-lg-n3[data-v-7c3232e0]{margin:-1rem!important}.mt-lg-n3[data-v-7c3232e0],.my-lg-n3[data-v-7c3232e0]{margin-top:-1rem!important}.mr-lg-n3[data-v-7c3232e0],.mx-lg-n3[data-v-7c3232e0]{margin-right:-1rem!important}.mb-lg-n3[data-v-7c3232e0],.my-lg-n3[data-v-7c3232e0]{margin-bottom:-1rem!important}.ml-lg-n3[data-v-7c3232e0],.mx-lg-n3[data-v-7c3232e0]{margin-left:-1rem!important}.m-lg-n4[data-v-7c3232e0]{margin:-1.5rem!important}.mt-lg-n4[data-v-7c3232e0],.my-lg-n4[data-v-7c3232e0]{margin-top:-1.5rem!important}.mr-lg-n4[data-v-7c3232e0],.mx-lg-n4[data-v-7c3232e0]{margin-right:-1.5rem!important}.mb-lg-n4[data-v-7c3232e0],.my-lg-n4[data-v-7c3232e0]{margin-bottom:-1.5rem!important}.ml-lg-n4[data-v-7c3232e0],.mx-lg-n4[data-v-7c3232e0]{margin-left:-1.5rem!important}.m-lg-n5[data-v-7c3232e0]{margin:-3rem!important}.mt-lg-n5[data-v-7c3232e0],.my-lg-n5[data-v-7c3232e0]{margin-top:-3rem!important}.mr-lg-n5[data-v-7c3232e0],.mx-lg-n5[data-v-7c3232e0]{margin-right:-3rem!important}.mb-lg-n5[data-v-7c3232e0],.my-lg-n5[data-v-7c3232e0]{margin-bottom:-3rem!important}.ml-lg-n5[data-v-7c3232e0],.mx-lg-n5[data-v-7c3232e0]{margin-left:-3rem!important}.m-lg-auto[data-v-7c3232e0]{margin:auto!important}.mt-lg-auto[data-v-7c3232e0],.my-lg-auto[data-v-7c3232e0]{margin-top:auto!important}.mr-lg-auto[data-v-7c3232e0],.mx-lg-auto[data-v-7c3232e0]{margin-right:auto!important}.mb-lg-auto[data-v-7c3232e0],.my-lg-auto[data-v-7c3232e0]{margin-bottom:auto!important}.ml-lg-auto[data-v-7c3232e0],.mx-lg-auto[data-v-7c3232e0]{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0[data-v-7c3232e0]{margin:0!important}.mt-xl-0[data-v-7c3232e0],.my-xl-0[data-v-7c3232e0]{margin-top:0!important}.mr-xl-0[data-v-7c3232e0],.mx-xl-0[data-v-7c3232e0]{margin-right:0!important}.mb-xl-0[data-v-7c3232e0],.my-xl-0[data-v-7c3232e0]{margin-bottom:0!important}.ml-xl-0[data-v-7c3232e0],.mx-xl-0[data-v-7c3232e0]{margin-left:0!important}.m-xl-1[data-v-7c3232e0]{margin:.25rem!important}.mt-xl-1[data-v-7c3232e0],.my-xl-1[data-v-7c3232e0]{margin-top:.25rem!important}.mr-xl-1[data-v-7c3232e0],.mx-xl-1[data-v-7c3232e0]{margin-right:.25rem!important}.mb-xl-1[data-v-7c3232e0],.my-xl-1[data-v-7c3232e0]{margin-bottom:.25rem!important}.ml-xl-1[data-v-7c3232e0],.mx-xl-1[data-v-7c3232e0]{margin-left:.25rem!important}.m-xl-2[data-v-7c3232e0]{margin:.5rem!important}.mt-xl-2[data-v-7c3232e0],.my-xl-2[data-v-7c3232e0]{margin-top:.5rem!important}.mr-xl-2[data-v-7c3232e0],.mx-xl-2[data-v-7c3232e0]{margin-right:.5rem!important}.mb-xl-2[data-v-7c3232e0],.my-xl-2[data-v-7c3232e0]{margin-bottom:.5rem!important}.ml-xl-2[data-v-7c3232e0],.mx-xl-2[data-v-7c3232e0]{margin-left:.5rem!important}.m-xl-3[data-v-7c3232e0]{margin:1rem!important}.mt-xl-3[data-v-7c3232e0],.my-xl-3[data-v-7c3232e0]{margin-top:1rem!important}.mr-xl-3[data-v-7c3232e0],.mx-xl-3[data-v-7c3232e0]{margin-right:1rem!important}.mb-xl-3[data-v-7c3232e0],.my-xl-3[data-v-7c3232e0]{margin-bottom:1rem!important}.ml-xl-3[data-v-7c3232e0],.mx-xl-3[data-v-7c3232e0]{margin-left:1rem!important}.m-xl-4[data-v-7c3232e0]{margin:1.5rem!important}.mt-xl-4[data-v-7c3232e0],.my-xl-4[data-v-7c3232e0]{margin-top:1.5rem!important}.mr-xl-4[data-v-7c3232e0],.mx-xl-4[data-v-7c3232e0]{margin-right:1.5rem!important}.mb-xl-4[data-v-7c3232e0],.my-xl-4[data-v-7c3232e0]{margin-bottom:1.5rem!important}.ml-xl-4[data-v-7c3232e0],.mx-xl-4[data-v-7c3232e0]{margin-left:1.5rem!important}.m-xl-5[data-v-7c3232e0]{margin:3rem!important}.mt-xl-5[data-v-7c3232e0],.my-xl-5[data-v-7c3232e0]{margin-top:3rem!important}.mr-xl-5[data-v-7c3232e0],.mx-xl-5[data-v-7c3232e0]{margin-right:3rem!important}.mb-xl-5[data-v-7c3232e0],.my-xl-5[data-v-7c3232e0]{margin-bottom:3rem!important}.ml-xl-5[data-v-7c3232e0],.mx-xl-5[data-v-7c3232e0]{margin-left:3rem!important}.p-xl-0[data-v-7c3232e0]{padding:0!important}.pt-xl-0[data-v-7c3232e0],.py-xl-0[data-v-7c3232e0]{padding-top:0!important}.pr-xl-0[data-v-7c3232e0],.px-xl-0[data-v-7c3232e0]{padding-right:0!important}.pb-xl-0[data-v-7c3232e0],.py-xl-0[data-v-7c3232e0]{padding-bottom:0!important}.pl-xl-0[data-v-7c3232e0],.px-xl-0[data-v-7c3232e0]{padding-left:0!important}.p-xl-1[data-v-7c3232e0]{padding:.25rem!important}.pt-xl-1[data-v-7c3232e0],.py-xl-1[data-v-7c3232e0]{padding-top:.25rem!important}.pr-xl-1[data-v-7c3232e0],.px-xl-1[data-v-7c3232e0]{padding-right:.25rem!important}.pb-xl-1[data-v-7c3232e0],.py-xl-1[data-v-7c3232e0]{padding-bottom:.25rem!important}.pl-xl-1[data-v-7c3232e0],.px-xl-1[data-v-7c3232e0]{padding-left:.25rem!important}.p-xl-2[data-v-7c3232e0]{padding:.5rem!important}.pt-xl-2[data-v-7c3232e0],.py-xl-2[data-v-7c3232e0]{padding-top:.5rem!important}.pr-xl-2[data-v-7c3232e0],.px-xl-2[data-v-7c3232e0]{padding-right:.5rem!important}.pb-xl-2[data-v-7c3232e0],.py-xl-2[data-v-7c3232e0]{padding-bottom:.5rem!important}.pl-xl-2[data-v-7c3232e0],.px-xl-2[data-v-7c3232e0]{padding-left:.5rem!important}.p-xl-3[data-v-7c3232e0]{padding:1rem!important}.pt-xl-3[data-v-7c3232e0],.py-xl-3[data-v-7c3232e0]{padding-top:1rem!important}.pr-xl-3[data-v-7c3232e0],.px-xl-3[data-v-7c3232e0]{padding-right:1rem!important}.pb-xl-3[data-v-7c3232e0],.py-xl-3[data-v-7c3232e0]{padding-bottom:1rem!important}.pl-xl-3[data-v-7c3232e0],.px-xl-3[data-v-7c3232e0]{padding-left:1rem!important}.p-xl-4[data-v-7c3232e0]{padding:1.5rem!important}.pt-xl-4[data-v-7c3232e0],.py-xl-4[data-v-7c3232e0]{padding-top:1.5rem!important}.pr-xl-4[data-v-7c3232e0],.px-xl-4[data-v-7c3232e0]{padding-right:1.5rem!important}.pb-xl-4[data-v-7c3232e0],.py-xl-4[data-v-7c3232e0]{padding-bottom:1.5rem!important}.pl-xl-4[data-v-7c3232e0],.px-xl-4[data-v-7c3232e0]{padding-left:1.5rem!important}.p-xl-5[data-v-7c3232e0]{padding:3rem!important}.pt-xl-5[data-v-7c3232e0],.py-xl-5[data-v-7c3232e0]{padding-top:3rem!important}.pr-xl-5[data-v-7c3232e0],.px-xl-5[data-v-7c3232e0]{padding-right:3rem!important}.pb-xl-5[data-v-7c3232e0],.py-xl-5[data-v-7c3232e0]{padding-bottom:3rem!important}.pl-xl-5[data-v-7c3232e0],.px-xl-5[data-v-7c3232e0]{padding-left:3rem!important}.m-xl-n1[data-v-7c3232e0]{margin:-.25rem!important}.mt-xl-n1[data-v-7c3232e0],.my-xl-n1[data-v-7c3232e0]{margin-top:-.25rem!important}.mr-xl-n1[data-v-7c3232e0],.mx-xl-n1[data-v-7c3232e0]{margin-right:-.25rem!important}.mb-xl-n1[data-v-7c3232e0],.my-xl-n1[data-v-7c3232e0]{margin-bottom:-.25rem!important}.ml-xl-n1[data-v-7c3232e0],.mx-xl-n1[data-v-7c3232e0]{margin-left:-.25rem!important}.m-xl-n2[data-v-7c3232e0]{margin:-.5rem!important}.mt-xl-n2[data-v-7c3232e0],.my-xl-n2[data-v-7c3232e0]{margin-top:-.5rem!important}.mr-xl-n2[data-v-7c3232e0],.mx-xl-n2[data-v-7c3232e0]{margin-right:-.5rem!important}.mb-xl-n2[data-v-7c3232e0],.my-xl-n2[data-v-7c3232e0]{margin-bottom:-.5rem!important}.ml-xl-n2[data-v-7c3232e0],.mx-xl-n2[data-v-7c3232e0]{margin-left:-.5rem!important}.m-xl-n3[data-v-7c3232e0]{margin:-1rem!important}.mt-xl-n3[data-v-7c3232e0],.my-xl-n3[data-v-7c3232e0]{margin-top:-1rem!important}.mr-xl-n3[data-v-7c3232e0],.mx-xl-n3[data-v-7c3232e0]{margin-right:-1rem!important}.mb-xl-n3[data-v-7c3232e0],.my-xl-n3[data-v-7c3232e0]{margin-bottom:-1rem!important}.ml-xl-n3[data-v-7c3232e0],.mx-xl-n3[data-v-7c3232e0]{margin-left:-1rem!important}.m-xl-n4[data-v-7c3232e0]{margin:-1.5rem!important}.mt-xl-n4[data-v-7c3232e0],.my-xl-n4[data-v-7c3232e0]{margin-top:-1.5rem!important}.mr-xl-n4[data-v-7c3232e0],.mx-xl-n4[data-v-7c3232e0]{margin-right:-1.5rem!important}.mb-xl-n4[data-v-7c3232e0],.my-xl-n4[data-v-7c3232e0]{margin-bottom:-1.5rem!important}.ml-xl-n4[data-v-7c3232e0],.mx-xl-n4[data-v-7c3232e0]{margin-left:-1.5rem!important}.m-xl-n5[data-v-7c3232e0]{margin:-3rem!important}.mt-xl-n5[data-v-7c3232e0],.my-xl-n5[data-v-7c3232e0]{margin-top:-3rem!important}.mr-xl-n5[data-v-7c3232e0],.mx-xl-n5[data-v-7c3232e0]{margin-right:-3rem!important}.mb-xl-n5[data-v-7c3232e0],.my-xl-n5[data-v-7c3232e0]{margin-bottom:-3rem!important}.ml-xl-n5[data-v-7c3232e0],.mx-xl-n5[data-v-7c3232e0]{margin-left:-3rem!important}.m-xl-auto[data-v-7c3232e0]{margin:auto!important}.mt-xl-auto[data-v-7c3232e0],.my-xl-auto[data-v-7c3232e0]{margin-top:auto!important}.mr-xl-auto[data-v-7c3232e0],.mx-xl-auto[data-v-7c3232e0]{margin-right:auto!important}.mb-xl-auto[data-v-7c3232e0],.my-xl-auto[data-v-7c3232e0]{margin-bottom:auto!important}.ml-xl-auto[data-v-7c3232e0],.mx-xl-auto[data-v-7c3232e0]{margin-left:auto!important}}.stretched-link[data-v-7c3232e0]:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.text-monospace[data-v-7c3232e0]{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify[data-v-7c3232e0]{text-align:justify!important}.text-wrap[data-v-7c3232e0]{white-space:normal!important}.text-nowrap[data-v-7c3232e0]{white-space:nowrap!important}.text-truncate[data-v-7c3232e0]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left[data-v-7c3232e0]{text-align:left!important}.text-right[data-v-7c3232e0]{text-align:right!important}.text-center[data-v-7c3232e0]{text-align:center!important}@media (min-width:576px){.text-sm-left[data-v-7c3232e0]{text-align:left!important}.text-sm-right[data-v-7c3232e0]{text-align:right!important}.text-sm-center[data-v-7c3232e0]{text-align:center!important}}@media (min-width:768px){.text-md-left[data-v-7c3232e0]{text-align:left!important}.text-md-right[data-v-7c3232e0]{text-align:right!important}.text-md-center[data-v-7c3232e0]{text-align:center!important}}@media (min-width:992px){.text-lg-left[data-v-7c3232e0]{text-align:left!important}.text-lg-right[data-v-7c3232e0]{text-align:right!important}.text-lg-center[data-v-7c3232e0]{text-align:center!important}}@media (min-width:1200px){.text-xl-left[data-v-7c3232e0]{text-align:left!important}.text-xl-right[data-v-7c3232e0]{text-align:right!important}.text-xl-center[data-v-7c3232e0]{text-align:center!important}}.text-lowercase[data-v-7c3232e0]{text-transform:lowercase!important}.text-uppercase[data-v-7c3232e0]{text-transform:uppercase!important}.text-capitalize[data-v-7c3232e0]{text-transform:capitalize!important}.font-weight-light[data-v-7c3232e0]{font-weight:300!important}.font-weight-lighter[data-v-7c3232e0]{font-weight:lighter!important}.font-weight-normal[data-v-7c3232e0]{font-weight:400!important}.font-weight-bold[data-v-7c3232e0]{font-weight:700!important}.font-weight-bolder[data-v-7c3232e0]{font-weight:bolder!important}.font-italic[data-v-7c3232e0]{font-style:italic!important}.text-white[data-v-7c3232e0]{color:#fff!important}.text-primary[data-v-7c3232e0]{color:#203040!important}a.text-primary[data-v-7c3232e0]:focus,a.text-primary[data-v-7c3232e0]:hover{color:#070a0d!important}.text-secondary[data-v-7c3232e0]{color:#ce0cb7!important}a.text-secondary[data-v-7c3232e0]:focus,a.text-secondary[data-v-7c3232e0]:hover{color:#860877!important}.text-success[data-v-7c3232e0]{color:#28a745!important}a.text-success[data-v-7c3232e0]:focus,a.text-success[data-v-7c3232e0]:hover{color:#19692c!important}.text-info[data-v-7c3232e0]{color:#17a2b8!important}a.text-info[data-v-7c3232e0]:focus,a.text-info[data-v-7c3232e0]:hover{color:#0f6674!important}.text-warning[data-v-7c3232e0]{color:#ffc107!important}a.text-warning[data-v-7c3232e0]:focus,a.text-warning[data-v-7c3232e0]:hover{color:#ba8b00!important}.text-danger[data-v-7c3232e0]{color:#dc3545!important}a.text-danger[data-v-7c3232e0]:focus,a.text-danger[data-v-7c3232e0]:hover{color:#a71d2a!important}.text-light[data-v-7c3232e0]{color:#f8f9fa!important}a.text-light[data-v-7c3232e0]:focus,a.text-light[data-v-7c3232e0]:hover{color:#cbd3da!important}.text-dark[data-v-7c3232e0]{color:#343a40!important}a.text-dark[data-v-7c3232e0]:focus,a.text-dark[data-v-7c3232e0]:hover{color:#121416!important}.text-body[data-v-7c3232e0]{color:#a79e8b!important}.text-muted[data-v-7c3232e0]{color:#6c757d!important}.text-black-50[data-v-7c3232e0]{color:rgba(0,0,0,.5)!important}.text-white-50[data-v-7c3232e0]{color:hsla(0,0%,100%,.5)!important}.text-hide[data-v-7c3232e0]{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none[data-v-7c3232e0]{text-decoration:none!important}.text-break[data-v-7c3232e0]{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset[data-v-7c3232e0]{color:inherit!important}.visible[data-v-7c3232e0]{visibility:visible!important}.invisible[data-v-7c3232e0]{visibility:hidden!important}@media print{[data-v-7c3232e0],[data-v-7c3232e0]:after,[data-v-7c3232e0]:before{text-shadow:none!important;box-shadow:none!important}a[data-v-7c3232e0]:not(.btn){text-decoration:underline}abbr[title][data-v-7c3232e0]:after{content:" (" attr(title) ")"}pre[data-v-7c3232e0]{white-space:pre-wrap!important}blockquote[data-v-7c3232e0],pre[data-v-7c3232e0]{border:1px solid #adb5bd;page-break-inside:avoid}thead[data-v-7c3232e0]{display:table-header-group}img[data-v-7c3232e0],tr[data-v-7c3232e0]{page-break-inside:avoid}h2[data-v-7c3232e0],h3[data-v-7c3232e0],p[data-v-7c3232e0]{orphans:3;widows:3}h2[data-v-7c3232e0],h3[data-v-7c3232e0]{page-break-after:avoid}@page{size:a3}.container[data-v-7c3232e0],body[data-v-7c3232e0]{min-width:992px!important}.navbar[data-v-7c3232e0]{display:none}.badge[data-v-7c3232e0]{border:1px solid #000}.table[data-v-7c3232e0]{border-collapse:collapse!important}.table td[data-v-7c3232e0],.table th[data-v-7c3232e0]{background-color:#fff!important}.table-bordered td[data-v-7c3232e0],.table-bordered th[data-v-7c3232e0]{border:1px solid #dee2e6!important}.table-dark[data-v-7c3232e0]{color:inherit}.table-dark tbody+tbody[data-v-7c3232e0],.table-dark td[data-v-7c3232e0],.table-dark th[data-v-7c3232e0],.table-dark thead th[data-v-7c3232e0]{border-color:#dee2e6}.table .thead-dark th[data-v-7c3232e0]{color:inherit;border-color:#dee2e6}}.btn-group .dropdown-toggle-split[data-v-7c3232e0]{margin-bottom:8px}[data-v-7c3232e0]{-webkit-tap-highlight-color:rgba(0,0,0,0)}.sticky[data-v-7c3232e0]{position:sticky;top:0;z-index:9999}.btn[data-v-7c3232e0]:focus,.dropdown-item[data-v-7c3232e0]:focus{outline:none}.alert-dismissible .close[data-v-7c3232e0]{cursor:pointer}label.btn[data-v-7c3232e0]:hover{text-decoration:none;cursor:pointer}.progress-bar[data-v-7c3232e0],.text-muted[data-v-7c3232e0]{color:#a79e8b!important}.btn[data-v-7c3232e0],.card[data-v-7c3232e0],.dropdown-toggle[data-v-7c3232e0]:after,.jumbotron[data-v-7c3232e0],.list-group-item[data-v-7c3232e0],.modal-content[data-v-7c3232e0]{border:1px solid #507386!important}.app-view-mode-embed .card[data-v-7c3232e0],.app-view-mode-embed .list-group-item[data-v-7c3232e0]{border:none!important}.app-view-mode-embed .card[data-v-7c3232e0],.list-group-item[data-v-7c3232e0]{border-left:none!important;border-right:none!important}.app-view-mode-embed .card[data-v-7c3232e0]{border-top:none!important}.card-body.header[data-v-7c3232e0]{border-bottom:1px solid #507386!important}.list-group-item[data-v-7c3232e0]{margin-bottom:-1px!important}.jumbotron[data-v-7c3232e0]{border:1px solid #2a3c46!important}.dropdown-item.active[data-v-7c3232e0]{background-color:#203040!important}.dark .dropdown-item[data-v-7c3232e0]:focus,.dropdown-item[data-v-7c3232e0]:hover{outline:1px solid #507386!important;outline-offset:-1px;background-color:initial}.alert[data-v-7c3232e0],.card[data-v-7c3232e0],.dropdown-menu[data-v-7c3232e0],.list-group-item[data-v-7c3232e0],.modal-content[data-v-7c3232e0],.progress-bar[data-v-7c3232e0]{background-color:#101417!important}.card[data-v-7c3232e0]{background-color:initial!important}.btn[data-v-7c3232e0]{color:#a79e8b}.btn span[data-v-7c3232e0]{background-color:#101417}.btn-danger[data-v-7c3232e0]{background-color:#203040!important}a[data-v-7c3232e0]{background-color:#203040;padding:.2rem;color:#80b6cc!important}a[data-v-7c3232e0]:hover{color:#80b6cc!important;background-color:initial;text-decoration:underline!important}.dropdown-toggle[data-v-7c3232e0]:after{border-color:transparent!important;border-top:.3em solid!important;border-right:.3em solid transparent!important;border-bottom:0!important;border-left:.3em solid transparent!important}input[data-v-7c3232e0],select[data-v-7c3232e0],textarea[data-v-7c3232e0]{background-color:#203040!important;color:#a79e8b!important;border:1px solid #507386!important}a.vast-blocker[data-v-7c3232e0]{background:none!important}.modal-header[data-v-7c3232e0]{border-bottom:none!important}.modal-footer[data-v-7c3232e0]{border-top:none!important}.modal-content .close[data-v-7c3232e0]{text-shadow:none!important;color:#507386!important;padding:0;margin:0}.modal-content .close[data-v-7c3232e0]:after,.modal-content .close[data-v-7c3232e0]:before{background-color:initial!important}body[data-v-7c3232e0]::-webkit-scrollbar{display:none}.modal-backdrop[data-v-7c3232e0]{opacity:.7}.my-btn-link[data-v-7c3232e0]{background-color:#203040}.my-btn-link[data-v-7c3232e0]:hover{background:#0f171e;color:#fff!important}.btn span[data-v-7c3232e0]{background:none!important}@media (max-width:576px){.modal-content[data-v-7c3232e0]{border-radius:0;border-left:none!important;border-right:none!important}.modal-dialog[data-v-7c3232e0]{width:100vw;margin:0}}img[data-v-7c3232e0]{width:100%;margin:0;padding:0;height:100%;min-height:4.5rem} \ No newline at end of file + */[data-v-7c3232e0]:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#203040;--secondary:#ce0cb7;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}[data-v-7c3232e0],[data-v-7c3232e0]:after,[data-v-7c3232e0]:before{box-sizing:border-box}html[data-v-7c3232e0]{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article[data-v-7c3232e0],aside[data-v-7c3232e0],figcaption[data-v-7c3232e0],figure[data-v-7c3232e0],footer[data-v-7c3232e0],header[data-v-7c3232e0],hgroup[data-v-7c3232e0],main[data-v-7c3232e0],nav[data-v-7c3232e0],section[data-v-7c3232e0]{display:block}body[data-v-7c3232e0]{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:1rem;font-weight:400;line-height:1.5;color:#a79e8b;text-align:left;background-color:#101417}[tabindex="-1"][data-v-7c3232e0]:focus:not(:focus-visible){outline:0!important}hr[data-v-7c3232e0]{box-sizing:initial;height:0;overflow:visible}h1[data-v-7c3232e0],h2[data-v-7c3232e0],h3[data-v-7c3232e0],h4[data-v-7c3232e0],h5[data-v-7c3232e0],h6[data-v-7c3232e0]{margin-top:0;margin-bottom:.5rem}p[data-v-7c3232e0]{margin-top:0;margin-bottom:1rem}abbr[data-original-title][data-v-7c3232e0],abbr[title][data-v-7c3232e0]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address[data-v-7c3232e0]{margin-bottom:1rem;font-style:normal;line-height:inherit}dl[data-v-7c3232e0],ol[data-v-7c3232e0],ul[data-v-7c3232e0]{margin-top:0;margin-bottom:1rem}ol ol[data-v-7c3232e0],ol ul[data-v-7c3232e0],ul ol[data-v-7c3232e0],ul ul[data-v-7c3232e0]{margin-bottom:0}dt[data-v-7c3232e0]{font-weight:700}dd[data-v-7c3232e0]{margin-bottom:.5rem;margin-left:0}blockquote[data-v-7c3232e0]{margin:0 0 1rem}b[data-v-7c3232e0],strong[data-v-7c3232e0]{font-weight:bolder}small[data-v-7c3232e0]{font-size:80%}sub[data-v-7c3232e0],sup[data-v-7c3232e0]{position:relative;font-size:75%;line-height:0;vertical-align:initial}sub[data-v-7c3232e0]{bottom:-.25em}sup[data-v-7c3232e0]{top:-.5em}a[data-v-7c3232e0]{color:#80b6cc;text-decoration:none;background-color:initial}a[data-v-7c3232e0]:hover{color:#4997b6;text-decoration:underline}a[data-v-7c3232e0]:not([href]):not([class]),a[data-v-7c3232e0]:not([href]):not([class]):hover{color:inherit;text-decoration:none}code[data-v-7c3232e0],kbd[data-v-7c3232e0],pre[data-v-7c3232e0],samp[data-v-7c3232e0]{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre[data-v-7c3232e0]{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure[data-v-7c3232e0]{margin:0 0 1rem}img[data-v-7c3232e0]{vertical-align:middle;border-style:none}svg[data-v-7c3232e0]{overflow:hidden;vertical-align:middle}table[data-v-7c3232e0]{border-collapse:collapse}caption[data-v-7c3232e0]{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th[data-v-7c3232e0]{text-align:inherit}label[data-v-7c3232e0]{display:inline-block;margin-bottom:.5rem}button[data-v-7c3232e0]{border-radius:0}button[data-v-7c3232e0]:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button[data-v-7c3232e0],input[data-v-7c3232e0],optgroup[data-v-7c3232e0],select[data-v-7c3232e0],textarea[data-v-7c3232e0]{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button[data-v-7c3232e0],input[data-v-7c3232e0]{overflow:visible}button[data-v-7c3232e0],select[data-v-7c3232e0]{text-transform:none}[role=button][data-v-7c3232e0]{cursor:pointer}select[data-v-7c3232e0]{word-wrap:normal}[type=button][data-v-7c3232e0],[type=reset][data-v-7c3232e0],[type=submit][data-v-7c3232e0],button[data-v-7c3232e0]{-webkit-appearance:button}[type=button][data-v-7c3232e0]:not(:disabled),[type=reset][data-v-7c3232e0]:not(:disabled),[type=submit][data-v-7c3232e0]:not(:disabled),button[data-v-7c3232e0]:not(:disabled){cursor:pointer}[type=button][data-v-7c3232e0]::-moz-focus-inner,[type=reset][data-v-7c3232e0]::-moz-focus-inner,[type=submit][data-v-7c3232e0]::-moz-focus-inner,button[data-v-7c3232e0]::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox][data-v-7c3232e0],input[type=radio][data-v-7c3232e0]{box-sizing:border-box;padding:0}textarea[data-v-7c3232e0]{overflow:auto;resize:vertical}fieldset[data-v-7c3232e0]{min-width:0;padding:0;margin:0;border:0}legend[data-v-7c3232e0]{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress[data-v-7c3232e0]{vertical-align:initial}[type=number][data-v-7c3232e0]::-webkit-inner-spin-button,[type=number][data-v-7c3232e0]::-webkit-outer-spin-button{height:auto}[type=search][data-v-7c3232e0]{outline-offset:-2px;-webkit-appearance:none}[type=search][data-v-7c3232e0]::-webkit-search-decoration{-webkit-appearance:none}[data-v-7c3232e0]::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output[data-v-7c3232e0]{display:inline-block}summary[data-v-7c3232e0]{display:list-item;cursor:pointer}template[data-v-7c3232e0]{display:none}[hidden][data-v-7c3232e0]{display:none!important}.h1[data-v-7c3232e0],.h2[data-v-7c3232e0],.h3[data-v-7c3232e0],.h4[data-v-7c3232e0],.h5[data-v-7c3232e0],.h6[data-v-7c3232e0],h1[data-v-7c3232e0],h2[data-v-7c3232e0],h3[data-v-7c3232e0],h4[data-v-7c3232e0],h5[data-v-7c3232e0],h6[data-v-7c3232e0]{margin-bottom:.5rem;font-weight:500;line-height:1.2;color:#f78e66}.h1[data-v-7c3232e0],h1[data-v-7c3232e0]{font-size:2.5rem}.h2[data-v-7c3232e0],h2[data-v-7c3232e0]{font-size:2rem}.h3[data-v-7c3232e0],h3[data-v-7c3232e0]{font-size:1.75rem}.h4[data-v-7c3232e0],h4[data-v-7c3232e0]{font-size:1.5rem}.h5[data-v-7c3232e0],h5[data-v-7c3232e0]{font-size:1.25rem}.h6[data-v-7c3232e0],h6[data-v-7c3232e0]{font-size:1rem}.lead[data-v-7c3232e0]{font-size:1.25rem;font-weight:300}.display-1[data-v-7c3232e0]{font-size:6rem;font-weight:300;line-height:1.2}.display-2[data-v-7c3232e0]{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3[data-v-7c3232e0]{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4[data-v-7c3232e0]{font-size:3.5rem;font-weight:300;line-height:1.2}hr[data-v-7c3232e0]{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small[data-v-7c3232e0],small[data-v-7c3232e0]{font-size:80%;font-weight:400}.mark[data-v-7c3232e0],mark[data-v-7c3232e0]{padding:.2em;background-color:#fcf8e3}.list-inline[data-v-7c3232e0],.list-unstyled[data-v-7c3232e0]{padding-left:0;list-style:none}.list-inline-item[data-v-7c3232e0]{display:inline-block}.list-inline-item[data-v-7c3232e0]:not(:last-child){margin-right:.5rem}.initialism[data-v-7c3232e0]{font-size:90%;text-transform:uppercase}.blockquote[data-v-7c3232e0]{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer[data-v-7c3232e0]{display:block;font-size:80%;color:#6c757d}.blockquote-footer[data-v-7c3232e0]:before{content:"\2014\A0"}.img-fluid[data-v-7c3232e0]{max-width:100%;height:auto}.img-thumbnail[data-v-7c3232e0]{padding:.25rem;background-color:#101417;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure[data-v-7c3232e0]{display:inline-block}.figure-img[data-v-7c3232e0]{margin-bottom:.5rem;line-height:1}.figure-caption[data-v-7c3232e0]{font-size:90%;color:#6c757d}code[data-v-7c3232e0]{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code[data-v-7c3232e0]{color:inherit}kbd[data-v-7c3232e0]{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd[data-v-7c3232e0]{padding:0;font-size:100%;font-weight:700}pre[data-v-7c3232e0]{display:block;font-size:87.5%;color:#212529}pre code[data-v-7c3232e0]{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable[data-v-7c3232e0]{max-height:340px;overflow-y:scroll}.container-fluid[data-v-7c3232e0],.container-lg[data-v-7c3232e0],.container-md[data-v-7c3232e0],.container-sm[data-v-7c3232e0],.container-xl[data-v-7c3232e0],.container[data-v-7c3232e0]{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container-sm[data-v-7c3232e0],.container[data-v-7c3232e0]{max-width:540px}}@media (min-width:768px){.container-md[data-v-7c3232e0],.container-sm[data-v-7c3232e0],.container[data-v-7c3232e0]{max-width:720px}}@media (min-width:992px){.container-lg[data-v-7c3232e0],.container-md[data-v-7c3232e0],.container-sm[data-v-7c3232e0],.container[data-v-7c3232e0]{max-width:960px}}@media (min-width:1200px){.container-lg[data-v-7c3232e0],.container-md[data-v-7c3232e0],.container-sm[data-v-7c3232e0],.container-xl[data-v-7c3232e0],.container[data-v-7c3232e0]{max-width:1140px}}.row[data-v-7c3232e0]{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters[data-v-7c3232e0]{margin-right:0;margin-left:0}.no-gutters>.col[data-v-7c3232e0],.no-gutters>[class*=col-][data-v-7c3232e0]{padding-right:0;padding-left:0}.col-1[data-v-7c3232e0],.col-2[data-v-7c3232e0],.col-3[data-v-7c3232e0],.col-4[data-v-7c3232e0],.col-5[data-v-7c3232e0],.col-6[data-v-7c3232e0],.col-7[data-v-7c3232e0],.col-8[data-v-7c3232e0],.col-9[data-v-7c3232e0],.col-10[data-v-7c3232e0],.col-11[data-v-7c3232e0],.col-12[data-v-7c3232e0],.col-auto[data-v-7c3232e0],.col-lg-1[data-v-7c3232e0],.col-lg-2[data-v-7c3232e0],.col-lg-3[data-v-7c3232e0],.col-lg-4[data-v-7c3232e0],.col-lg-5[data-v-7c3232e0],.col-lg-6[data-v-7c3232e0],.col-lg-7[data-v-7c3232e0],.col-lg-8[data-v-7c3232e0],.col-lg-9[data-v-7c3232e0],.col-lg-10[data-v-7c3232e0],.col-lg-11[data-v-7c3232e0],.col-lg-12[data-v-7c3232e0],.col-lg-auto[data-v-7c3232e0],.col-lg[data-v-7c3232e0],.col-md-1[data-v-7c3232e0],.col-md-2[data-v-7c3232e0],.col-md-3[data-v-7c3232e0],.col-md-4[data-v-7c3232e0],.col-md-5[data-v-7c3232e0],.col-md-6[data-v-7c3232e0],.col-md-7[data-v-7c3232e0],.col-md-8[data-v-7c3232e0],.col-md-9[data-v-7c3232e0],.col-md-10[data-v-7c3232e0],.col-md-11[data-v-7c3232e0],.col-md-12[data-v-7c3232e0],.col-md-auto[data-v-7c3232e0],.col-md[data-v-7c3232e0],.col-sm-1[data-v-7c3232e0],.col-sm-2[data-v-7c3232e0],.col-sm-3[data-v-7c3232e0],.col-sm-4[data-v-7c3232e0],.col-sm-5[data-v-7c3232e0],.col-sm-6[data-v-7c3232e0],.col-sm-7[data-v-7c3232e0],.col-sm-8[data-v-7c3232e0],.col-sm-9[data-v-7c3232e0],.col-sm-10[data-v-7c3232e0],.col-sm-11[data-v-7c3232e0],.col-sm-12[data-v-7c3232e0],.col-sm-auto[data-v-7c3232e0],.col-sm[data-v-7c3232e0],.col-xl-1[data-v-7c3232e0],.col-xl-2[data-v-7c3232e0],.col-xl-3[data-v-7c3232e0],.col-xl-4[data-v-7c3232e0],.col-xl-5[data-v-7c3232e0],.col-xl-6[data-v-7c3232e0],.col-xl-7[data-v-7c3232e0],.col-xl-8[data-v-7c3232e0],.col-xl-9[data-v-7c3232e0],.col-xl-10[data-v-7c3232e0],.col-xl-11[data-v-7c3232e0],.col-xl-12[data-v-7c3232e0],.col-xl-auto[data-v-7c3232e0],.col-xl[data-v-7c3232e0],.col[data-v-7c3232e0]{position:relative;width:100%;padding-right:15px;padding-left:15px}.col[data-v-7c3232e0]{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.row-cols-2>[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.row-cols-3>[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-4>[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.row-cols-5>[data-v-7c3232e0]{flex:0 0 20%;max-width:20%}.row-cols-6>[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-auto[data-v-7c3232e0]{flex:0 0 auto;width:auto;max-width:100%}.col-1[data-v-7c3232e0]{flex:0 0 8.33333%;max-width:8.33333%}.col-2[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-3[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.col-4[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.col-5[data-v-7c3232e0]{flex:0 0 41.66667%;max-width:41.66667%}.col-6[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.col-7[data-v-7c3232e0]{flex:0 0 58.33333%;max-width:58.33333%}.col-8[data-v-7c3232e0]{flex:0 0 66.66667%;max-width:66.66667%}.col-9[data-v-7c3232e0]{flex:0 0 75%;max-width:75%}.col-10[data-v-7c3232e0]{flex:0 0 83.33333%;max-width:83.33333%}.col-11[data-v-7c3232e0]{flex:0 0 91.66667%;max-width:91.66667%}.col-12[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.order-first[data-v-7c3232e0]{order:-1}.order-last[data-v-7c3232e0]{order:13}.order-0[data-v-7c3232e0]{order:0}.order-1[data-v-7c3232e0]{order:1}.order-2[data-v-7c3232e0]{order:2}.order-3[data-v-7c3232e0]{order:3}.order-4[data-v-7c3232e0]{order:4}.order-5[data-v-7c3232e0]{order:5}.order-6[data-v-7c3232e0]{order:6}.order-7[data-v-7c3232e0]{order:7}.order-8[data-v-7c3232e0]{order:8}.order-9[data-v-7c3232e0]{order:9}.order-10[data-v-7c3232e0]{order:10}.order-11[data-v-7c3232e0]{order:11}.order-12[data-v-7c3232e0]{order:12}.offset-1[data-v-7c3232e0]{margin-left:8.33333%}.offset-2[data-v-7c3232e0]{margin-left:16.66667%}.offset-3[data-v-7c3232e0]{margin-left:25%}.offset-4[data-v-7c3232e0]{margin-left:33.33333%}.offset-5[data-v-7c3232e0]{margin-left:41.66667%}.offset-6[data-v-7c3232e0]{margin-left:50%}.offset-7[data-v-7c3232e0]{margin-left:58.33333%}.offset-8[data-v-7c3232e0]{margin-left:66.66667%}.offset-9[data-v-7c3232e0]{margin-left:75%}.offset-10[data-v-7c3232e0]{margin-left:83.33333%}.offset-11[data-v-7c3232e0]{margin-left:91.66667%}@media (min-width:576px){.col-sm[data-v-7c3232e0]{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.row-cols-sm-2>[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.row-cols-sm-3>[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-sm-4>[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.row-cols-sm-5>[data-v-7c3232e0]{flex:0 0 20%;max-width:20%}.row-cols-sm-6>[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-auto[data-v-7c3232e0]{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1[data-v-7c3232e0]{flex:0 0 8.33333%;max-width:8.33333%}.col-sm-2[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-3[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.col-sm-4[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.col-sm-5[data-v-7c3232e0]{flex:0 0 41.66667%;max-width:41.66667%}.col-sm-6[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.col-sm-7[data-v-7c3232e0]{flex:0 0 58.33333%;max-width:58.33333%}.col-sm-8[data-v-7c3232e0]{flex:0 0 66.66667%;max-width:66.66667%}.col-sm-9[data-v-7c3232e0]{flex:0 0 75%;max-width:75%}.col-sm-10[data-v-7c3232e0]{flex:0 0 83.33333%;max-width:83.33333%}.col-sm-11[data-v-7c3232e0]{flex:0 0 91.66667%;max-width:91.66667%}.col-sm-12[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.order-sm-first[data-v-7c3232e0]{order:-1}.order-sm-last[data-v-7c3232e0]{order:13}.order-sm-0[data-v-7c3232e0]{order:0}.order-sm-1[data-v-7c3232e0]{order:1}.order-sm-2[data-v-7c3232e0]{order:2}.order-sm-3[data-v-7c3232e0]{order:3}.order-sm-4[data-v-7c3232e0]{order:4}.order-sm-5[data-v-7c3232e0]{order:5}.order-sm-6[data-v-7c3232e0]{order:6}.order-sm-7[data-v-7c3232e0]{order:7}.order-sm-8[data-v-7c3232e0]{order:8}.order-sm-9[data-v-7c3232e0]{order:9}.order-sm-10[data-v-7c3232e0]{order:10}.order-sm-11[data-v-7c3232e0]{order:11}.order-sm-12[data-v-7c3232e0]{order:12}.offset-sm-0[data-v-7c3232e0]{margin-left:0}.offset-sm-1[data-v-7c3232e0]{margin-left:8.33333%}.offset-sm-2[data-v-7c3232e0]{margin-left:16.66667%}.offset-sm-3[data-v-7c3232e0]{margin-left:25%}.offset-sm-4[data-v-7c3232e0]{margin-left:33.33333%}.offset-sm-5[data-v-7c3232e0]{margin-left:41.66667%}.offset-sm-6[data-v-7c3232e0]{margin-left:50%}.offset-sm-7[data-v-7c3232e0]{margin-left:58.33333%}.offset-sm-8[data-v-7c3232e0]{margin-left:66.66667%}.offset-sm-9[data-v-7c3232e0]{margin-left:75%}.offset-sm-10[data-v-7c3232e0]{margin-left:83.33333%}.offset-sm-11[data-v-7c3232e0]{margin-left:91.66667%}}@media (min-width:768px){.col-md[data-v-7c3232e0]{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.row-cols-md-2>[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.row-cols-md-3>[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-md-4>[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.row-cols-md-5>[data-v-7c3232e0]{flex:0 0 20%;max-width:20%}.row-cols-md-6>[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-md-auto[data-v-7c3232e0]{flex:0 0 auto;width:auto;max-width:100%}.col-md-1[data-v-7c3232e0]{flex:0 0 8.33333%;max-width:8.33333%}.col-md-2[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-md-3[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.col-md-4[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.col-md-5[data-v-7c3232e0]{flex:0 0 41.66667%;max-width:41.66667%}.col-md-6[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.col-md-7[data-v-7c3232e0]{flex:0 0 58.33333%;max-width:58.33333%}.col-md-8[data-v-7c3232e0]{flex:0 0 66.66667%;max-width:66.66667%}.col-md-9[data-v-7c3232e0]{flex:0 0 75%;max-width:75%}.col-md-10[data-v-7c3232e0]{flex:0 0 83.33333%;max-width:83.33333%}.col-md-11[data-v-7c3232e0]{flex:0 0 91.66667%;max-width:91.66667%}.col-md-12[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.order-md-first[data-v-7c3232e0]{order:-1}.order-md-last[data-v-7c3232e0]{order:13}.order-md-0[data-v-7c3232e0]{order:0}.order-md-1[data-v-7c3232e0]{order:1}.order-md-2[data-v-7c3232e0]{order:2}.order-md-3[data-v-7c3232e0]{order:3}.order-md-4[data-v-7c3232e0]{order:4}.order-md-5[data-v-7c3232e0]{order:5}.order-md-6[data-v-7c3232e0]{order:6}.order-md-7[data-v-7c3232e0]{order:7}.order-md-8[data-v-7c3232e0]{order:8}.order-md-9[data-v-7c3232e0]{order:9}.order-md-10[data-v-7c3232e0]{order:10}.order-md-11[data-v-7c3232e0]{order:11}.order-md-12[data-v-7c3232e0]{order:12}.offset-md-0[data-v-7c3232e0]{margin-left:0}.offset-md-1[data-v-7c3232e0]{margin-left:8.33333%}.offset-md-2[data-v-7c3232e0]{margin-left:16.66667%}.offset-md-3[data-v-7c3232e0]{margin-left:25%}.offset-md-4[data-v-7c3232e0]{margin-left:33.33333%}.offset-md-5[data-v-7c3232e0]{margin-left:41.66667%}.offset-md-6[data-v-7c3232e0]{margin-left:50%}.offset-md-7[data-v-7c3232e0]{margin-left:58.33333%}.offset-md-8[data-v-7c3232e0]{margin-left:66.66667%}.offset-md-9[data-v-7c3232e0]{margin-left:75%}.offset-md-10[data-v-7c3232e0]{margin-left:83.33333%}.offset-md-11[data-v-7c3232e0]{margin-left:91.66667%}}@media (min-width:992px){.col-lg[data-v-7c3232e0]{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.row-cols-lg-2>[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.row-cols-lg-3>[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-lg-4>[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.row-cols-lg-5>[data-v-7c3232e0]{flex:0 0 20%;max-width:20%}.row-cols-lg-6>[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-auto[data-v-7c3232e0]{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1[data-v-7c3232e0]{flex:0 0 8.33333%;max-width:8.33333%}.col-lg-2[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-3[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.col-lg-4[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.col-lg-5[data-v-7c3232e0]{flex:0 0 41.66667%;max-width:41.66667%}.col-lg-6[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.col-lg-7[data-v-7c3232e0]{flex:0 0 58.33333%;max-width:58.33333%}.col-lg-8[data-v-7c3232e0]{flex:0 0 66.66667%;max-width:66.66667%}.col-lg-9[data-v-7c3232e0]{flex:0 0 75%;max-width:75%}.col-lg-10[data-v-7c3232e0]{flex:0 0 83.33333%;max-width:83.33333%}.col-lg-11[data-v-7c3232e0]{flex:0 0 91.66667%;max-width:91.66667%}.col-lg-12[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.order-lg-first[data-v-7c3232e0]{order:-1}.order-lg-last[data-v-7c3232e0]{order:13}.order-lg-0[data-v-7c3232e0]{order:0}.order-lg-1[data-v-7c3232e0]{order:1}.order-lg-2[data-v-7c3232e0]{order:2}.order-lg-3[data-v-7c3232e0]{order:3}.order-lg-4[data-v-7c3232e0]{order:4}.order-lg-5[data-v-7c3232e0]{order:5}.order-lg-6[data-v-7c3232e0]{order:6}.order-lg-7[data-v-7c3232e0]{order:7}.order-lg-8[data-v-7c3232e0]{order:8}.order-lg-9[data-v-7c3232e0]{order:9}.order-lg-10[data-v-7c3232e0]{order:10}.order-lg-11[data-v-7c3232e0]{order:11}.order-lg-12[data-v-7c3232e0]{order:12}.offset-lg-0[data-v-7c3232e0]{margin-left:0}.offset-lg-1[data-v-7c3232e0]{margin-left:8.33333%}.offset-lg-2[data-v-7c3232e0]{margin-left:16.66667%}.offset-lg-3[data-v-7c3232e0]{margin-left:25%}.offset-lg-4[data-v-7c3232e0]{margin-left:33.33333%}.offset-lg-5[data-v-7c3232e0]{margin-left:41.66667%}.offset-lg-6[data-v-7c3232e0]{margin-left:50%}.offset-lg-7[data-v-7c3232e0]{margin-left:58.33333%}.offset-lg-8[data-v-7c3232e0]{margin-left:66.66667%}.offset-lg-9[data-v-7c3232e0]{margin-left:75%}.offset-lg-10[data-v-7c3232e0]{margin-left:83.33333%}.offset-lg-11[data-v-7c3232e0]{margin-left:91.66667%}}@media (min-width:1200px){.col-xl[data-v-7c3232e0]{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.row-cols-xl-2>[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.row-cols-xl-3>[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-xl-4>[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.row-cols-xl-5>[data-v-7c3232e0]{flex:0 0 20%;max-width:20%}.row-cols-xl-6>[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-auto[data-v-7c3232e0]{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1[data-v-7c3232e0]{flex:0 0 8.33333%;max-width:8.33333%}.col-xl-2[data-v-7c3232e0]{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-3[data-v-7c3232e0]{flex:0 0 25%;max-width:25%}.col-xl-4[data-v-7c3232e0]{flex:0 0 33.33333%;max-width:33.33333%}.col-xl-5[data-v-7c3232e0]{flex:0 0 41.66667%;max-width:41.66667%}.col-xl-6[data-v-7c3232e0]{flex:0 0 50%;max-width:50%}.col-xl-7[data-v-7c3232e0]{flex:0 0 58.33333%;max-width:58.33333%}.col-xl-8[data-v-7c3232e0]{flex:0 0 66.66667%;max-width:66.66667%}.col-xl-9[data-v-7c3232e0]{flex:0 0 75%;max-width:75%}.col-xl-10[data-v-7c3232e0]{flex:0 0 83.33333%;max-width:83.33333%}.col-xl-11[data-v-7c3232e0]{flex:0 0 91.66667%;max-width:91.66667%}.col-xl-12[data-v-7c3232e0]{flex:0 0 100%;max-width:100%}.order-xl-first[data-v-7c3232e0]{order:-1}.order-xl-last[data-v-7c3232e0]{order:13}.order-xl-0[data-v-7c3232e0]{order:0}.order-xl-1[data-v-7c3232e0]{order:1}.order-xl-2[data-v-7c3232e0]{order:2}.order-xl-3[data-v-7c3232e0]{order:3}.order-xl-4[data-v-7c3232e0]{order:4}.order-xl-5[data-v-7c3232e0]{order:5}.order-xl-6[data-v-7c3232e0]{order:6}.order-xl-7[data-v-7c3232e0]{order:7}.order-xl-8[data-v-7c3232e0]{order:8}.order-xl-9[data-v-7c3232e0]{order:9}.order-xl-10[data-v-7c3232e0]{order:10}.order-xl-11[data-v-7c3232e0]{order:11}.order-xl-12[data-v-7c3232e0]{order:12}.offset-xl-0[data-v-7c3232e0]{margin-left:0}.offset-xl-1[data-v-7c3232e0]{margin-left:8.33333%}.offset-xl-2[data-v-7c3232e0]{margin-left:16.66667%}.offset-xl-3[data-v-7c3232e0]{margin-left:25%}.offset-xl-4[data-v-7c3232e0]{margin-left:33.33333%}.offset-xl-5[data-v-7c3232e0]{margin-left:41.66667%}.offset-xl-6[data-v-7c3232e0]{margin-left:50%}.offset-xl-7[data-v-7c3232e0]{margin-left:58.33333%}.offset-xl-8[data-v-7c3232e0]{margin-left:66.66667%}.offset-xl-9[data-v-7c3232e0]{margin-left:75%}.offset-xl-10[data-v-7c3232e0]{margin-left:83.33333%}.offset-xl-11[data-v-7c3232e0]{margin-left:91.66667%}}.table[data-v-7c3232e0]{width:100%;margin-bottom:1rem;color:#a79e8b}.table td[data-v-7c3232e0],.table th[data-v-7c3232e0]{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th[data-v-7c3232e0]{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody[data-v-7c3232e0]{border-top:2px solid #dee2e6}.table-sm td[data-v-7c3232e0],.table-sm th[data-v-7c3232e0]{padding:.3rem}.table-bordered[data-v-7c3232e0],.table-bordered td[data-v-7c3232e0],.table-bordered th[data-v-7c3232e0]{border:1px solid #dee2e6}.table-bordered thead td[data-v-7c3232e0],.table-bordered thead th[data-v-7c3232e0]{border-bottom-width:2px}.table-borderless tbody+tbody[data-v-7c3232e0],.table-borderless td[data-v-7c3232e0],.table-borderless th[data-v-7c3232e0],.table-borderless thead th[data-v-7c3232e0]{border:0}.table-striped tbody tr[data-v-7c3232e0]:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr[data-v-7c3232e0]:hover{color:#a79e8b;background-color:rgba(0,0,0,.075)}.table-primary>td[data-v-7c3232e0],.table-primary>th[data-v-7c3232e0],.table-primary[data-v-7c3232e0]{background-color:#c1c5ca}.table-primary tbody+tbody[data-v-7c3232e0],.table-primary td[data-v-7c3232e0],.table-primary th[data-v-7c3232e0],.table-primary thead th[data-v-7c3232e0]{border-color:#8b939c}.table-hover .table-primary:hover>td[data-v-7c3232e0],.table-hover .table-primary:hover>th[data-v-7c3232e0],.table-hover .table-primary[data-v-7c3232e0]:hover{background-color:#b3b8be}.table-secondary>td[data-v-7c3232e0],.table-secondary>th[data-v-7c3232e0],.table-secondary[data-v-7c3232e0]{background-color:#f1bbeb}.table-secondary tbody+tbody[data-v-7c3232e0],.table-secondary td[data-v-7c3232e0],.table-secondary th[data-v-7c3232e0],.table-secondary thead th[data-v-7c3232e0]{border-color:#e681da}.table-hover .table-secondary:hover>td[data-v-7c3232e0],.table-hover .table-secondary:hover>th[data-v-7c3232e0],.table-hover .table-secondary[data-v-7c3232e0]:hover{background-color:#eda6e5}.table-success>td[data-v-7c3232e0],.table-success>th[data-v-7c3232e0],.table-success[data-v-7c3232e0]{background-color:#c3e6cb}.table-success tbody+tbody[data-v-7c3232e0],.table-success td[data-v-7c3232e0],.table-success th[data-v-7c3232e0],.table-success thead th[data-v-7c3232e0]{border-color:#8fd19e}.table-hover .table-success:hover>td[data-v-7c3232e0],.table-hover .table-success:hover>th[data-v-7c3232e0],.table-hover .table-success[data-v-7c3232e0]:hover{background-color:#b1dfbb}.table-info>td[data-v-7c3232e0],.table-info>th[data-v-7c3232e0],.table-info[data-v-7c3232e0]{background-color:#bee5eb}.table-info tbody+tbody[data-v-7c3232e0],.table-info td[data-v-7c3232e0],.table-info th[data-v-7c3232e0],.table-info thead th[data-v-7c3232e0]{border-color:#86cfda}.table-hover .table-info:hover>td[data-v-7c3232e0],.table-hover .table-info:hover>th[data-v-7c3232e0],.table-hover .table-info[data-v-7c3232e0]:hover{background-color:#abdde5}.table-warning>td[data-v-7c3232e0],.table-warning>th[data-v-7c3232e0],.table-warning[data-v-7c3232e0]{background-color:#ffeeba}.table-warning tbody+tbody[data-v-7c3232e0],.table-warning td[data-v-7c3232e0],.table-warning th[data-v-7c3232e0],.table-warning thead th[data-v-7c3232e0]{border-color:#ffdf7e}.table-hover .table-warning:hover>td[data-v-7c3232e0],.table-hover .table-warning:hover>th[data-v-7c3232e0],.table-hover .table-warning[data-v-7c3232e0]:hover{background-color:#ffe8a1}.table-danger>td[data-v-7c3232e0],.table-danger>th[data-v-7c3232e0],.table-danger[data-v-7c3232e0]{background-color:#f5c6cb}.table-danger tbody+tbody[data-v-7c3232e0],.table-danger td[data-v-7c3232e0],.table-danger th[data-v-7c3232e0],.table-danger thead th[data-v-7c3232e0]{border-color:#ed969e}.table-hover .table-danger:hover>td[data-v-7c3232e0],.table-hover .table-danger:hover>th[data-v-7c3232e0],.table-hover .table-danger[data-v-7c3232e0]:hover{background-color:#f1b0b7}.table-light>td[data-v-7c3232e0],.table-light>th[data-v-7c3232e0],.table-light[data-v-7c3232e0]{background-color:#fdfdfe}.table-light tbody+tbody[data-v-7c3232e0],.table-light td[data-v-7c3232e0],.table-light th[data-v-7c3232e0],.table-light thead th[data-v-7c3232e0]{border-color:#fbfcfc}.table-hover .table-light:hover>td[data-v-7c3232e0],.table-hover .table-light:hover>th[data-v-7c3232e0],.table-hover .table-light[data-v-7c3232e0]:hover{background-color:#ececf6}.table-dark>td[data-v-7c3232e0],.table-dark>th[data-v-7c3232e0],.table-dark[data-v-7c3232e0]{background-color:#c6c8ca}.table-dark tbody+tbody[data-v-7c3232e0],.table-dark td[data-v-7c3232e0],.table-dark th[data-v-7c3232e0],.table-dark thead th[data-v-7c3232e0]{border-color:#95999c}.table-hover .table-dark:hover>td[data-v-7c3232e0],.table-hover .table-dark:hover>th[data-v-7c3232e0],.table-hover .table-dark[data-v-7c3232e0]:hover{background-color:#b9bbbe}.table-active>td[data-v-7c3232e0],.table-active>th[data-v-7c3232e0],.table-active[data-v-7c3232e0],.table-hover .table-active:hover>td[data-v-7c3232e0],.table-hover .table-active:hover>th[data-v-7c3232e0],.table-hover .table-active[data-v-7c3232e0]:hover{background-color:rgba(0,0,0,.075)}.table .thead-dark th[data-v-7c3232e0]{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th[data-v-7c3232e0]{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark[data-v-7c3232e0]{color:#fff;background-color:#343a40}.table-dark td[data-v-7c3232e0],.table-dark th[data-v-7c3232e0],.table-dark thead th[data-v-7c3232e0]{border-color:#454d55}.table-dark.table-bordered[data-v-7c3232e0]{border:0}.table-dark.table-striped tbody tr[data-v-7c3232e0]:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr[data-v-7c3232e0]:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm[data-v-7c3232e0]{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered[data-v-7c3232e0]{border:0}}@media (max-width:767.98px){.table-responsive-md[data-v-7c3232e0]{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered[data-v-7c3232e0]{border:0}}@media (max-width:991.98px){.table-responsive-lg[data-v-7c3232e0]{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered[data-v-7c3232e0]{border:0}}@media (max-width:1199.98px){.table-responsive-xl[data-v-7c3232e0]{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered[data-v-7c3232e0]{border:0}}.table-responsive[data-v-7c3232e0]{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered[data-v-7c3232e0]{border:0}.form-control[data-v-7c3232e0]{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control[data-v-7c3232e0]{transition:none}}.form-control[data-v-7c3232e0]::-ms-expand{background-color:initial;border:0}.form-control[data-v-7c3232e0]:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control[data-v-7c3232e0]:focus{color:#495057;background-color:#fff;border-color:#4b7095;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.form-control[data-v-7c3232e0]::placeholder{color:#6c757d;opacity:1}.form-control[data-v-7c3232e0]:disabled,.form-control[readonly][data-v-7c3232e0]{background-color:#e9ecef;opacity:1}input[type=date].form-control[data-v-7c3232e0],input[type=datetime-local].form-control[data-v-7c3232e0],input[type=month].form-control[data-v-7c3232e0],input[type=time].form-control[data-v-7c3232e0]{-webkit-appearance:none;appearance:none}select.form-control[data-v-7c3232e0]:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file[data-v-7c3232e0],.form-control-range[data-v-7c3232e0]{display:block;width:100%}.col-form-label[data-v-7c3232e0]{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg[data-v-7c3232e0]{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm[data-v-7c3232e0]{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext[data-v-7c3232e0]{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#a79e8b;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg[data-v-7c3232e0],.form-control-plaintext.form-control-sm[data-v-7c3232e0]{padding-right:0;padding-left:0}.form-control-sm[data-v-7c3232e0]{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg[data-v-7c3232e0]{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple][data-v-7c3232e0],select.form-control[size][data-v-7c3232e0],textarea.form-control[data-v-7c3232e0]{height:auto}.form-group[data-v-7c3232e0]{margin-bottom:1rem}.form-text[data-v-7c3232e0]{display:block;margin-top:.25rem}.form-row[data-v-7c3232e0]{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col[data-v-7c3232e0],.form-row>[class*=col-][data-v-7c3232e0]{padding-right:5px;padding-left:5px}.form-check[data-v-7c3232e0]{position:relative;display:block;padding-left:1.25rem}.form-check-input[data-v-7c3232e0]{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label[data-v-7c3232e0],.form-check-input[disabled]~.form-check-label[data-v-7c3232e0]{color:#6c757d}.form-check-label[data-v-7c3232e0]{margin-bottom:0}.form-check-inline[data-v-7c3232e0]{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input[data-v-7c3232e0]{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback[data-v-7c3232e0]{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip[data-v-7c3232e0]{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback[data-v-7c3232e0],.is-valid~.valid-tooltip[data-v-7c3232e0],.was-validated :valid~.valid-feedback[data-v-7c3232e0],.was-validated :valid~.valid-tooltip[data-v-7c3232e0]{display:block}.form-control.is-valid[data-v-7c3232e0],.was-validated .form-control[data-v-7c3232e0]:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid[data-v-7c3232e0]:focus,.was-validated .form-control[data-v-7c3232e0]:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control[data-v-7c3232e0]:valid,textarea.form-control.is-valid[data-v-7c3232e0]{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid[data-v-7c3232e0],.was-validated .custom-select[data-v-7c3232e0]:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid[data-v-7c3232e0]:focus,.was-validated .custom-select[data-v-7c3232e0]:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label[data-v-7c3232e0],.was-validated .form-check-input:valid~.form-check-label[data-v-7c3232e0]{color:#28a745}.form-check-input.is-valid~.valid-feedback[data-v-7c3232e0],.form-check-input.is-valid~.valid-tooltip[data-v-7c3232e0],.was-validated .form-check-input:valid~.valid-feedback[data-v-7c3232e0],.was-validated .form-check-input:valid~.valid-tooltip[data-v-7c3232e0]{display:block}.custom-control-input.is-valid~.custom-control-label[data-v-7c3232e0],.was-validated .custom-control-input:valid~.custom-control-label[data-v-7c3232e0]{color:#28a745}.custom-control-input.is-valid~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:valid~.custom-control-label[data-v-7c3232e0]:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:valid:checked~.custom-control-label[data-v-7c3232e0]:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:valid:focus~.custom-control-label[data-v-7c3232e0]:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label[data-v-7c3232e0]:before,.custom-file-input.is-valid~.custom-file-label[data-v-7c3232e0],.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-file-input:valid~.custom-file-label[data-v-7c3232e0]{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label[data-v-7c3232e0],.was-validated .custom-file-input:valid:focus~.custom-file-label[data-v-7c3232e0]{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback[data-v-7c3232e0]{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip[data-v-7c3232e0]{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback[data-v-7c3232e0],.is-invalid~.invalid-tooltip[data-v-7c3232e0],.was-validated :invalid~.invalid-feedback[data-v-7c3232e0],.was-validated :invalid~.invalid-tooltip[data-v-7c3232e0]{display:block}.form-control.is-invalid[data-v-7c3232e0],.was-validated .form-control[data-v-7c3232e0]:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid[data-v-7c3232e0]:focus,.was-validated .form-control[data-v-7c3232e0]:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control[data-v-7c3232e0]:invalid,textarea.form-control.is-invalid[data-v-7c3232e0]{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid[data-v-7c3232e0],.was-validated .custom-select[data-v-7c3232e0]:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid[data-v-7c3232e0]:focus,.was-validated .custom-select[data-v-7c3232e0]:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label[data-v-7c3232e0],.was-validated .form-check-input:invalid~.form-check-label[data-v-7c3232e0]{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback[data-v-7c3232e0],.form-check-input.is-invalid~.invalid-tooltip[data-v-7c3232e0],.was-validated .form-check-input:invalid~.invalid-feedback[data-v-7c3232e0],.was-validated .form-check-input:invalid~.invalid-tooltip[data-v-7c3232e0]{display:block}.custom-control-input.is-invalid~.custom-control-label[data-v-7c3232e0],.was-validated .custom-control-input:invalid~.custom-control-label[data-v-7c3232e0]{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:invalid~.custom-control-label[data-v-7c3232e0]:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label[data-v-7c3232e0]:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label[data-v-7c3232e0]:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label[data-v-7c3232e0]:before,.custom-file-input.is-invalid~.custom-file-label[data-v-7c3232e0],.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label[data-v-7c3232e0]:before,.was-validated .custom-file-input:invalid~.custom-file-label[data-v-7c3232e0]{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label[data-v-7c3232e0],.was-validated .custom-file-input:invalid:focus~.custom-file-label[data-v-7c3232e0]{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline[data-v-7c3232e0]{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check[data-v-7c3232e0]{width:100%}@media (min-width:576px){.form-inline label[data-v-7c3232e0]{display:flex;align-items:center;justify-content:center;margin-bottom:0}.form-inline .form-group[data-v-7c3232e0]{display:flex;flex:0 0 auto;flex-flow:row wrap;align-items:center;margin-bottom:0}.form-inline .form-control[data-v-7c3232e0]{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext[data-v-7c3232e0]{display:inline-block}.form-inline .custom-select[data-v-7c3232e0],.form-inline .input-group[data-v-7c3232e0]{width:auto}.form-inline .form-check[data-v-7c3232e0]{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input[data-v-7c3232e0]{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control[data-v-7c3232e0]{align-items:center;justify-content:center}.form-inline .custom-control-label[data-v-7c3232e0]{margin-bottom:0}}.btn[data-v-7c3232e0]{display:inline-block;font-weight:400;text-align:center;vertical-align:middle;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn[data-v-7c3232e0]{transition:none}}.btn[data-v-7c3232e0]:hover{color:#a79e8b;text-decoration:none}.btn.focus[data-v-7c3232e0],.btn[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.btn.disabled[data-v-7c3232e0],.btn[data-v-7c3232e0]:disabled{opacity:.65}.btn[data-v-7c3232e0]:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled[data-v-7c3232e0],fieldset:disabled a.btn[data-v-7c3232e0]{pointer-events:none}.btn-primary[data-v-7c3232e0]{color:#fff;background-color:#203040;border-color:#203040}.btn-primary[data-v-7c3232e0]:hover{color:#fff;background-color:#131d27;border-color:#0f171e}.btn-primary.focus[data-v-7c3232e0],.btn-primary[data-v-7c3232e0]:focus{color:#fff;background-color:#131d27;border-color:#0f171e;box-shadow:0 0 0 .2rem rgba(65,79,93,.5)}.btn-primary.disabled[data-v-7c3232e0],.btn-primary[data-v-7c3232e0]:disabled{color:#fff;background-color:#203040;border-color:#203040}.btn-primary:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-primary[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#0f171e;border-color:#0b1016}.btn-primary:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-primary[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(65,79,93,.5)}.btn-secondary[data-v-7c3232e0]{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-secondary[data-v-7c3232e0]:hover{color:#fff;background-color:#aa0a97;border-color:#9e098c}.btn-secondary.focus[data-v-7c3232e0],.btn-secondary[data-v-7c3232e0]:focus{color:#fff;background-color:#aa0a97;border-color:#9e098c;box-shadow:0 0 0 .2rem rgba(213,48,194,.5)}.btn-secondary.disabled[data-v-7c3232e0],.btn-secondary[data-v-7c3232e0]:disabled{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-secondary:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-secondary[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#9e098c;border-color:#920881}.btn-secondary:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-secondary[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(213,48,194,.5)}.btn-success[data-v-7c3232e0]{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success[data-v-7c3232e0]:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus[data-v-7c3232e0],.btn-success[data-v-7c3232e0]:focus{color:#fff;background-color:#218838;border-color:#1e7e34;box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled[data-v-7c3232e0],.btn-success[data-v-7c3232e0]:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-success[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-success[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info[data-v-7c3232e0]{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info[data-v-7c3232e0]:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus[data-v-7c3232e0],.btn-info[data-v-7c3232e0]:focus{color:#fff;background-color:#138496;border-color:#117a8b;box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled[data-v-7c3232e0],.btn-info[data-v-7c3232e0]:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-info[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-info[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning[data-v-7c3232e0]{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning[data-v-7c3232e0]:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus[data-v-7c3232e0],.btn-warning[data-v-7c3232e0]:focus{color:#212529;background-color:#e0a800;border-color:#d39e00;box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled[data-v-7c3232e0],.btn-warning[data-v-7c3232e0]:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-warning[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle[data-v-7c3232e0]{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-warning[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger[data-v-7c3232e0]{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger[data-v-7c3232e0]:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus[data-v-7c3232e0],.btn-danger[data-v-7c3232e0]:focus{color:#fff;background-color:#c82333;border-color:#bd2130;box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled[data-v-7c3232e0],.btn-danger[data-v-7c3232e0]:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-danger[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-danger[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light[data-v-7c3232e0]{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light[data-v-7c3232e0]:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus[data-v-7c3232e0],.btn-light[data-v-7c3232e0]:focus{color:#212529;background-color:#e2e6ea;border-color:#dae0e5;box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled[data-v-7c3232e0],.btn-light[data-v-7c3232e0]:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-light[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle[data-v-7c3232e0]{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-light[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark[data-v-7c3232e0]{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark[data-v-7c3232e0]:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus[data-v-7c3232e0],.btn-dark[data-v-7c3232e0]:focus{color:#fff;background-color:#23272b;border-color:#1d2124;box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled[data-v-7c3232e0],.btn-dark[data-v-7c3232e0]:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-dark[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-dark[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary[data-v-7c3232e0]{color:#203040;border-color:#203040}.btn-outline-primary[data-v-7c3232e0]:hover{color:#fff;background-color:#203040;border-color:#203040}.btn-outline-primary.focus[data-v-7c3232e0],.btn-outline-primary[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.btn-outline-primary.disabled[data-v-7c3232e0],.btn-outline-primary[data-v-7c3232e0]:disabled{color:#203040;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-primary[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#203040;border-color:#203040}.btn-outline-primary:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-primary[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.btn-outline-secondary[data-v-7c3232e0]{color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary[data-v-7c3232e0]:hover{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary.focus[data-v-7c3232e0],.btn-outline-secondary[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.btn-outline-secondary.disabled[data-v-7c3232e0],.btn-outline-secondary[data-v-7c3232e0]:disabled{color:#ce0cb7;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-secondary[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-secondary[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.btn-outline-success[data-v-7c3232e0]{color:#28a745;border-color:#28a745}.btn-outline-success[data-v-7c3232e0]:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus[data-v-7c3232e0],.btn-outline-success[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled[data-v-7c3232e0],.btn-outline-success[data-v-7c3232e0]:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-success[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-success[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info[data-v-7c3232e0]{color:#17a2b8;border-color:#17a2b8}.btn-outline-info[data-v-7c3232e0]:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus[data-v-7c3232e0],.btn-outline-info[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled[data-v-7c3232e0],.btn-outline-info[data-v-7c3232e0]:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-info[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-info[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning[data-v-7c3232e0]{color:#ffc107;border-color:#ffc107}.btn-outline-warning[data-v-7c3232e0]:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus[data-v-7c3232e0],.btn-outline-warning[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled[data-v-7c3232e0],.btn-outline-warning[data-v-7c3232e0]:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-warning[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle[data-v-7c3232e0]{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-warning[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger[data-v-7c3232e0]{color:#dc3545;border-color:#dc3545}.btn-outline-danger[data-v-7c3232e0]:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus[data-v-7c3232e0],.btn-outline-danger[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled[data-v-7c3232e0],.btn-outline-danger[data-v-7c3232e0]:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-danger[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-danger[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light[data-v-7c3232e0]{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light[data-v-7c3232e0]:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus[data-v-7c3232e0],.btn-outline-light[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled[data-v-7c3232e0],.btn-outline-light[data-v-7c3232e0]:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-light[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle[data-v-7c3232e0]{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-light[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark[data-v-7c3232e0]{color:#343a40;border-color:#343a40}.btn-outline-dark[data-v-7c3232e0]:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus[data-v-7c3232e0],.btn-outline-dark[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled[data-v-7c3232e0],.btn-outline-dark[data-v-7c3232e0]:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active[data-v-7c3232e0],.btn-outline-dark[data-v-7c3232e0]:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle[data-v-7c3232e0]{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active[data-v-7c3232e0]:focus,.btn-outline-dark[data-v-7c3232e0]:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle[data-v-7c3232e0]:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link[data-v-7c3232e0]{font-weight:400;color:#80b6cc;text-decoration:none}.btn-link[data-v-7c3232e0]:hover{color:#4997b6;text-decoration:underline}.btn-link.focus[data-v-7c3232e0],.btn-link[data-v-7c3232e0]:focus{text-decoration:underline}.btn-link.disabled[data-v-7c3232e0],.btn-link[data-v-7c3232e0]:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn[data-v-7c3232e0],.btn-lg[data-v-7c3232e0]{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn[data-v-7c3232e0],.btn-sm[data-v-7c3232e0]{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block[data-v-7c3232e0]{display:block;width:100%}.btn-block+.btn-block[data-v-7c3232e0]{margin-top:.5rem}input[type=button].btn-block[data-v-7c3232e0],input[type=reset].btn-block[data-v-7c3232e0],input[type=submit].btn-block[data-v-7c3232e0]{width:100%}.fade[data-v-7c3232e0]{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade[data-v-7c3232e0]{transition:none}}.fade[data-v-7c3232e0]:not(.show){opacity:0}.collapse[data-v-7c3232e0]:not(.show){display:none}.collapsing[data-v-7c3232e0]{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing[data-v-7c3232e0]{transition:none}}.dropdown[data-v-7c3232e0],.dropleft[data-v-7c3232e0],.dropright[data-v-7c3232e0],.dropup[data-v-7c3232e0]{position:relative}.dropdown-toggle[data-v-7c3232e0]{white-space:nowrap}.dropdown-toggle[data-v-7c3232e0]:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle[data-v-7c3232e0]:empty:after{margin-left:0}.dropdown-menu[data-v-7c3232e0]{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#a79e8b;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left[data-v-7c3232e0]{right:auto;left:0}.dropdown-menu-right[data-v-7c3232e0]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left[data-v-7c3232e0]{right:auto;left:0}.dropdown-menu-sm-right[data-v-7c3232e0]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left[data-v-7c3232e0]{right:auto;left:0}.dropdown-menu-md-right[data-v-7c3232e0]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left[data-v-7c3232e0]{right:auto;left:0}.dropdown-menu-lg-right[data-v-7c3232e0]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left[data-v-7c3232e0]{right:auto;left:0}.dropdown-menu-xl-right[data-v-7c3232e0]{right:0;left:auto}}.dropup .dropdown-menu[data-v-7c3232e0]{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle[data-v-7c3232e0]:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle[data-v-7c3232e0]:empty:after{margin-left:0}.dropright .dropdown-menu[data-v-7c3232e0]{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle[data-v-7c3232e0]:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle[data-v-7c3232e0]:empty:after{margin-left:0}.dropright .dropdown-toggle[data-v-7c3232e0]:after{vertical-align:0}.dropleft .dropdown-menu[data-v-7c3232e0]{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle[data-v-7c3232e0]:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle[data-v-7c3232e0]:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle[data-v-7c3232e0]:empty:after{margin-left:0}.dropleft .dropdown-toggle[data-v-7c3232e0]:before{vertical-align:0}.dropdown-menu[x-placement^=bottom][data-v-7c3232e0],.dropdown-menu[x-placement^=left][data-v-7c3232e0],.dropdown-menu[x-placement^=right][data-v-7c3232e0],.dropdown-menu[x-placement^=top][data-v-7c3232e0]{right:auto;bottom:auto}.dropdown-divider[data-v-7c3232e0]{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item[data-v-7c3232e0]{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item[data-v-7c3232e0]:focus,.dropdown-item[data-v-7c3232e0]:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active[data-v-7c3232e0],.dropdown-item[data-v-7c3232e0]:active{color:#fff;text-decoration:none;background-color:#203040}.dropdown-item.disabled[data-v-7c3232e0],.dropdown-item[data-v-7c3232e0]:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show[data-v-7c3232e0]{display:block}.dropdown-header[data-v-7c3232e0]{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text[data-v-7c3232e0]{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group-vertical[data-v-7c3232e0],.btn-group[data-v-7c3232e0]{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn[data-v-7c3232e0],.btn-group>.btn[data-v-7c3232e0]{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active[data-v-7c3232e0],.btn-group-vertical>.btn[data-v-7c3232e0]:active,.btn-group-vertical>.btn[data-v-7c3232e0]:focus,.btn-group-vertical>.btn[data-v-7c3232e0]:hover,.btn-group>.btn.active[data-v-7c3232e0],.btn-group>.btn[data-v-7c3232e0]:active,.btn-group>.btn[data-v-7c3232e0]:focus,.btn-group>.btn[data-v-7c3232e0]:hover{z-index:1}.btn-toolbar[data-v-7c3232e0]{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group[data-v-7c3232e0]{width:auto}.btn-group>.btn-group[data-v-7c3232e0]:not(:first-child),.btn-group>.btn[data-v-7c3232e0]:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn[data-v-7c3232e0],.btn-group>.btn[data-v-7c3232e0]:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn[data-v-7c3232e0],.btn-group>.btn[data-v-7c3232e0]:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split[data-v-7c3232e0]{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split[data-v-7c3232e0]:after,.dropright .dropdown-toggle-split[data-v-7c3232e0]:after,.dropup .dropdown-toggle-split[data-v-7c3232e0]:after{margin-left:0}.dropleft .dropdown-toggle-split[data-v-7c3232e0]:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split[data-v-7c3232e0],.btn-sm+.dropdown-toggle-split[data-v-7c3232e0]{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split[data-v-7c3232e0],.btn-lg+.dropdown-toggle-split[data-v-7c3232e0]{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical[data-v-7c3232e0]{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn-group[data-v-7c3232e0],.btn-group-vertical>.btn[data-v-7c3232e0]{width:100%}.btn-group-vertical>.btn-group[data-v-7c3232e0]:not(:first-child),.btn-group-vertical>.btn[data-v-7c3232e0]:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn[data-v-7c3232e0],.btn-group-vertical>.btn[data-v-7c3232e0]:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn[data-v-7c3232e0],.btn-group-vertical>.btn[data-v-7c3232e0]:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn-group>.btn[data-v-7c3232e0],.btn-group-toggle>.btn[data-v-7c3232e0]{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox][data-v-7c3232e0],.btn-group-toggle>.btn-group>.btn input[type=radio][data-v-7c3232e0],.btn-group-toggle>.btn input[type=checkbox][data-v-7c3232e0],.btn-group-toggle>.btn input[type=radio][data-v-7c3232e0]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group[data-v-7c3232e0]{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file[data-v-7c3232e0],.input-group>.custom-select[data-v-7c3232e0],.input-group>.form-control-plaintext[data-v-7c3232e0],.input-group>.form-control[data-v-7c3232e0]{position:relative;flex:1 1 auto;width:1%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file[data-v-7c3232e0],.input-group>.custom-file+.custom-select[data-v-7c3232e0],.input-group>.custom-file+.form-control[data-v-7c3232e0],.input-group>.custom-select+.custom-file[data-v-7c3232e0],.input-group>.custom-select+.custom-select[data-v-7c3232e0],.input-group>.custom-select+.form-control[data-v-7c3232e0],.input-group>.form-control+.custom-file[data-v-7c3232e0],.input-group>.form-control+.custom-select[data-v-7c3232e0],.input-group>.form-control+.form-control[data-v-7c3232e0],.input-group>.form-control-plaintext+.custom-file[data-v-7c3232e0],.input-group>.form-control-plaintext+.custom-select[data-v-7c3232e0],.input-group>.form-control-plaintext+.form-control[data-v-7c3232e0]{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label[data-v-7c3232e0],.input-group>.custom-select[data-v-7c3232e0]:focus,.input-group>.form-control[data-v-7c3232e0]:focus{z-index:3}.input-group>.custom-file .custom-file-input[data-v-7c3232e0]:focus{z-index:4}.input-group>.custom-select[data-v-7c3232e0]:not(:last-child),.input-group>.form-control[data-v-7c3232e0]:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select[data-v-7c3232e0]:not(:first-child),.input-group>.form-control[data-v-7c3232e0]:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file[data-v-7c3232e0]{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label[data-v-7c3232e0],.input-group>.custom-file:not(:last-child) .custom-file-label[data-v-7c3232e0]:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label[data-v-7c3232e0]{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append[data-v-7c3232e0],.input-group-prepend[data-v-7c3232e0]{display:flex}.input-group-append .btn[data-v-7c3232e0],.input-group-prepend .btn[data-v-7c3232e0]{position:relative;z-index:2}.input-group-append .btn[data-v-7c3232e0]:focus,.input-group-prepend .btn[data-v-7c3232e0]:focus{z-index:3}.input-group-append .btn+.btn[data-v-7c3232e0],.input-group-append .btn+.input-group-text[data-v-7c3232e0],.input-group-append .input-group-text+.btn[data-v-7c3232e0],.input-group-append .input-group-text+.input-group-text[data-v-7c3232e0],.input-group-prepend .btn+.btn[data-v-7c3232e0],.input-group-prepend .btn+.input-group-text[data-v-7c3232e0],.input-group-prepend .input-group-text+.btn[data-v-7c3232e0],.input-group-prepend .input-group-text+.input-group-text[data-v-7c3232e0]{margin-left:-1px}.input-group-prepend[data-v-7c3232e0]{margin-right:-1px}.input-group-append[data-v-7c3232e0]{margin-left:-1px}.input-group-text[data-v-7c3232e0]{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox][data-v-7c3232e0],.input-group-text input[type=radio][data-v-7c3232e0]{margin-top:0}.input-group-lg>.custom-select[data-v-7c3232e0],.input-group-lg>.form-control[data-v-7c3232e0]:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select[data-v-7c3232e0],.input-group-lg>.form-control[data-v-7c3232e0],.input-group-lg>.input-group-append>.btn[data-v-7c3232e0],.input-group-lg>.input-group-append>.input-group-text[data-v-7c3232e0],.input-group-lg>.input-group-prepend>.btn[data-v-7c3232e0],.input-group-lg>.input-group-prepend>.input-group-text[data-v-7c3232e0]{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select[data-v-7c3232e0],.input-group-sm>.form-control[data-v-7c3232e0]:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select[data-v-7c3232e0],.input-group-sm>.form-control[data-v-7c3232e0],.input-group-sm>.input-group-append>.btn[data-v-7c3232e0],.input-group-sm>.input-group-append>.input-group-text[data-v-7c3232e0],.input-group-sm>.input-group-prepend>.btn[data-v-7c3232e0],.input-group-sm>.input-group-prepend>.input-group-text[data-v-7c3232e0]{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select[data-v-7c3232e0],.input-group-sm>.custom-select[data-v-7c3232e0]{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn[data-v-7c3232e0]:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text[data-v-7c3232e0]:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn[data-v-7c3232e0],.input-group>.input-group-append:not(:last-child)>.input-group-text[data-v-7c3232e0],.input-group>.input-group-prepend>.btn[data-v-7c3232e0],.input-group>.input-group-prepend>.input-group-text[data-v-7c3232e0]{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn[data-v-7c3232e0],.input-group>.input-group-append>.input-group-text[data-v-7c3232e0],.input-group>.input-group-prepend:first-child>.btn[data-v-7c3232e0]:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text[data-v-7c3232e0]:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn[data-v-7c3232e0],.input-group>.input-group-prepend:not(:first-child)>.input-group-text[data-v-7c3232e0]{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control[data-v-7c3232e0]{position:relative;z-index:1;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline[data-v-7c3232e0]{display:inline-flex;margin-right:1rem}.custom-control-input[data-v-7c3232e0]{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label[data-v-7c3232e0]:before{color:#fff;border-color:#203040;background-color:#203040}.custom-control-input:focus~.custom-control-label[data-v-7c3232e0]:before{box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label[data-v-7c3232e0]:before{border-color:#4b7095}.custom-control-input:not(:disabled):active~.custom-control-label[data-v-7c3232e0]:before{color:#fff;background-color:#6289b1;border-color:#6289b1}.custom-control-input:disabled~.custom-control-label[data-v-7c3232e0],.custom-control-input[disabled]~.custom-control-label[data-v-7c3232e0]{color:#6c757d}.custom-control-input:disabled~.custom-control-label[data-v-7c3232e0]:before,.custom-control-input[disabled]~.custom-control-label[data-v-7c3232e0]:before{background-color:#e9ecef}.custom-control-label[data-v-7c3232e0]{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label[data-v-7c3232e0]:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fff;border:1px solid #adb5bd}.custom-control-label[data-v-7c3232e0]:after{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label[data-v-7c3232e0]:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label[data-v-7c3232e0]:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label[data-v-7c3232e0]:before{border-color:#203040;background-color:#203040}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label[data-v-7c3232e0]:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label[data-v-7c3232e0]:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label[data-v-7c3232e0]:before{background-color:rgba(32,48,64,.5)}.custom-radio .custom-control-label[data-v-7c3232e0]:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label[data-v-7c3232e0]:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label[data-v-7c3232e0]:before{background-color:rgba(32,48,64,.5)}.custom-switch[data-v-7c3232e0]{padding-left:2.25rem}.custom-switch .custom-control-label[data-v-7c3232e0]:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label[data-v-7c3232e0]:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label[data-v-7c3232e0]:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label[data-v-7c3232e0]:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label[data-v-7c3232e0]:before{background-color:rgba(32,48,64,.5)}.custom-select[data-v-7c3232e0]{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;appearance:none}.custom-select[data-v-7c3232e0]:focus{border-color:#4b7095;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-select[data-v-7c3232e0]:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple][data-v-7c3232e0],.custom-select[size][data-v-7c3232e0]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select[data-v-7c3232e0]:disabled{color:#6c757d;background-color:#e9ecef}.custom-select[data-v-7c3232e0]::-ms-expand{display:none}.custom-select[data-v-7c3232e0]:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm[data-v-7c3232e0]{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg[data-v-7c3232e0]{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file[data-v-7c3232e0]{position:relative;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);margin-bottom:0}.custom-file-input[data-v-7c3232e0]{position:relative;z-index:2;width:100%;height:calc(1.5em + .75rem + 2px);margin:0;opacity:0}.custom-file-input:focus~.custom-file-label[data-v-7c3232e0]{border-color:#4b7095;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-file-input:disabled~.custom-file-label[data-v-7c3232e0],.custom-file-input[disabled]~.custom-file-label[data-v-7c3232e0]{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label[data-v-7c3232e0]:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse][data-v-7c3232e0]:after{content:attr(data-browse)}.custom-file-label[data-v-7c3232e0]{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label[data-v-7c3232e0],.custom-file-label[data-v-7c3232e0]:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label[data-v-7c3232e0]:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range[data-v-7c3232e0]{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;appearance:none}.custom-range[data-v-7c3232e0]:focus{outline:none}.custom-range[data-v-7c3232e0]:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range[data-v-7c3232e0]:focus::-moz-range-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range[data-v-7c3232e0]:focus::-ms-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range[data-v-7c3232e0]::-moz-focus-outer{border:0}.custom-range[data-v-7c3232e0]::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#203040;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range[data-v-7c3232e0]::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range[data-v-7c3232e0]::-webkit-slider-thumb:active{background-color:#6289b1}.custom-range[data-v-7c3232e0]::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range[data-v-7c3232e0]::-moz-range-thumb{width:1rem;height:1rem;background-color:#203040;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range[data-v-7c3232e0]::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range[data-v-7c3232e0]::-moz-range-thumb:active{background-color:#6289b1}.custom-range[data-v-7c3232e0]::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range[data-v-7c3232e0]::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#203040;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range[data-v-7c3232e0]::-ms-thumb{-ms-transition:none;transition:none}}.custom-range[data-v-7c3232e0]::-ms-thumb:active{background-color:#6289b1}.custom-range[data-v-7c3232e0]::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range[data-v-7c3232e0]::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range[data-v-7c3232e0]::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range[data-v-7c3232e0]:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range[data-v-7c3232e0]:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range[data-v-7c3232e0]:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range[data-v-7c3232e0]:disabled::-moz-range-track{cursor:default}.custom-range[data-v-7c3232e0]:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label[data-v-7c3232e0]:before,.custom-file-label[data-v-7c3232e0],.custom-select[data-v-7c3232e0]{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label[data-v-7c3232e0]:before,.custom-file-label[data-v-7c3232e0],.custom-select[data-v-7c3232e0]{transition:none}}.nav[data-v-7c3232e0]{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link[data-v-7c3232e0]{display:block;padding:.5rem 1rem}.nav-link[data-v-7c3232e0]:focus,.nav-link[data-v-7c3232e0]:hover{text-decoration:none}.nav-link.disabled[data-v-7c3232e0]{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs[data-v-7c3232e0]{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item[data-v-7c3232e0]{margin-bottom:-1px}.nav-tabs .nav-link[data-v-7c3232e0]{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link[data-v-7c3232e0]:focus,.nav-tabs .nav-link[data-v-7c3232e0]:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled[data-v-7c3232e0]{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link[data-v-7c3232e0],.nav-tabs .nav-link.active[data-v-7c3232e0]{color:#495057;background-color:#101417;border-color:#dee2e6 #dee2e6 #101417}.nav-tabs .dropdown-menu[data-v-7c3232e0]{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link[data-v-7c3232e0]{border-radius:.25rem}.nav-pills .nav-link.active[data-v-7c3232e0],.nav-pills .show>.nav-link[data-v-7c3232e0]{color:#fff;background-color:#203040}.nav-fill .nav-item[data-v-7c3232e0],.nav-fill>.nav-link[data-v-7c3232e0]{flex:1 1 auto;text-align:center}.nav-justified .nav-item[data-v-7c3232e0],.nav-justified>.nav-link[data-v-7c3232e0]{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane[data-v-7c3232e0]{display:none}.tab-content>.active[data-v-7c3232e0]{display:block}.navbar[data-v-7c3232e0]{position:relative;padding:.5rem 1rem}.navbar .container-fluid[data-v-7c3232e0],.navbar .container-lg[data-v-7c3232e0],.navbar .container-md[data-v-7c3232e0],.navbar .container-sm[data-v-7c3232e0],.navbar .container-xl[data-v-7c3232e0],.navbar .container[data-v-7c3232e0],.navbar[data-v-7c3232e0]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand[data-v-7c3232e0]{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand[data-v-7c3232e0]:focus,.navbar-brand[data-v-7c3232e0]:hover{text-decoration:none}.navbar-nav[data-v-7c3232e0]{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link[data-v-7c3232e0]{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu[data-v-7c3232e0]{position:static;float:none}.navbar-text[data-v-7c3232e0]{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse[data-v-7c3232e0]{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler[data-v-7c3232e0]{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler[data-v-7c3232e0]:focus,.navbar-toggler[data-v-7c3232e0]:hover{text-decoration:none}.navbar-toggler-icon[data-v-7c3232e0]{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container-fluid[data-v-7c3232e0],.navbar-expand-sm>.container-lg[data-v-7c3232e0],.navbar-expand-sm>.container-md[data-v-7c3232e0],.navbar-expand-sm>.container-sm[data-v-7c3232e0],.navbar-expand-sm>.container-xl[data-v-7c3232e0],.navbar-expand-sm>.container[data-v-7c3232e0]{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm[data-v-7c3232e0]{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav[data-v-7c3232e0]{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu[data-v-7c3232e0]{position:absolute}.navbar-expand-sm .navbar-nav .nav-link[data-v-7c3232e0]{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container-fluid[data-v-7c3232e0],.navbar-expand-sm>.container-lg[data-v-7c3232e0],.navbar-expand-sm>.container-md[data-v-7c3232e0],.navbar-expand-sm>.container-sm[data-v-7c3232e0],.navbar-expand-sm>.container-xl[data-v-7c3232e0],.navbar-expand-sm>.container[data-v-7c3232e0]{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse[data-v-7c3232e0]{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler[data-v-7c3232e0]{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container-fluid[data-v-7c3232e0],.navbar-expand-md>.container-lg[data-v-7c3232e0],.navbar-expand-md>.container-md[data-v-7c3232e0],.navbar-expand-md>.container-sm[data-v-7c3232e0],.navbar-expand-md>.container-xl[data-v-7c3232e0],.navbar-expand-md>.container[data-v-7c3232e0]{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md[data-v-7c3232e0]{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav[data-v-7c3232e0]{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu[data-v-7c3232e0]{position:absolute}.navbar-expand-md .navbar-nav .nav-link[data-v-7c3232e0]{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container-fluid[data-v-7c3232e0],.navbar-expand-md>.container-lg[data-v-7c3232e0],.navbar-expand-md>.container-md[data-v-7c3232e0],.navbar-expand-md>.container-sm[data-v-7c3232e0],.navbar-expand-md>.container-xl[data-v-7c3232e0],.navbar-expand-md>.container[data-v-7c3232e0]{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse[data-v-7c3232e0]{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler[data-v-7c3232e0]{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container-fluid[data-v-7c3232e0],.navbar-expand-lg>.container-lg[data-v-7c3232e0],.navbar-expand-lg>.container-md[data-v-7c3232e0],.navbar-expand-lg>.container-sm[data-v-7c3232e0],.navbar-expand-lg>.container-xl[data-v-7c3232e0],.navbar-expand-lg>.container[data-v-7c3232e0]{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg[data-v-7c3232e0]{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav[data-v-7c3232e0]{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu[data-v-7c3232e0]{position:absolute}.navbar-expand-lg .navbar-nav .nav-link[data-v-7c3232e0]{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container-fluid[data-v-7c3232e0],.navbar-expand-lg>.container-lg[data-v-7c3232e0],.navbar-expand-lg>.container-md[data-v-7c3232e0],.navbar-expand-lg>.container-sm[data-v-7c3232e0],.navbar-expand-lg>.container-xl[data-v-7c3232e0],.navbar-expand-lg>.container[data-v-7c3232e0]{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse[data-v-7c3232e0]{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler[data-v-7c3232e0]{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container-fluid[data-v-7c3232e0],.navbar-expand-xl>.container-lg[data-v-7c3232e0],.navbar-expand-xl>.container-md[data-v-7c3232e0],.navbar-expand-xl>.container-sm[data-v-7c3232e0],.navbar-expand-xl>.container-xl[data-v-7c3232e0],.navbar-expand-xl>.container[data-v-7c3232e0]{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl[data-v-7c3232e0]{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav[data-v-7c3232e0]{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu[data-v-7c3232e0]{position:absolute}.navbar-expand-xl .navbar-nav .nav-link[data-v-7c3232e0]{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container-fluid[data-v-7c3232e0],.navbar-expand-xl>.container-lg[data-v-7c3232e0],.navbar-expand-xl>.container-md[data-v-7c3232e0],.navbar-expand-xl>.container-sm[data-v-7c3232e0],.navbar-expand-xl>.container-xl[data-v-7c3232e0],.navbar-expand-xl>.container[data-v-7c3232e0]{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse[data-v-7c3232e0]{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler[data-v-7c3232e0]{display:none}}.navbar-expand[data-v-7c3232e0]{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container-fluid[data-v-7c3232e0],.navbar-expand>.container-lg[data-v-7c3232e0],.navbar-expand>.container-md[data-v-7c3232e0],.navbar-expand>.container-sm[data-v-7c3232e0],.navbar-expand>.container-xl[data-v-7c3232e0],.navbar-expand>.container[data-v-7c3232e0]{padding-right:0;padding-left:0}.navbar-expand .navbar-nav[data-v-7c3232e0]{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu[data-v-7c3232e0]{position:absolute}.navbar-expand .navbar-nav .nav-link[data-v-7c3232e0]{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container-fluid[data-v-7c3232e0],.navbar-expand>.container-lg[data-v-7c3232e0],.navbar-expand>.container-md[data-v-7c3232e0],.navbar-expand>.container-sm[data-v-7c3232e0],.navbar-expand>.container-xl[data-v-7c3232e0],.navbar-expand>.container[data-v-7c3232e0]{flex-wrap:nowrap}.navbar-expand .navbar-collapse[data-v-7c3232e0]{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler[data-v-7c3232e0]{display:none}.navbar-light .navbar-brand[data-v-7c3232e0],.navbar-light .navbar-brand[data-v-7c3232e0]:focus,.navbar-light .navbar-brand[data-v-7c3232e0]:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link[data-v-7c3232e0]{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link[data-v-7c3232e0]:focus,.navbar-light .navbar-nav .nav-link[data-v-7c3232e0]:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled[data-v-7c3232e0]{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link[data-v-7c3232e0],.navbar-light .navbar-nav .nav-link.active[data-v-7c3232e0],.navbar-light .navbar-nav .nav-link.show[data-v-7c3232e0],.navbar-light .navbar-nav .show>.nav-link[data-v-7c3232e0]{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler[data-v-7c3232e0]{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon[data-v-7c3232e0]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text[data-v-7c3232e0]{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a[data-v-7c3232e0],.navbar-light .navbar-text a[data-v-7c3232e0]:focus,.navbar-light .navbar-text a[data-v-7c3232e0]:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand[data-v-7c3232e0],.navbar-dark .navbar-brand[data-v-7c3232e0]:focus,.navbar-dark .navbar-brand[data-v-7c3232e0]:hover{color:#fff}.navbar-dark .navbar-nav .nav-link[data-v-7c3232e0]{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link[data-v-7c3232e0]:focus,.navbar-dark .navbar-nav .nav-link[data-v-7c3232e0]:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled[data-v-7c3232e0]{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link[data-v-7c3232e0],.navbar-dark .navbar-nav .nav-link.active[data-v-7c3232e0],.navbar-dark .navbar-nav .nav-link.show[data-v-7c3232e0],.navbar-dark .navbar-nav .show>.nav-link[data-v-7c3232e0]{color:#fff}.navbar-dark .navbar-toggler[data-v-7c3232e0]{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon[data-v-7c3232e0]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text[data-v-7c3232e0]{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a[data-v-7c3232e0],.navbar-dark .navbar-text a[data-v-7c3232e0]:focus,.navbar-dark .navbar-text a[data-v-7c3232e0]:hover{color:#fff}.card[data-v-7c3232e0]{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr[data-v-7c3232e0]{margin-right:0;margin-left:0}.card>.list-group[data-v-7c3232e0]{border-top:inherit;border-bottom:inherit}.card>.list-group[data-v-7c3232e0]:first-child{border-top-width:0;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card>.list-group[data-v-7c3232e0]:last-child{border-bottom-width:0;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card>.card-header+.list-group[data-v-7c3232e0],.card>.list-group+.card-footer[data-v-7c3232e0]{border-top:0}.card-body[data-v-7c3232e0]{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title[data-v-7c3232e0]{margin-bottom:.75rem}.card-subtitle[data-v-7c3232e0]{margin-top:-.375rem;margin-bottom:0}.card-text[data-v-7c3232e0]:last-child{margin-bottom:0}.card-link[data-v-7c3232e0]:hover{text-decoration:none}.card-link+.card-link[data-v-7c3232e0]{margin-left:1.25rem}.card-header[data-v-7c3232e0]{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header[data-v-7c3232e0]:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer[data-v-7c3232e0]{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer[data-v-7c3232e0]:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs[data-v-7c3232e0]{margin-bottom:-.75rem;border-bottom:0}.card-header-pills[data-v-7c3232e0],.card-header-tabs[data-v-7c3232e0]{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay[data-v-7c3232e0]{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem;border-radius:calc(.25rem - 1px)}.card-img-bottom[data-v-7c3232e0],.card-img-top[data-v-7c3232e0],.card-img[data-v-7c3232e0]{flex-shrink:0;width:100%}.card-img-top[data-v-7c3232e0],.card-img[data-v-7c3232e0]{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img-bottom[data-v-7c3232e0],.card-img[data-v-7c3232e0]{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card[data-v-7c3232e0]{margin-bottom:15px}@media (min-width:576px){.card-deck[data-v-7c3232e0]{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card[data-v-7c3232e0]{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card[data-v-7c3232e0]{margin-bottom:15px}@media (min-width:576px){.card-group[data-v-7c3232e0]{display:flex;flex-flow:row wrap}.card-group>.card[data-v-7c3232e0]{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card[data-v-7c3232e0]{margin-left:0;border-left:0}.card-group>.card[data-v-7c3232e0]:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header[data-v-7c3232e0],.card-group>.card:not(:last-child) .card-img-top[data-v-7c3232e0]{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer[data-v-7c3232e0],.card-group>.card:not(:last-child) .card-img-bottom[data-v-7c3232e0]{border-bottom-right-radius:0}.card-group>.card[data-v-7c3232e0]:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header[data-v-7c3232e0],.card-group>.card:not(:first-child) .card-img-top[data-v-7c3232e0]{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer[data-v-7c3232e0],.card-group>.card:not(:first-child) .card-img-bottom[data-v-7c3232e0]{border-bottom-left-radius:0}}.card-columns .card[data-v-7c3232e0]{margin-bottom:.75rem}@media (min-width:576px){.card-columns[data-v-7c3232e0]{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card[data-v-7c3232e0]{display:inline-block;width:100%}}.accordion[data-v-7c3232e0]{overflow-anchor:none}.accordion>.card[data-v-7c3232e0]{overflow:hidden}.accordion>.card[data-v-7c3232e0]:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card[data-v-7c3232e0]:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header[data-v-7c3232e0]{border-radius:0;margin-bottom:-1px}.breadcrumb[data-v-7c3232e0]{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item[data-v-7c3232e0]{display:flex}.breadcrumb-item+.breadcrumb-item[data-v-7c3232e0]{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item[data-v-7c3232e0]:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item[data-v-7c3232e0]:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active[data-v-7c3232e0]{color:#6c757d}.pagination[data-v-7c3232e0]{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link[data-v-7c3232e0]{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#80b6cc;background-color:#fff;border:1px solid #dee2e6}.page-link[data-v-7c3232e0]:hover{z-index:2;color:#4997b6;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link[data-v-7c3232e0]:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.page-item:first-child .page-link[data-v-7c3232e0]{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link[data-v-7c3232e0]{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link[data-v-7c3232e0]{z-index:3;color:#fff;background-color:#203040;border-color:#203040}.page-item.disabled .page-link[data-v-7c3232e0]{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link[data-v-7c3232e0]{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link[data-v-7c3232e0]{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link[data-v-7c3232e0]{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link[data-v-7c3232e0]{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link[data-v-7c3232e0]{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link[data-v-7c3232e0]{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge[data-v-7c3232e0]{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge[data-v-7c3232e0]{transition:none}}a.badge[data-v-7c3232e0]:focus,a.badge[data-v-7c3232e0]:hover{text-decoration:none}.badge[data-v-7c3232e0]:empty{display:none}.btn .badge[data-v-7c3232e0]{position:relative;top:-1px}.badge-pill[data-v-7c3232e0]{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary[data-v-7c3232e0]{color:#fff;background-color:#203040}a.badge-primary[data-v-7c3232e0]:focus,a.badge-primary[data-v-7c3232e0]:hover{color:#fff;background-color:#0f171e}a.badge-primary.focus[data-v-7c3232e0],a.badge-primary[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.badge-secondary[data-v-7c3232e0]{color:#fff;background-color:#ce0cb7}a.badge-secondary[data-v-7c3232e0]:focus,a.badge-secondary[data-v-7c3232e0]:hover{color:#fff;background-color:#9e098c}a.badge-secondary.focus[data-v-7c3232e0],a.badge-secondary[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.badge-success[data-v-7c3232e0]{color:#fff;background-color:#28a745}a.badge-success[data-v-7c3232e0]:focus,a.badge-success[data-v-7c3232e0]:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus[data-v-7c3232e0],a.badge-success[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info[data-v-7c3232e0]{color:#fff;background-color:#17a2b8}a.badge-info[data-v-7c3232e0]:focus,a.badge-info[data-v-7c3232e0]:hover{color:#fff;background-color:#117a8b}a.badge-info.focus[data-v-7c3232e0],a.badge-info[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning[data-v-7c3232e0]{color:#212529;background-color:#ffc107}a.badge-warning[data-v-7c3232e0]:focus,a.badge-warning[data-v-7c3232e0]:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus[data-v-7c3232e0],a.badge-warning[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger[data-v-7c3232e0]{color:#fff;background-color:#dc3545}a.badge-danger[data-v-7c3232e0]:focus,a.badge-danger[data-v-7c3232e0]:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus[data-v-7c3232e0],a.badge-danger[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light[data-v-7c3232e0]{color:#212529;background-color:#f8f9fa}a.badge-light[data-v-7c3232e0]:focus,a.badge-light[data-v-7c3232e0]:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus[data-v-7c3232e0],a.badge-light[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark[data-v-7c3232e0]{color:#fff;background-color:#343a40}a.badge-dark[data-v-7c3232e0]:focus,a.badge-dark[data-v-7c3232e0]:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus[data-v-7c3232e0],a.badge-dark[data-v-7c3232e0]:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron[data-v-7c3232e0]{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron[data-v-7c3232e0]{padding:4rem 2rem}}.jumbotron-fluid[data-v-7c3232e0]{padding-right:0;padding-left:0;border-radius:0}.alert[data-v-7c3232e0]{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading[data-v-7c3232e0]{color:inherit}.alert-link[data-v-7c3232e0]{font-weight:700}.alert-dismissible[data-v-7c3232e0]{padding-right:4rem}.alert-dismissible .close[data-v-7c3232e0]{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary[data-v-7c3232e0]{color:#111921;background-color:#d2d6d9;border-color:#c1c5ca}.alert-primary hr[data-v-7c3232e0]{border-top-color:#b3b8be}.alert-primary .alert-link[data-v-7c3232e0]{color:#000}.alert-secondary[data-v-7c3232e0]{color:#6b065f;background-color:#f5cef1;border-color:#f1bbeb}.alert-secondary hr[data-v-7c3232e0]{border-top-color:#eda6e5}.alert-secondary .alert-link[data-v-7c3232e0]{color:#3b0334}.alert-success[data-v-7c3232e0]{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr[data-v-7c3232e0]{border-top-color:#b1dfbb}.alert-success .alert-link[data-v-7c3232e0]{color:#0b2e13}.alert-info[data-v-7c3232e0]{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr[data-v-7c3232e0]{border-top-color:#abdde5}.alert-info .alert-link[data-v-7c3232e0]{color:#062c33}.alert-warning[data-v-7c3232e0]{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr[data-v-7c3232e0]{border-top-color:#ffe8a1}.alert-warning .alert-link[data-v-7c3232e0]{color:#533f03}.alert-danger[data-v-7c3232e0]{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr[data-v-7c3232e0]{border-top-color:#f1b0b7}.alert-danger .alert-link[data-v-7c3232e0]{color:#491217}.alert-light[data-v-7c3232e0]{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr[data-v-7c3232e0]{border-top-color:#ececf6}.alert-light .alert-link[data-v-7c3232e0]{color:#686868}.alert-dark[data-v-7c3232e0]{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr[data-v-7c3232e0]{border-top-color:#b9bbbe}.alert-dark .alert-link[data-v-7c3232e0]{color:#040505}@keyframes progress-bar-stripes-data-v-7c3232e0{0%{background-position:1rem 0}to{background-position:0 0}}.progress[data-v-7c3232e0]{display:flex;height:1rem;overflow:hidden;line-height:0;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar[data-v-7c3232e0]{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#203040;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar[data-v-7c3232e0]{transition:none}}.progress-bar-striped[data-v-7c3232e0]{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated[data-v-7c3232e0]{animation:progress-bar-stripes-data-v-7c3232e0 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated[data-v-7c3232e0]{animation:none}}.media[data-v-7c3232e0]{display:flex;align-items:flex-start}.media-body[data-v-7c3232e0]{flex:1}.list-group[data-v-7c3232e0]{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-item-action[data-v-7c3232e0]{width:100%;color:#495057;text-align:inherit}.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-action[data-v-7c3232e0]:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action[data-v-7c3232e0]:active{color:#a79e8b;background-color:#e9ecef}.list-group-item[data-v-7c3232e0]{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item[data-v-7c3232e0]:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item[data-v-7c3232e0]:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled[data-v-7c3232e0],.list-group-item[data-v-7c3232e0]:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active[data-v-7c3232e0]{z-index:2;color:#fff;background-color:#203040;border-color:#203040}.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:0}.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-top:-1px;border-top-width:1px}.list-group-horizontal[data-v-7c3232e0]{flex-direction:row}.list-group-horizontal>.list-group-item[data-v-7c3232e0]:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item[data-v-7c3232e0]:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active[data-v-7c3232e0]{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm[data-v-7c3232e0]{flex-direction:row}.list-group-horizontal-sm>.list-group-item[data-v-7c3232e0]:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item[data-v-7c3232e0]:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active[data-v-7c3232e0]{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md[data-v-7c3232e0]{flex-direction:row}.list-group-horizontal-md>.list-group-item[data-v-7c3232e0]:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item[data-v-7c3232e0]:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active[data-v-7c3232e0]{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg[data-v-7c3232e0]{flex-direction:row}.list-group-horizontal-lg>.list-group-item[data-v-7c3232e0]:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item[data-v-7c3232e0]:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active[data-v-7c3232e0]{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl[data-v-7c3232e0]{flex-direction:row}.list-group-horizontal-xl>.list-group-item[data-v-7c3232e0]:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item[data-v-7c3232e0]:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active[data-v-7c3232e0]{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item[data-v-7c3232e0]{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active[data-v-7c3232e0]{margin-left:-1px;border-left-width:1px}}.list-group-flush[data-v-7c3232e0]{border-radius:0}.list-group-flush>.list-group-item[data-v-7c3232e0]{border-width:0 0 1px}.list-group-flush>.list-group-item[data-v-7c3232e0]:last-child{border-bottom-width:0}.list-group-item-primary[data-v-7c3232e0]{color:#111921;background-color:#c1c5ca}.list-group-item-primary.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-primary.list-group-item-action[data-v-7c3232e0]:hover{color:#111921;background-color:#b3b8be}.list-group-item-primary.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#111921;border-color:#111921}.list-group-item-secondary[data-v-7c3232e0]{color:#6b065f;background-color:#f1bbeb}.list-group-item-secondary.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-secondary.list-group-item-action[data-v-7c3232e0]:hover{color:#6b065f;background-color:#eda6e5}.list-group-item-secondary.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#6b065f;border-color:#6b065f}.list-group-item-success[data-v-7c3232e0]{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-success.list-group-item-action[data-v-7c3232e0]:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info[data-v-7c3232e0]{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-info.list-group-item-action[data-v-7c3232e0]:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning[data-v-7c3232e0]{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-warning.list-group-item-action[data-v-7c3232e0]:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger[data-v-7c3232e0]{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-danger.list-group-item-action[data-v-7c3232e0]:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light[data-v-7c3232e0]{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-light.list-group-item-action[data-v-7c3232e0]:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark[data-v-7c3232e0]{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action[data-v-7c3232e0]:focus,.list-group-item-dark.list-group-item-action[data-v-7c3232e0]:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active[data-v-7c3232e0]{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close[data-v-7c3232e0]{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close[data-v-7c3232e0]:hover{color:#000;text-decoration:none}.close[data-v-7c3232e0]:not(:disabled):not(.disabled):focus,.close[data-v-7c3232e0]:not(:disabled):not(.disabled):hover{opacity:.75}button.close[data-v-7c3232e0]{padding:0;background-color:initial;border:0}a.close.disabled[data-v-7c3232e0]{pointer-events:none}.toast[data-v-7c3232e0]{flex-basis:350px;max-width:350px;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);opacity:0;border-radius:.25rem}.toast[data-v-7c3232e0]:not(:last-child){margin-bottom:.75rem}.toast.showing[data-v-7c3232e0]{opacity:1}.toast.show[data-v-7c3232e0]{display:block;opacity:1}.toast.hide[data-v-7c3232e0]{display:none}.toast-header[data-v-7c3232e0]{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.toast-body[data-v-7c3232e0]{padding:.75rem}.modal-open[data-v-7c3232e0]{overflow:hidden}.modal-open .modal[data-v-7c3232e0]{overflow-x:hidden;overflow-y:auto}.modal[data-v-7c3232e0]{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog[data-v-7c3232e0]{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog[data-v-7c3232e0]{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog[data-v-7c3232e0]{transition:none}}.modal.show .modal-dialog[data-v-7c3232e0]{transform:none}.modal.modal-static .modal-dialog[data-v-7c3232e0]{transform:scale(1.02)}.modal-dialog-scrollable[data-v-7c3232e0]{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content[data-v-7c3232e0]{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer[data-v-7c3232e0],.modal-dialog-scrollable .modal-header[data-v-7c3232e0]{flex-shrink:0}.modal-dialog-scrollable .modal-body[data-v-7c3232e0]{overflow-y:auto}.modal-dialog-centered[data-v-7c3232e0]{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered[data-v-7c3232e0]:before{display:block;height:calc(100vh - 1rem);height:min-content;content:""}.modal-dialog-centered.modal-dialog-scrollable[data-v-7c3232e0]{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content[data-v-7c3232e0]{max-height:none}.modal-dialog-centered.modal-dialog-scrollable[data-v-7c3232e0]:before{content:none}.modal-content[data-v-7c3232e0]{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop[data-v-7c3232e0]{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade[data-v-7c3232e0]{opacity:0}.modal-backdrop.show[data-v-7c3232e0]{opacity:.5}.modal-header[data-v-7c3232e0]{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close[data-v-7c3232e0]{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title[data-v-7c3232e0]{margin-bottom:0;line-height:1.5}.modal-body[data-v-7c3232e0]{position:relative;flex:1 1 auto;padding:1rem}.modal-footer[data-v-7c3232e0]{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>[data-v-7c3232e0]{margin:.25rem}.modal-scrollbar-measure[data-v-7c3232e0]{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog[data-v-7c3232e0]{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable[data-v-7c3232e0]{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content[data-v-7c3232e0]{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered[data-v-7c3232e0]{min-height:calc(100% - 3.5rem)}.modal-dialog-centered[data-v-7c3232e0]:before{height:calc(100vh - 3.5rem);height:min-content}.modal-sm[data-v-7c3232e0]{max-width:300px}}@media (min-width:992px){.modal-lg[data-v-7c3232e0],.modal-xl[data-v-7c3232e0]{max-width:800px}}@media (min-width:1200px){.modal-xl[data-v-7c3232e0]{max-width:1140px}}.tooltip[data-v-7c3232e0]{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show[data-v-7c3232e0]{opacity:.9}.tooltip .arrow[data-v-7c3232e0]{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow[data-v-7c3232e0]:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top][data-v-7c3232e0],.bs-tooltip-top[data-v-7c3232e0]{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow[data-v-7c3232e0],.bs-tooltip-top .arrow[data-v-7c3232e0]{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow[data-v-7c3232e0]:before,.bs-tooltip-top .arrow[data-v-7c3232e0]:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right][data-v-7c3232e0],.bs-tooltip-right[data-v-7c3232e0]{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow[data-v-7c3232e0],.bs-tooltip-right .arrow[data-v-7c3232e0]{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow[data-v-7c3232e0]:before,.bs-tooltip-right .arrow[data-v-7c3232e0]:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom][data-v-7c3232e0],.bs-tooltip-bottom[data-v-7c3232e0]{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow[data-v-7c3232e0],.bs-tooltip-bottom .arrow[data-v-7c3232e0]{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow[data-v-7c3232e0]:before,.bs-tooltip-bottom .arrow[data-v-7c3232e0]:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left][data-v-7c3232e0],.bs-tooltip-left[data-v-7c3232e0]{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow[data-v-7c3232e0],.bs-tooltip-left .arrow[data-v-7c3232e0]{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow[data-v-7c3232e0]:before,.bs-tooltip-left .arrow[data-v-7c3232e0]:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner[data-v-7c3232e0]{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover[data-v-7c3232e0]{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow[data-v-7c3232e0]{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow[data-v-7c3232e0]:after,.popover .arrow[data-v-7c3232e0]:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top][data-v-7c3232e0],.bs-popover-top[data-v-7c3232e0]{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow[data-v-7c3232e0],.bs-popover-top>.arrow[data-v-7c3232e0]{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow[data-v-7c3232e0]:before,.bs-popover-top>.arrow[data-v-7c3232e0]:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow[data-v-7c3232e0]:after,.bs-popover-top>.arrow[data-v-7c3232e0]:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right][data-v-7c3232e0],.bs-popover-right[data-v-7c3232e0]{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow[data-v-7c3232e0],.bs-popover-right>.arrow[data-v-7c3232e0]{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow[data-v-7c3232e0]:before,.bs-popover-right>.arrow[data-v-7c3232e0]:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow[data-v-7c3232e0]:after,.bs-popover-right>.arrow[data-v-7c3232e0]:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom][data-v-7c3232e0],.bs-popover-bottom[data-v-7c3232e0]{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow[data-v-7c3232e0],.bs-popover-bottom>.arrow[data-v-7c3232e0]{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow[data-v-7c3232e0]:before,.bs-popover-bottom>.arrow[data-v-7c3232e0]:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow[data-v-7c3232e0]:after,.bs-popover-bottom>.arrow[data-v-7c3232e0]:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header[data-v-7c3232e0]:before,.bs-popover-bottom .popover-header[data-v-7c3232e0]:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left][data-v-7c3232e0],.bs-popover-left[data-v-7c3232e0]{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow[data-v-7c3232e0],.bs-popover-left>.arrow[data-v-7c3232e0]{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow[data-v-7c3232e0]:before,.bs-popover-left>.arrow[data-v-7c3232e0]:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow[data-v-7c3232e0]:after,.bs-popover-left>.arrow[data-v-7c3232e0]:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header[data-v-7c3232e0]{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;color:#f78e66;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header[data-v-7c3232e0]:empty{display:none}.popover-body[data-v-7c3232e0]{padding:.5rem .75rem;color:#a79e8b}.carousel[data-v-7c3232e0]{position:relative}.carousel.pointer-event[data-v-7c3232e0]{touch-action:pan-y}.carousel-inner[data-v-7c3232e0]{position:relative;width:100%;overflow:hidden}.carousel-inner[data-v-7c3232e0]:after{display:block;clear:both;content:""}.carousel-item[data-v-7c3232e0]{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item[data-v-7c3232e0]{transition:none}}.carousel-item-next[data-v-7c3232e0],.carousel-item-prev[data-v-7c3232e0],.carousel-item.active[data-v-7c3232e0]{display:block}.active.carousel-item-right[data-v-7c3232e0],.carousel-item-next[data-v-7c3232e0]:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left[data-v-7c3232e0],.carousel-item-prev[data-v-7c3232e0]:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item[data-v-7c3232e0]{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left[data-v-7c3232e0],.carousel-fade .carousel-item-prev.carousel-item-right[data-v-7c3232e0],.carousel-fade .carousel-item.active[data-v-7c3232e0]{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left[data-v-7c3232e0],.carousel-fade .active.carousel-item-right[data-v-7c3232e0]{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left[data-v-7c3232e0],.carousel-fade .active.carousel-item-right[data-v-7c3232e0]{transition:none}}.carousel-control-next[data-v-7c3232e0],.carousel-control-prev[data-v-7c3232e0]{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next[data-v-7c3232e0],.carousel-control-prev[data-v-7c3232e0]{transition:none}}.carousel-control-next[data-v-7c3232e0]:focus,.carousel-control-next[data-v-7c3232e0]:hover,.carousel-control-prev[data-v-7c3232e0]:focus,.carousel-control-prev[data-v-7c3232e0]:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev[data-v-7c3232e0]{left:0}.carousel-control-next[data-v-7c3232e0]{right:0}.carousel-control-next-icon[data-v-7c3232e0],.carousel-control-prev-icon[data-v-7c3232e0]{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon[data-v-7c3232e0]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3E%3C/svg%3E")}.carousel-control-next-icon[data-v-7c3232e0]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators[data-v-7c3232e0]{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li[data-v-7c3232e0]{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li[data-v-7c3232e0]{transition:none}}.carousel-indicators .active[data-v-7c3232e0]{opacity:1}.carousel-caption[data-v-7c3232e0]{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border-data-v-7c3232e0{to{transform:rotate(1turn)}}.spinner-border[data-v-7c3232e0]{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border-data-v-7c3232e0 .75s linear infinite}.spinner-border-sm[data-v-7c3232e0]{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow-data-v-7c3232e0{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow[data-v-7c3232e0]{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow-data-v-7c3232e0 .75s linear infinite}.spinner-grow-sm[data-v-7c3232e0]{width:1rem;height:1rem}.align-baseline[data-v-7c3232e0]{vertical-align:initial!important}.align-top[data-v-7c3232e0]{vertical-align:top!important}.align-middle[data-v-7c3232e0]{vertical-align:middle!important}.align-bottom[data-v-7c3232e0]{vertical-align:bottom!important}.align-text-bottom[data-v-7c3232e0]{vertical-align:text-bottom!important}.align-text-top[data-v-7c3232e0]{vertical-align:text-top!important}.bg-primary[data-v-7c3232e0]{background-color:#203040!important}a.bg-primary[data-v-7c3232e0]:focus,a.bg-primary[data-v-7c3232e0]:hover,button.bg-primary[data-v-7c3232e0]:focus,button.bg-primary[data-v-7c3232e0]:hover{background-color:#0f171e!important}.bg-secondary[data-v-7c3232e0]{background-color:#ce0cb7!important}a.bg-secondary[data-v-7c3232e0]:focus,a.bg-secondary[data-v-7c3232e0]:hover,button.bg-secondary[data-v-7c3232e0]:focus,button.bg-secondary[data-v-7c3232e0]:hover{background-color:#9e098c!important}.bg-success[data-v-7c3232e0]{background-color:#28a745!important}a.bg-success[data-v-7c3232e0]:focus,a.bg-success[data-v-7c3232e0]:hover,button.bg-success[data-v-7c3232e0]:focus,button.bg-success[data-v-7c3232e0]:hover{background-color:#1e7e34!important}.bg-info[data-v-7c3232e0]{background-color:#17a2b8!important}a.bg-info[data-v-7c3232e0]:focus,a.bg-info[data-v-7c3232e0]:hover,button.bg-info[data-v-7c3232e0]:focus,button.bg-info[data-v-7c3232e0]:hover{background-color:#117a8b!important}.bg-warning[data-v-7c3232e0]{background-color:#ffc107!important}a.bg-warning[data-v-7c3232e0]:focus,a.bg-warning[data-v-7c3232e0]:hover,button.bg-warning[data-v-7c3232e0]:focus,button.bg-warning[data-v-7c3232e0]:hover{background-color:#d39e00!important}.bg-danger[data-v-7c3232e0]{background-color:#dc3545!important}a.bg-danger[data-v-7c3232e0]:focus,a.bg-danger[data-v-7c3232e0]:hover,button.bg-danger[data-v-7c3232e0]:focus,button.bg-danger[data-v-7c3232e0]:hover{background-color:#bd2130!important}.bg-light[data-v-7c3232e0]{background-color:#f8f9fa!important}a.bg-light[data-v-7c3232e0]:focus,a.bg-light[data-v-7c3232e0]:hover,button.bg-light[data-v-7c3232e0]:focus,button.bg-light[data-v-7c3232e0]:hover{background-color:#dae0e5!important}.bg-dark[data-v-7c3232e0]{background-color:#343a40!important}a.bg-dark[data-v-7c3232e0]:focus,a.bg-dark[data-v-7c3232e0]:hover,button.bg-dark[data-v-7c3232e0]:focus,button.bg-dark[data-v-7c3232e0]:hover{background-color:#1d2124!important}.bg-white[data-v-7c3232e0]{background-color:#fff!important}.bg-transparent[data-v-7c3232e0]{background-color:initial!important}.border[data-v-7c3232e0]{border:1px solid #dee2e6!important}.border-top[data-v-7c3232e0]{border-top:1px solid #dee2e6!important}.border-right[data-v-7c3232e0]{border-right:1px solid #dee2e6!important}.border-bottom[data-v-7c3232e0]{border-bottom:1px solid #dee2e6!important}.border-left[data-v-7c3232e0]{border-left:1px solid #dee2e6!important}.border-0[data-v-7c3232e0]{border:0!important}.border-top-0[data-v-7c3232e0]{border-top:0!important}.border-right-0[data-v-7c3232e0]{border-right:0!important}.border-bottom-0[data-v-7c3232e0]{border-bottom:0!important}.border-left-0[data-v-7c3232e0]{border-left:0!important}.border-primary[data-v-7c3232e0]{border-color:#203040!important}.border-secondary[data-v-7c3232e0]{border-color:#ce0cb7!important}.border-success[data-v-7c3232e0]{border-color:#28a745!important}.border-info[data-v-7c3232e0]{border-color:#17a2b8!important}.border-warning[data-v-7c3232e0]{border-color:#ffc107!important}.border-danger[data-v-7c3232e0]{border-color:#dc3545!important}.border-light[data-v-7c3232e0]{border-color:#f8f9fa!important}.border-dark[data-v-7c3232e0]{border-color:#343a40!important}.border-white[data-v-7c3232e0]{border-color:#fff!important}.rounded-sm[data-v-7c3232e0]{border-radius:.2rem!important}.rounded[data-v-7c3232e0]{border-radius:.25rem!important}.rounded-top[data-v-7c3232e0]{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right[data-v-7c3232e0]{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom[data-v-7c3232e0]{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left[data-v-7c3232e0]{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-lg[data-v-7c3232e0]{border-radius:.3rem!important}.rounded-circle[data-v-7c3232e0]{border-radius:50%!important}.rounded-pill[data-v-7c3232e0]{border-radius:50rem!important}.rounded-0[data-v-7c3232e0]{border-radius:0!important}.clearfix[data-v-7c3232e0]:after{display:block;clear:both;content:""}.d-none[data-v-7c3232e0]{display:none!important}.d-inline[data-v-7c3232e0]{display:inline!important}.d-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-block[data-v-7c3232e0]{display:block!important}.d-table[data-v-7c3232e0]{display:table!important}.d-table-row[data-v-7c3232e0]{display:table-row!important}.d-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-flex[data-v-7c3232e0]{display:flex!important}.d-inline-flex[data-v-7c3232e0]{display:inline-flex!important}@media (min-width:576px){.d-sm-none[data-v-7c3232e0]{display:none!important}.d-sm-inline[data-v-7c3232e0]{display:inline!important}.d-sm-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-sm-block[data-v-7c3232e0]{display:block!important}.d-sm-table[data-v-7c3232e0]{display:table!important}.d-sm-table-row[data-v-7c3232e0]{display:table-row!important}.d-sm-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-sm-flex[data-v-7c3232e0]{display:flex!important}.d-sm-inline-flex[data-v-7c3232e0]{display:inline-flex!important}}@media (min-width:768px){.d-md-none[data-v-7c3232e0]{display:none!important}.d-md-inline[data-v-7c3232e0]{display:inline!important}.d-md-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-md-block[data-v-7c3232e0]{display:block!important}.d-md-table[data-v-7c3232e0]{display:table!important}.d-md-table-row[data-v-7c3232e0]{display:table-row!important}.d-md-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-md-flex[data-v-7c3232e0]{display:flex!important}.d-md-inline-flex[data-v-7c3232e0]{display:inline-flex!important}}@media (min-width:992px){.d-lg-none[data-v-7c3232e0]{display:none!important}.d-lg-inline[data-v-7c3232e0]{display:inline!important}.d-lg-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-lg-block[data-v-7c3232e0]{display:block!important}.d-lg-table[data-v-7c3232e0]{display:table!important}.d-lg-table-row[data-v-7c3232e0]{display:table-row!important}.d-lg-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-lg-flex[data-v-7c3232e0]{display:flex!important}.d-lg-inline-flex[data-v-7c3232e0]{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none[data-v-7c3232e0]{display:none!important}.d-xl-inline[data-v-7c3232e0]{display:inline!important}.d-xl-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-xl-block[data-v-7c3232e0]{display:block!important}.d-xl-table[data-v-7c3232e0]{display:table!important}.d-xl-table-row[data-v-7c3232e0]{display:table-row!important}.d-xl-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-xl-flex[data-v-7c3232e0]{display:flex!important}.d-xl-inline-flex[data-v-7c3232e0]{display:inline-flex!important}}@media print{.d-print-none[data-v-7c3232e0]{display:none!important}.d-print-inline[data-v-7c3232e0]{display:inline!important}.d-print-inline-block[data-v-7c3232e0]{display:inline-block!important}.d-print-block[data-v-7c3232e0]{display:block!important}.d-print-table[data-v-7c3232e0]{display:table!important}.d-print-table-row[data-v-7c3232e0]{display:table-row!important}.d-print-table-cell[data-v-7c3232e0]{display:table-cell!important}.d-print-flex[data-v-7c3232e0]{display:flex!important}.d-print-inline-flex[data-v-7c3232e0]{display:inline-flex!important}}.embed-responsive[data-v-7c3232e0]{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive[data-v-7c3232e0]:before{display:block;content:""}.embed-responsive .embed-responsive-item[data-v-7c3232e0],.embed-responsive embed[data-v-7c3232e0],.embed-responsive iframe[data-v-7c3232e0],.embed-responsive object[data-v-7c3232e0],.embed-responsive video[data-v-7c3232e0]{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9[data-v-7c3232e0]:before{padding-top:42.85714%}.embed-responsive-16by9[data-v-7c3232e0]:before{padding-top:56.25%}.embed-responsive-4by3[data-v-7c3232e0]:before{padding-top:75%}.embed-responsive-1by1[data-v-7c3232e0]:before{padding-top:100%}.flex-row[data-v-7c3232e0]{flex-direction:row!important}.flex-column[data-v-7c3232e0]{flex-direction:column!important}.flex-row-reverse[data-v-7c3232e0]{flex-direction:row-reverse!important}.flex-column-reverse[data-v-7c3232e0]{flex-direction:column-reverse!important}.flex-wrap[data-v-7c3232e0]{flex-wrap:wrap!important}.flex-nowrap[data-v-7c3232e0]{flex-wrap:nowrap!important}.flex-wrap-reverse[data-v-7c3232e0]{flex-wrap:wrap-reverse!important}.flex-fill[data-v-7c3232e0]{flex:1 1 auto!important}.flex-grow-0[data-v-7c3232e0]{flex-grow:0!important}.flex-grow-1[data-v-7c3232e0]{flex-grow:1!important}.flex-shrink-0[data-v-7c3232e0]{flex-shrink:0!important}.flex-shrink-1[data-v-7c3232e0]{flex-shrink:1!important}.justify-content-start[data-v-7c3232e0]{justify-content:flex-start!important}.justify-content-end[data-v-7c3232e0]{justify-content:flex-end!important}.justify-content-center[data-v-7c3232e0]{justify-content:center!important}.justify-content-between[data-v-7c3232e0]{justify-content:space-between!important}.justify-content-around[data-v-7c3232e0]{justify-content:space-around!important}.align-items-start[data-v-7c3232e0]{align-items:flex-start!important}.align-items-end[data-v-7c3232e0]{align-items:flex-end!important}.align-items-center[data-v-7c3232e0]{align-items:center!important}.align-items-baseline[data-v-7c3232e0]{align-items:baseline!important}.align-items-stretch[data-v-7c3232e0]{align-items:stretch!important}.align-content-start[data-v-7c3232e0]{align-content:flex-start!important}.align-content-end[data-v-7c3232e0]{align-content:flex-end!important}.align-content-center[data-v-7c3232e0]{align-content:center!important}.align-content-between[data-v-7c3232e0]{align-content:space-between!important}.align-content-around[data-v-7c3232e0]{align-content:space-around!important}.align-content-stretch[data-v-7c3232e0]{align-content:stretch!important}.align-self-auto[data-v-7c3232e0]{align-self:auto!important}.align-self-start[data-v-7c3232e0]{align-self:flex-start!important}.align-self-end[data-v-7c3232e0]{align-self:flex-end!important}.align-self-center[data-v-7c3232e0]{align-self:center!important}.align-self-baseline[data-v-7c3232e0]{align-self:baseline!important}.align-self-stretch[data-v-7c3232e0]{align-self:stretch!important}@media (min-width:576px){.flex-sm-row[data-v-7c3232e0]{flex-direction:row!important}.flex-sm-column[data-v-7c3232e0]{flex-direction:column!important}.flex-sm-row-reverse[data-v-7c3232e0]{flex-direction:row-reverse!important}.flex-sm-column-reverse[data-v-7c3232e0]{flex-direction:column-reverse!important}.flex-sm-wrap[data-v-7c3232e0]{flex-wrap:wrap!important}.flex-sm-nowrap[data-v-7c3232e0]{flex-wrap:nowrap!important}.flex-sm-wrap-reverse[data-v-7c3232e0]{flex-wrap:wrap-reverse!important}.flex-sm-fill[data-v-7c3232e0]{flex:1 1 auto!important}.flex-sm-grow-0[data-v-7c3232e0]{flex-grow:0!important}.flex-sm-grow-1[data-v-7c3232e0]{flex-grow:1!important}.flex-sm-shrink-0[data-v-7c3232e0]{flex-shrink:0!important}.flex-sm-shrink-1[data-v-7c3232e0]{flex-shrink:1!important}.justify-content-sm-start[data-v-7c3232e0]{justify-content:flex-start!important}.justify-content-sm-end[data-v-7c3232e0]{justify-content:flex-end!important}.justify-content-sm-center[data-v-7c3232e0]{justify-content:center!important}.justify-content-sm-between[data-v-7c3232e0]{justify-content:space-between!important}.justify-content-sm-around[data-v-7c3232e0]{justify-content:space-around!important}.align-items-sm-start[data-v-7c3232e0]{align-items:flex-start!important}.align-items-sm-end[data-v-7c3232e0]{align-items:flex-end!important}.align-items-sm-center[data-v-7c3232e0]{align-items:center!important}.align-items-sm-baseline[data-v-7c3232e0]{align-items:baseline!important}.align-items-sm-stretch[data-v-7c3232e0]{align-items:stretch!important}.align-content-sm-start[data-v-7c3232e0]{align-content:flex-start!important}.align-content-sm-end[data-v-7c3232e0]{align-content:flex-end!important}.align-content-sm-center[data-v-7c3232e0]{align-content:center!important}.align-content-sm-between[data-v-7c3232e0]{align-content:space-between!important}.align-content-sm-around[data-v-7c3232e0]{align-content:space-around!important}.align-content-sm-stretch[data-v-7c3232e0]{align-content:stretch!important}.align-self-sm-auto[data-v-7c3232e0]{align-self:auto!important}.align-self-sm-start[data-v-7c3232e0]{align-self:flex-start!important}.align-self-sm-end[data-v-7c3232e0]{align-self:flex-end!important}.align-self-sm-center[data-v-7c3232e0]{align-self:center!important}.align-self-sm-baseline[data-v-7c3232e0]{align-self:baseline!important}.align-self-sm-stretch[data-v-7c3232e0]{align-self:stretch!important}}@media (min-width:768px){.flex-md-row[data-v-7c3232e0]{flex-direction:row!important}.flex-md-column[data-v-7c3232e0]{flex-direction:column!important}.flex-md-row-reverse[data-v-7c3232e0]{flex-direction:row-reverse!important}.flex-md-column-reverse[data-v-7c3232e0]{flex-direction:column-reverse!important}.flex-md-wrap[data-v-7c3232e0]{flex-wrap:wrap!important}.flex-md-nowrap[data-v-7c3232e0]{flex-wrap:nowrap!important}.flex-md-wrap-reverse[data-v-7c3232e0]{flex-wrap:wrap-reverse!important}.flex-md-fill[data-v-7c3232e0]{flex:1 1 auto!important}.flex-md-grow-0[data-v-7c3232e0]{flex-grow:0!important}.flex-md-grow-1[data-v-7c3232e0]{flex-grow:1!important}.flex-md-shrink-0[data-v-7c3232e0]{flex-shrink:0!important}.flex-md-shrink-1[data-v-7c3232e0]{flex-shrink:1!important}.justify-content-md-start[data-v-7c3232e0]{justify-content:flex-start!important}.justify-content-md-end[data-v-7c3232e0]{justify-content:flex-end!important}.justify-content-md-center[data-v-7c3232e0]{justify-content:center!important}.justify-content-md-between[data-v-7c3232e0]{justify-content:space-between!important}.justify-content-md-around[data-v-7c3232e0]{justify-content:space-around!important}.align-items-md-start[data-v-7c3232e0]{align-items:flex-start!important}.align-items-md-end[data-v-7c3232e0]{align-items:flex-end!important}.align-items-md-center[data-v-7c3232e0]{align-items:center!important}.align-items-md-baseline[data-v-7c3232e0]{align-items:baseline!important}.align-items-md-stretch[data-v-7c3232e0]{align-items:stretch!important}.align-content-md-start[data-v-7c3232e0]{align-content:flex-start!important}.align-content-md-end[data-v-7c3232e0]{align-content:flex-end!important}.align-content-md-center[data-v-7c3232e0]{align-content:center!important}.align-content-md-between[data-v-7c3232e0]{align-content:space-between!important}.align-content-md-around[data-v-7c3232e0]{align-content:space-around!important}.align-content-md-stretch[data-v-7c3232e0]{align-content:stretch!important}.align-self-md-auto[data-v-7c3232e0]{align-self:auto!important}.align-self-md-start[data-v-7c3232e0]{align-self:flex-start!important}.align-self-md-end[data-v-7c3232e0]{align-self:flex-end!important}.align-self-md-center[data-v-7c3232e0]{align-self:center!important}.align-self-md-baseline[data-v-7c3232e0]{align-self:baseline!important}.align-self-md-stretch[data-v-7c3232e0]{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row[data-v-7c3232e0]{flex-direction:row!important}.flex-lg-column[data-v-7c3232e0]{flex-direction:column!important}.flex-lg-row-reverse[data-v-7c3232e0]{flex-direction:row-reverse!important}.flex-lg-column-reverse[data-v-7c3232e0]{flex-direction:column-reverse!important}.flex-lg-wrap[data-v-7c3232e0]{flex-wrap:wrap!important}.flex-lg-nowrap[data-v-7c3232e0]{flex-wrap:nowrap!important}.flex-lg-wrap-reverse[data-v-7c3232e0]{flex-wrap:wrap-reverse!important}.flex-lg-fill[data-v-7c3232e0]{flex:1 1 auto!important}.flex-lg-grow-0[data-v-7c3232e0]{flex-grow:0!important}.flex-lg-grow-1[data-v-7c3232e0]{flex-grow:1!important}.flex-lg-shrink-0[data-v-7c3232e0]{flex-shrink:0!important}.flex-lg-shrink-1[data-v-7c3232e0]{flex-shrink:1!important}.justify-content-lg-start[data-v-7c3232e0]{justify-content:flex-start!important}.justify-content-lg-end[data-v-7c3232e0]{justify-content:flex-end!important}.justify-content-lg-center[data-v-7c3232e0]{justify-content:center!important}.justify-content-lg-between[data-v-7c3232e0]{justify-content:space-between!important}.justify-content-lg-around[data-v-7c3232e0]{justify-content:space-around!important}.align-items-lg-start[data-v-7c3232e0]{align-items:flex-start!important}.align-items-lg-end[data-v-7c3232e0]{align-items:flex-end!important}.align-items-lg-center[data-v-7c3232e0]{align-items:center!important}.align-items-lg-baseline[data-v-7c3232e0]{align-items:baseline!important}.align-items-lg-stretch[data-v-7c3232e0]{align-items:stretch!important}.align-content-lg-start[data-v-7c3232e0]{align-content:flex-start!important}.align-content-lg-end[data-v-7c3232e0]{align-content:flex-end!important}.align-content-lg-center[data-v-7c3232e0]{align-content:center!important}.align-content-lg-between[data-v-7c3232e0]{align-content:space-between!important}.align-content-lg-around[data-v-7c3232e0]{align-content:space-around!important}.align-content-lg-stretch[data-v-7c3232e0]{align-content:stretch!important}.align-self-lg-auto[data-v-7c3232e0]{align-self:auto!important}.align-self-lg-start[data-v-7c3232e0]{align-self:flex-start!important}.align-self-lg-end[data-v-7c3232e0]{align-self:flex-end!important}.align-self-lg-center[data-v-7c3232e0]{align-self:center!important}.align-self-lg-baseline[data-v-7c3232e0]{align-self:baseline!important}.align-self-lg-stretch[data-v-7c3232e0]{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row[data-v-7c3232e0]{flex-direction:row!important}.flex-xl-column[data-v-7c3232e0]{flex-direction:column!important}.flex-xl-row-reverse[data-v-7c3232e0]{flex-direction:row-reverse!important}.flex-xl-column-reverse[data-v-7c3232e0]{flex-direction:column-reverse!important}.flex-xl-wrap[data-v-7c3232e0]{flex-wrap:wrap!important}.flex-xl-nowrap[data-v-7c3232e0]{flex-wrap:nowrap!important}.flex-xl-wrap-reverse[data-v-7c3232e0]{flex-wrap:wrap-reverse!important}.flex-xl-fill[data-v-7c3232e0]{flex:1 1 auto!important}.flex-xl-grow-0[data-v-7c3232e0]{flex-grow:0!important}.flex-xl-grow-1[data-v-7c3232e0]{flex-grow:1!important}.flex-xl-shrink-0[data-v-7c3232e0]{flex-shrink:0!important}.flex-xl-shrink-1[data-v-7c3232e0]{flex-shrink:1!important}.justify-content-xl-start[data-v-7c3232e0]{justify-content:flex-start!important}.justify-content-xl-end[data-v-7c3232e0]{justify-content:flex-end!important}.justify-content-xl-center[data-v-7c3232e0]{justify-content:center!important}.justify-content-xl-between[data-v-7c3232e0]{justify-content:space-between!important}.justify-content-xl-around[data-v-7c3232e0]{justify-content:space-around!important}.align-items-xl-start[data-v-7c3232e0]{align-items:flex-start!important}.align-items-xl-end[data-v-7c3232e0]{align-items:flex-end!important}.align-items-xl-center[data-v-7c3232e0]{align-items:center!important}.align-items-xl-baseline[data-v-7c3232e0]{align-items:baseline!important}.align-items-xl-stretch[data-v-7c3232e0]{align-items:stretch!important}.align-content-xl-start[data-v-7c3232e0]{align-content:flex-start!important}.align-content-xl-end[data-v-7c3232e0]{align-content:flex-end!important}.align-content-xl-center[data-v-7c3232e0]{align-content:center!important}.align-content-xl-between[data-v-7c3232e0]{align-content:space-between!important}.align-content-xl-around[data-v-7c3232e0]{align-content:space-around!important}.align-content-xl-stretch[data-v-7c3232e0]{align-content:stretch!important}.align-self-xl-auto[data-v-7c3232e0]{align-self:auto!important}.align-self-xl-start[data-v-7c3232e0]{align-self:flex-start!important}.align-self-xl-end[data-v-7c3232e0]{align-self:flex-end!important}.align-self-xl-center[data-v-7c3232e0]{align-self:center!important}.align-self-xl-baseline[data-v-7c3232e0]{align-self:baseline!important}.align-self-xl-stretch[data-v-7c3232e0]{align-self:stretch!important}}.float-left[data-v-7c3232e0]{float:left!important}.float-right[data-v-7c3232e0]{float:right!important}.float-none[data-v-7c3232e0]{float:none!important}@media (min-width:576px){.float-sm-left[data-v-7c3232e0]{float:left!important}.float-sm-right[data-v-7c3232e0]{float:right!important}.float-sm-none[data-v-7c3232e0]{float:none!important}}@media (min-width:768px){.float-md-left[data-v-7c3232e0]{float:left!important}.float-md-right[data-v-7c3232e0]{float:right!important}.float-md-none[data-v-7c3232e0]{float:none!important}}@media (min-width:992px){.float-lg-left[data-v-7c3232e0]{float:left!important}.float-lg-right[data-v-7c3232e0]{float:right!important}.float-lg-none[data-v-7c3232e0]{float:none!important}}@media (min-width:1200px){.float-xl-left[data-v-7c3232e0]{float:left!important}.float-xl-right[data-v-7c3232e0]{float:right!important}.float-xl-none[data-v-7c3232e0]{float:none!important}}.user-select-all[data-v-7c3232e0]{-webkit-user-select:all!important;user-select:all!important}.user-select-auto[data-v-7c3232e0]{-webkit-user-select:auto!important;user-select:auto!important}.user-select-none[data-v-7c3232e0]{-webkit-user-select:none!important;user-select:none!important}.overflow-auto[data-v-7c3232e0]{overflow:auto!important}.overflow-hidden[data-v-7c3232e0]{overflow:hidden!important}.position-static[data-v-7c3232e0]{position:static!important}.position-relative[data-v-7c3232e0]{position:relative!important}.position-absolute[data-v-7c3232e0]{position:absolute!important}.position-fixed[data-v-7c3232e0]{position:fixed!important}.position-sticky[data-v-7c3232e0]{position:sticky!important}.fixed-top[data-v-7c3232e0]{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom[data-v-7c3232e0]{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports (position:sticky){.sticky-top[data-v-7c3232e0]{position:sticky;top:0;z-index:1020}}.sr-only[data-v-7c3232e0]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable[data-v-7c3232e0]:active,.sr-only-focusable[data-v-7c3232e0]:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm[data-v-7c3232e0]{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow[data-v-7c3232e0]{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg[data-v-7c3232e0]{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none[data-v-7c3232e0]{box-shadow:none!important}.w-25[data-v-7c3232e0]{width:25%!important}.w-50[data-v-7c3232e0]{width:50%!important}.w-75[data-v-7c3232e0]{width:75%!important}.w-100[data-v-7c3232e0]{width:100%!important}.w-auto[data-v-7c3232e0]{width:auto!important}.h-25[data-v-7c3232e0]{height:25%!important}.h-50[data-v-7c3232e0]{height:50%!important}.h-75[data-v-7c3232e0]{height:75%!important}.h-100[data-v-7c3232e0]{height:100%!important}.h-auto[data-v-7c3232e0]{height:auto!important}.mw-100[data-v-7c3232e0]{max-width:100%!important}.mh-100[data-v-7c3232e0]{max-height:100%!important}.min-vw-100[data-v-7c3232e0]{min-width:100vw!important}.min-vh-100[data-v-7c3232e0]{min-height:100vh!important}.vw-100[data-v-7c3232e0]{width:100vw!important}.vh-100[data-v-7c3232e0]{height:100vh!important}.m-0[data-v-7c3232e0]{margin:0!important}.mt-0[data-v-7c3232e0],.my-0[data-v-7c3232e0]{margin-top:0!important}.mr-0[data-v-7c3232e0],.mx-0[data-v-7c3232e0]{margin-right:0!important}.mb-0[data-v-7c3232e0],.my-0[data-v-7c3232e0]{margin-bottom:0!important}.ml-0[data-v-7c3232e0],.mx-0[data-v-7c3232e0]{margin-left:0!important}.m-1[data-v-7c3232e0]{margin:.25rem!important}.mt-1[data-v-7c3232e0],.my-1[data-v-7c3232e0]{margin-top:.25rem!important}.mr-1[data-v-7c3232e0],.mx-1[data-v-7c3232e0]{margin-right:.25rem!important}.mb-1[data-v-7c3232e0],.my-1[data-v-7c3232e0]{margin-bottom:.25rem!important}.ml-1[data-v-7c3232e0],.mx-1[data-v-7c3232e0]{margin-left:.25rem!important}.m-2[data-v-7c3232e0]{margin:.5rem!important}.mt-2[data-v-7c3232e0],.my-2[data-v-7c3232e0]{margin-top:.5rem!important}.mr-2[data-v-7c3232e0],.mx-2[data-v-7c3232e0]{margin-right:.5rem!important}.mb-2[data-v-7c3232e0],.my-2[data-v-7c3232e0]{margin-bottom:.5rem!important}.ml-2[data-v-7c3232e0],.mx-2[data-v-7c3232e0]{margin-left:.5rem!important}.m-3[data-v-7c3232e0]{margin:1rem!important}.mt-3[data-v-7c3232e0],.my-3[data-v-7c3232e0]{margin-top:1rem!important}.mr-3[data-v-7c3232e0],.mx-3[data-v-7c3232e0]{margin-right:1rem!important}.mb-3[data-v-7c3232e0],.my-3[data-v-7c3232e0]{margin-bottom:1rem!important}.ml-3[data-v-7c3232e0],.mx-3[data-v-7c3232e0]{margin-left:1rem!important}.m-4[data-v-7c3232e0]{margin:1.5rem!important}.mt-4[data-v-7c3232e0],.my-4[data-v-7c3232e0]{margin-top:1.5rem!important}.mr-4[data-v-7c3232e0],.mx-4[data-v-7c3232e0]{margin-right:1.5rem!important}.mb-4[data-v-7c3232e0],.my-4[data-v-7c3232e0]{margin-bottom:1.5rem!important}.ml-4[data-v-7c3232e0],.mx-4[data-v-7c3232e0]{margin-left:1.5rem!important}.m-5[data-v-7c3232e0]{margin:3rem!important}.mt-5[data-v-7c3232e0],.my-5[data-v-7c3232e0]{margin-top:3rem!important}.mr-5[data-v-7c3232e0],.mx-5[data-v-7c3232e0]{margin-right:3rem!important}.mb-5[data-v-7c3232e0],.my-5[data-v-7c3232e0]{margin-bottom:3rem!important}.ml-5[data-v-7c3232e0],.mx-5[data-v-7c3232e0]{margin-left:3rem!important}.p-0[data-v-7c3232e0]{padding:0!important}.pt-0[data-v-7c3232e0],.py-0[data-v-7c3232e0]{padding-top:0!important}.pr-0[data-v-7c3232e0],.px-0[data-v-7c3232e0]{padding-right:0!important}.pb-0[data-v-7c3232e0],.py-0[data-v-7c3232e0]{padding-bottom:0!important}.pl-0[data-v-7c3232e0],.px-0[data-v-7c3232e0]{padding-left:0!important}.p-1[data-v-7c3232e0]{padding:.25rem!important}.pt-1[data-v-7c3232e0],.py-1[data-v-7c3232e0]{padding-top:.25rem!important}.pr-1[data-v-7c3232e0],.px-1[data-v-7c3232e0]{padding-right:.25rem!important}.pb-1[data-v-7c3232e0],.py-1[data-v-7c3232e0]{padding-bottom:.25rem!important}.pl-1[data-v-7c3232e0],.px-1[data-v-7c3232e0]{padding-left:.25rem!important}.p-2[data-v-7c3232e0]{padding:.5rem!important}.pt-2[data-v-7c3232e0],.py-2[data-v-7c3232e0]{padding-top:.5rem!important}.pr-2[data-v-7c3232e0],.px-2[data-v-7c3232e0]{padding-right:.5rem!important}.pb-2[data-v-7c3232e0],.py-2[data-v-7c3232e0]{padding-bottom:.5rem!important}.pl-2[data-v-7c3232e0],.px-2[data-v-7c3232e0]{padding-left:.5rem!important}.p-3[data-v-7c3232e0]{padding:1rem!important}.pt-3[data-v-7c3232e0],.py-3[data-v-7c3232e0]{padding-top:1rem!important}.pr-3[data-v-7c3232e0],.px-3[data-v-7c3232e0]{padding-right:1rem!important}.pb-3[data-v-7c3232e0],.py-3[data-v-7c3232e0]{padding-bottom:1rem!important}.pl-3[data-v-7c3232e0],.px-3[data-v-7c3232e0]{padding-left:1rem!important}.p-4[data-v-7c3232e0]{padding:1.5rem!important}.pt-4[data-v-7c3232e0],.py-4[data-v-7c3232e0]{padding-top:1.5rem!important}.pr-4[data-v-7c3232e0],.px-4[data-v-7c3232e0]{padding-right:1.5rem!important}.pb-4[data-v-7c3232e0],.py-4[data-v-7c3232e0]{padding-bottom:1.5rem!important}.pl-4[data-v-7c3232e0],.px-4[data-v-7c3232e0]{padding-left:1.5rem!important}.p-5[data-v-7c3232e0]{padding:3rem!important}.pt-5[data-v-7c3232e0],.py-5[data-v-7c3232e0]{padding-top:3rem!important}.pr-5[data-v-7c3232e0],.px-5[data-v-7c3232e0]{padding-right:3rem!important}.pb-5[data-v-7c3232e0],.py-5[data-v-7c3232e0]{padding-bottom:3rem!important}.pl-5[data-v-7c3232e0],.px-5[data-v-7c3232e0]{padding-left:3rem!important}.m-n1[data-v-7c3232e0]{margin:-.25rem!important}.mt-n1[data-v-7c3232e0],.my-n1[data-v-7c3232e0]{margin-top:-.25rem!important}.mr-n1[data-v-7c3232e0],.mx-n1[data-v-7c3232e0]{margin-right:-.25rem!important}.mb-n1[data-v-7c3232e0],.my-n1[data-v-7c3232e0]{margin-bottom:-.25rem!important}.ml-n1[data-v-7c3232e0],.mx-n1[data-v-7c3232e0]{margin-left:-.25rem!important}.m-n2[data-v-7c3232e0]{margin:-.5rem!important}.mt-n2[data-v-7c3232e0],.my-n2[data-v-7c3232e0]{margin-top:-.5rem!important}.mr-n2[data-v-7c3232e0],.mx-n2[data-v-7c3232e0]{margin-right:-.5rem!important}.mb-n2[data-v-7c3232e0],.my-n2[data-v-7c3232e0]{margin-bottom:-.5rem!important}.ml-n2[data-v-7c3232e0],.mx-n2[data-v-7c3232e0]{margin-left:-.5rem!important}.m-n3[data-v-7c3232e0]{margin:-1rem!important}.mt-n3[data-v-7c3232e0],.my-n3[data-v-7c3232e0]{margin-top:-1rem!important}.mr-n3[data-v-7c3232e0],.mx-n3[data-v-7c3232e0]{margin-right:-1rem!important}.mb-n3[data-v-7c3232e0],.my-n3[data-v-7c3232e0]{margin-bottom:-1rem!important}.ml-n3[data-v-7c3232e0],.mx-n3[data-v-7c3232e0]{margin-left:-1rem!important}.m-n4[data-v-7c3232e0]{margin:-1.5rem!important}.mt-n4[data-v-7c3232e0],.my-n4[data-v-7c3232e0]{margin-top:-1.5rem!important}.mr-n4[data-v-7c3232e0],.mx-n4[data-v-7c3232e0]{margin-right:-1.5rem!important}.mb-n4[data-v-7c3232e0],.my-n4[data-v-7c3232e0]{margin-bottom:-1.5rem!important}.ml-n4[data-v-7c3232e0],.mx-n4[data-v-7c3232e0]{margin-left:-1.5rem!important}.m-n5[data-v-7c3232e0]{margin:-3rem!important}.mt-n5[data-v-7c3232e0],.my-n5[data-v-7c3232e0]{margin-top:-3rem!important}.mr-n5[data-v-7c3232e0],.mx-n5[data-v-7c3232e0]{margin-right:-3rem!important}.mb-n5[data-v-7c3232e0],.my-n5[data-v-7c3232e0]{margin-bottom:-3rem!important}.ml-n5[data-v-7c3232e0],.mx-n5[data-v-7c3232e0]{margin-left:-3rem!important}.m-auto[data-v-7c3232e0]{margin:auto!important}.mt-auto[data-v-7c3232e0],.my-auto[data-v-7c3232e0]{margin-top:auto!important}.mr-auto[data-v-7c3232e0],.mx-auto[data-v-7c3232e0]{margin-right:auto!important}.mb-auto[data-v-7c3232e0],.my-auto[data-v-7c3232e0]{margin-bottom:auto!important}.ml-auto[data-v-7c3232e0],.mx-auto[data-v-7c3232e0]{margin-left:auto!important}@media (min-width:576px){.m-sm-0[data-v-7c3232e0]{margin:0!important}.mt-sm-0[data-v-7c3232e0],.my-sm-0[data-v-7c3232e0]{margin-top:0!important}.mr-sm-0[data-v-7c3232e0],.mx-sm-0[data-v-7c3232e0]{margin-right:0!important}.mb-sm-0[data-v-7c3232e0],.my-sm-0[data-v-7c3232e0]{margin-bottom:0!important}.ml-sm-0[data-v-7c3232e0],.mx-sm-0[data-v-7c3232e0]{margin-left:0!important}.m-sm-1[data-v-7c3232e0]{margin:.25rem!important}.mt-sm-1[data-v-7c3232e0],.my-sm-1[data-v-7c3232e0]{margin-top:.25rem!important}.mr-sm-1[data-v-7c3232e0],.mx-sm-1[data-v-7c3232e0]{margin-right:.25rem!important}.mb-sm-1[data-v-7c3232e0],.my-sm-1[data-v-7c3232e0]{margin-bottom:.25rem!important}.ml-sm-1[data-v-7c3232e0],.mx-sm-1[data-v-7c3232e0]{margin-left:.25rem!important}.m-sm-2[data-v-7c3232e0]{margin:.5rem!important}.mt-sm-2[data-v-7c3232e0],.my-sm-2[data-v-7c3232e0]{margin-top:.5rem!important}.mr-sm-2[data-v-7c3232e0],.mx-sm-2[data-v-7c3232e0]{margin-right:.5rem!important}.mb-sm-2[data-v-7c3232e0],.my-sm-2[data-v-7c3232e0]{margin-bottom:.5rem!important}.ml-sm-2[data-v-7c3232e0],.mx-sm-2[data-v-7c3232e0]{margin-left:.5rem!important}.m-sm-3[data-v-7c3232e0]{margin:1rem!important}.mt-sm-3[data-v-7c3232e0],.my-sm-3[data-v-7c3232e0]{margin-top:1rem!important}.mr-sm-3[data-v-7c3232e0],.mx-sm-3[data-v-7c3232e0]{margin-right:1rem!important}.mb-sm-3[data-v-7c3232e0],.my-sm-3[data-v-7c3232e0]{margin-bottom:1rem!important}.ml-sm-3[data-v-7c3232e0],.mx-sm-3[data-v-7c3232e0]{margin-left:1rem!important}.m-sm-4[data-v-7c3232e0]{margin:1.5rem!important}.mt-sm-4[data-v-7c3232e0],.my-sm-4[data-v-7c3232e0]{margin-top:1.5rem!important}.mr-sm-4[data-v-7c3232e0],.mx-sm-4[data-v-7c3232e0]{margin-right:1.5rem!important}.mb-sm-4[data-v-7c3232e0],.my-sm-4[data-v-7c3232e0]{margin-bottom:1.5rem!important}.ml-sm-4[data-v-7c3232e0],.mx-sm-4[data-v-7c3232e0]{margin-left:1.5rem!important}.m-sm-5[data-v-7c3232e0]{margin:3rem!important}.mt-sm-5[data-v-7c3232e0],.my-sm-5[data-v-7c3232e0]{margin-top:3rem!important}.mr-sm-5[data-v-7c3232e0],.mx-sm-5[data-v-7c3232e0]{margin-right:3rem!important}.mb-sm-5[data-v-7c3232e0],.my-sm-5[data-v-7c3232e0]{margin-bottom:3rem!important}.ml-sm-5[data-v-7c3232e0],.mx-sm-5[data-v-7c3232e0]{margin-left:3rem!important}.p-sm-0[data-v-7c3232e0]{padding:0!important}.pt-sm-0[data-v-7c3232e0],.py-sm-0[data-v-7c3232e0]{padding-top:0!important}.pr-sm-0[data-v-7c3232e0],.px-sm-0[data-v-7c3232e0]{padding-right:0!important}.pb-sm-0[data-v-7c3232e0],.py-sm-0[data-v-7c3232e0]{padding-bottom:0!important}.pl-sm-0[data-v-7c3232e0],.px-sm-0[data-v-7c3232e0]{padding-left:0!important}.p-sm-1[data-v-7c3232e0]{padding:.25rem!important}.pt-sm-1[data-v-7c3232e0],.py-sm-1[data-v-7c3232e0]{padding-top:.25rem!important}.pr-sm-1[data-v-7c3232e0],.px-sm-1[data-v-7c3232e0]{padding-right:.25rem!important}.pb-sm-1[data-v-7c3232e0],.py-sm-1[data-v-7c3232e0]{padding-bottom:.25rem!important}.pl-sm-1[data-v-7c3232e0],.px-sm-1[data-v-7c3232e0]{padding-left:.25rem!important}.p-sm-2[data-v-7c3232e0]{padding:.5rem!important}.pt-sm-2[data-v-7c3232e0],.py-sm-2[data-v-7c3232e0]{padding-top:.5rem!important}.pr-sm-2[data-v-7c3232e0],.px-sm-2[data-v-7c3232e0]{padding-right:.5rem!important}.pb-sm-2[data-v-7c3232e0],.py-sm-2[data-v-7c3232e0]{padding-bottom:.5rem!important}.pl-sm-2[data-v-7c3232e0],.px-sm-2[data-v-7c3232e0]{padding-left:.5rem!important}.p-sm-3[data-v-7c3232e0]{padding:1rem!important}.pt-sm-3[data-v-7c3232e0],.py-sm-3[data-v-7c3232e0]{padding-top:1rem!important}.pr-sm-3[data-v-7c3232e0],.px-sm-3[data-v-7c3232e0]{padding-right:1rem!important}.pb-sm-3[data-v-7c3232e0],.py-sm-3[data-v-7c3232e0]{padding-bottom:1rem!important}.pl-sm-3[data-v-7c3232e0],.px-sm-3[data-v-7c3232e0]{padding-left:1rem!important}.p-sm-4[data-v-7c3232e0]{padding:1.5rem!important}.pt-sm-4[data-v-7c3232e0],.py-sm-4[data-v-7c3232e0]{padding-top:1.5rem!important}.pr-sm-4[data-v-7c3232e0],.px-sm-4[data-v-7c3232e0]{padding-right:1.5rem!important}.pb-sm-4[data-v-7c3232e0],.py-sm-4[data-v-7c3232e0]{padding-bottom:1.5rem!important}.pl-sm-4[data-v-7c3232e0],.px-sm-4[data-v-7c3232e0]{padding-left:1.5rem!important}.p-sm-5[data-v-7c3232e0]{padding:3rem!important}.pt-sm-5[data-v-7c3232e0],.py-sm-5[data-v-7c3232e0]{padding-top:3rem!important}.pr-sm-5[data-v-7c3232e0],.px-sm-5[data-v-7c3232e0]{padding-right:3rem!important}.pb-sm-5[data-v-7c3232e0],.py-sm-5[data-v-7c3232e0]{padding-bottom:3rem!important}.pl-sm-5[data-v-7c3232e0],.px-sm-5[data-v-7c3232e0]{padding-left:3rem!important}.m-sm-n1[data-v-7c3232e0]{margin:-.25rem!important}.mt-sm-n1[data-v-7c3232e0],.my-sm-n1[data-v-7c3232e0]{margin-top:-.25rem!important}.mr-sm-n1[data-v-7c3232e0],.mx-sm-n1[data-v-7c3232e0]{margin-right:-.25rem!important}.mb-sm-n1[data-v-7c3232e0],.my-sm-n1[data-v-7c3232e0]{margin-bottom:-.25rem!important}.ml-sm-n1[data-v-7c3232e0],.mx-sm-n1[data-v-7c3232e0]{margin-left:-.25rem!important}.m-sm-n2[data-v-7c3232e0]{margin:-.5rem!important}.mt-sm-n2[data-v-7c3232e0],.my-sm-n2[data-v-7c3232e0]{margin-top:-.5rem!important}.mr-sm-n2[data-v-7c3232e0],.mx-sm-n2[data-v-7c3232e0]{margin-right:-.5rem!important}.mb-sm-n2[data-v-7c3232e0],.my-sm-n2[data-v-7c3232e0]{margin-bottom:-.5rem!important}.ml-sm-n2[data-v-7c3232e0],.mx-sm-n2[data-v-7c3232e0]{margin-left:-.5rem!important}.m-sm-n3[data-v-7c3232e0]{margin:-1rem!important}.mt-sm-n3[data-v-7c3232e0],.my-sm-n3[data-v-7c3232e0]{margin-top:-1rem!important}.mr-sm-n3[data-v-7c3232e0],.mx-sm-n3[data-v-7c3232e0]{margin-right:-1rem!important}.mb-sm-n3[data-v-7c3232e0],.my-sm-n3[data-v-7c3232e0]{margin-bottom:-1rem!important}.ml-sm-n3[data-v-7c3232e0],.mx-sm-n3[data-v-7c3232e0]{margin-left:-1rem!important}.m-sm-n4[data-v-7c3232e0]{margin:-1.5rem!important}.mt-sm-n4[data-v-7c3232e0],.my-sm-n4[data-v-7c3232e0]{margin-top:-1.5rem!important}.mr-sm-n4[data-v-7c3232e0],.mx-sm-n4[data-v-7c3232e0]{margin-right:-1.5rem!important}.mb-sm-n4[data-v-7c3232e0],.my-sm-n4[data-v-7c3232e0]{margin-bottom:-1.5rem!important}.ml-sm-n4[data-v-7c3232e0],.mx-sm-n4[data-v-7c3232e0]{margin-left:-1.5rem!important}.m-sm-n5[data-v-7c3232e0]{margin:-3rem!important}.mt-sm-n5[data-v-7c3232e0],.my-sm-n5[data-v-7c3232e0]{margin-top:-3rem!important}.mr-sm-n5[data-v-7c3232e0],.mx-sm-n5[data-v-7c3232e0]{margin-right:-3rem!important}.mb-sm-n5[data-v-7c3232e0],.my-sm-n5[data-v-7c3232e0]{margin-bottom:-3rem!important}.ml-sm-n5[data-v-7c3232e0],.mx-sm-n5[data-v-7c3232e0]{margin-left:-3rem!important}.m-sm-auto[data-v-7c3232e0]{margin:auto!important}.mt-sm-auto[data-v-7c3232e0],.my-sm-auto[data-v-7c3232e0]{margin-top:auto!important}.mr-sm-auto[data-v-7c3232e0],.mx-sm-auto[data-v-7c3232e0]{margin-right:auto!important}.mb-sm-auto[data-v-7c3232e0],.my-sm-auto[data-v-7c3232e0]{margin-bottom:auto!important}.ml-sm-auto[data-v-7c3232e0],.mx-sm-auto[data-v-7c3232e0]{margin-left:auto!important}}@media (min-width:768px){.m-md-0[data-v-7c3232e0]{margin:0!important}.mt-md-0[data-v-7c3232e0],.my-md-0[data-v-7c3232e0]{margin-top:0!important}.mr-md-0[data-v-7c3232e0],.mx-md-0[data-v-7c3232e0]{margin-right:0!important}.mb-md-0[data-v-7c3232e0],.my-md-0[data-v-7c3232e0]{margin-bottom:0!important}.ml-md-0[data-v-7c3232e0],.mx-md-0[data-v-7c3232e0]{margin-left:0!important}.m-md-1[data-v-7c3232e0]{margin:.25rem!important}.mt-md-1[data-v-7c3232e0],.my-md-1[data-v-7c3232e0]{margin-top:.25rem!important}.mr-md-1[data-v-7c3232e0],.mx-md-1[data-v-7c3232e0]{margin-right:.25rem!important}.mb-md-1[data-v-7c3232e0],.my-md-1[data-v-7c3232e0]{margin-bottom:.25rem!important}.ml-md-1[data-v-7c3232e0],.mx-md-1[data-v-7c3232e0]{margin-left:.25rem!important}.m-md-2[data-v-7c3232e0]{margin:.5rem!important}.mt-md-2[data-v-7c3232e0],.my-md-2[data-v-7c3232e0]{margin-top:.5rem!important}.mr-md-2[data-v-7c3232e0],.mx-md-2[data-v-7c3232e0]{margin-right:.5rem!important}.mb-md-2[data-v-7c3232e0],.my-md-2[data-v-7c3232e0]{margin-bottom:.5rem!important}.ml-md-2[data-v-7c3232e0],.mx-md-2[data-v-7c3232e0]{margin-left:.5rem!important}.m-md-3[data-v-7c3232e0]{margin:1rem!important}.mt-md-3[data-v-7c3232e0],.my-md-3[data-v-7c3232e0]{margin-top:1rem!important}.mr-md-3[data-v-7c3232e0],.mx-md-3[data-v-7c3232e0]{margin-right:1rem!important}.mb-md-3[data-v-7c3232e0],.my-md-3[data-v-7c3232e0]{margin-bottom:1rem!important}.ml-md-3[data-v-7c3232e0],.mx-md-3[data-v-7c3232e0]{margin-left:1rem!important}.m-md-4[data-v-7c3232e0]{margin:1.5rem!important}.mt-md-4[data-v-7c3232e0],.my-md-4[data-v-7c3232e0]{margin-top:1.5rem!important}.mr-md-4[data-v-7c3232e0],.mx-md-4[data-v-7c3232e0]{margin-right:1.5rem!important}.mb-md-4[data-v-7c3232e0],.my-md-4[data-v-7c3232e0]{margin-bottom:1.5rem!important}.ml-md-4[data-v-7c3232e0],.mx-md-4[data-v-7c3232e0]{margin-left:1.5rem!important}.m-md-5[data-v-7c3232e0]{margin:3rem!important}.mt-md-5[data-v-7c3232e0],.my-md-5[data-v-7c3232e0]{margin-top:3rem!important}.mr-md-5[data-v-7c3232e0],.mx-md-5[data-v-7c3232e0]{margin-right:3rem!important}.mb-md-5[data-v-7c3232e0],.my-md-5[data-v-7c3232e0]{margin-bottom:3rem!important}.ml-md-5[data-v-7c3232e0],.mx-md-5[data-v-7c3232e0]{margin-left:3rem!important}.p-md-0[data-v-7c3232e0]{padding:0!important}.pt-md-0[data-v-7c3232e0],.py-md-0[data-v-7c3232e0]{padding-top:0!important}.pr-md-0[data-v-7c3232e0],.px-md-0[data-v-7c3232e0]{padding-right:0!important}.pb-md-0[data-v-7c3232e0],.py-md-0[data-v-7c3232e0]{padding-bottom:0!important}.pl-md-0[data-v-7c3232e0],.px-md-0[data-v-7c3232e0]{padding-left:0!important}.p-md-1[data-v-7c3232e0]{padding:.25rem!important}.pt-md-1[data-v-7c3232e0],.py-md-1[data-v-7c3232e0]{padding-top:.25rem!important}.pr-md-1[data-v-7c3232e0],.px-md-1[data-v-7c3232e0]{padding-right:.25rem!important}.pb-md-1[data-v-7c3232e0],.py-md-1[data-v-7c3232e0]{padding-bottom:.25rem!important}.pl-md-1[data-v-7c3232e0],.px-md-1[data-v-7c3232e0]{padding-left:.25rem!important}.p-md-2[data-v-7c3232e0]{padding:.5rem!important}.pt-md-2[data-v-7c3232e0],.py-md-2[data-v-7c3232e0]{padding-top:.5rem!important}.pr-md-2[data-v-7c3232e0],.px-md-2[data-v-7c3232e0]{padding-right:.5rem!important}.pb-md-2[data-v-7c3232e0],.py-md-2[data-v-7c3232e0]{padding-bottom:.5rem!important}.pl-md-2[data-v-7c3232e0],.px-md-2[data-v-7c3232e0]{padding-left:.5rem!important}.p-md-3[data-v-7c3232e0]{padding:1rem!important}.pt-md-3[data-v-7c3232e0],.py-md-3[data-v-7c3232e0]{padding-top:1rem!important}.pr-md-3[data-v-7c3232e0],.px-md-3[data-v-7c3232e0]{padding-right:1rem!important}.pb-md-3[data-v-7c3232e0],.py-md-3[data-v-7c3232e0]{padding-bottom:1rem!important}.pl-md-3[data-v-7c3232e0],.px-md-3[data-v-7c3232e0]{padding-left:1rem!important}.p-md-4[data-v-7c3232e0]{padding:1.5rem!important}.pt-md-4[data-v-7c3232e0],.py-md-4[data-v-7c3232e0]{padding-top:1.5rem!important}.pr-md-4[data-v-7c3232e0],.px-md-4[data-v-7c3232e0]{padding-right:1.5rem!important}.pb-md-4[data-v-7c3232e0],.py-md-4[data-v-7c3232e0]{padding-bottom:1.5rem!important}.pl-md-4[data-v-7c3232e0],.px-md-4[data-v-7c3232e0]{padding-left:1.5rem!important}.p-md-5[data-v-7c3232e0]{padding:3rem!important}.pt-md-5[data-v-7c3232e0],.py-md-5[data-v-7c3232e0]{padding-top:3rem!important}.pr-md-5[data-v-7c3232e0],.px-md-5[data-v-7c3232e0]{padding-right:3rem!important}.pb-md-5[data-v-7c3232e0],.py-md-5[data-v-7c3232e0]{padding-bottom:3rem!important}.pl-md-5[data-v-7c3232e0],.px-md-5[data-v-7c3232e0]{padding-left:3rem!important}.m-md-n1[data-v-7c3232e0]{margin:-.25rem!important}.mt-md-n1[data-v-7c3232e0],.my-md-n1[data-v-7c3232e0]{margin-top:-.25rem!important}.mr-md-n1[data-v-7c3232e0],.mx-md-n1[data-v-7c3232e0]{margin-right:-.25rem!important}.mb-md-n1[data-v-7c3232e0],.my-md-n1[data-v-7c3232e0]{margin-bottom:-.25rem!important}.ml-md-n1[data-v-7c3232e0],.mx-md-n1[data-v-7c3232e0]{margin-left:-.25rem!important}.m-md-n2[data-v-7c3232e0]{margin:-.5rem!important}.mt-md-n2[data-v-7c3232e0],.my-md-n2[data-v-7c3232e0]{margin-top:-.5rem!important}.mr-md-n2[data-v-7c3232e0],.mx-md-n2[data-v-7c3232e0]{margin-right:-.5rem!important}.mb-md-n2[data-v-7c3232e0],.my-md-n2[data-v-7c3232e0]{margin-bottom:-.5rem!important}.ml-md-n2[data-v-7c3232e0],.mx-md-n2[data-v-7c3232e0]{margin-left:-.5rem!important}.m-md-n3[data-v-7c3232e0]{margin:-1rem!important}.mt-md-n3[data-v-7c3232e0],.my-md-n3[data-v-7c3232e0]{margin-top:-1rem!important}.mr-md-n3[data-v-7c3232e0],.mx-md-n3[data-v-7c3232e0]{margin-right:-1rem!important}.mb-md-n3[data-v-7c3232e0],.my-md-n3[data-v-7c3232e0]{margin-bottom:-1rem!important}.ml-md-n3[data-v-7c3232e0],.mx-md-n3[data-v-7c3232e0]{margin-left:-1rem!important}.m-md-n4[data-v-7c3232e0]{margin:-1.5rem!important}.mt-md-n4[data-v-7c3232e0],.my-md-n4[data-v-7c3232e0]{margin-top:-1.5rem!important}.mr-md-n4[data-v-7c3232e0],.mx-md-n4[data-v-7c3232e0]{margin-right:-1.5rem!important}.mb-md-n4[data-v-7c3232e0],.my-md-n4[data-v-7c3232e0]{margin-bottom:-1.5rem!important}.ml-md-n4[data-v-7c3232e0],.mx-md-n4[data-v-7c3232e0]{margin-left:-1.5rem!important}.m-md-n5[data-v-7c3232e0]{margin:-3rem!important}.mt-md-n5[data-v-7c3232e0],.my-md-n5[data-v-7c3232e0]{margin-top:-3rem!important}.mr-md-n5[data-v-7c3232e0],.mx-md-n5[data-v-7c3232e0]{margin-right:-3rem!important}.mb-md-n5[data-v-7c3232e0],.my-md-n5[data-v-7c3232e0]{margin-bottom:-3rem!important}.ml-md-n5[data-v-7c3232e0],.mx-md-n5[data-v-7c3232e0]{margin-left:-3rem!important}.m-md-auto[data-v-7c3232e0]{margin:auto!important}.mt-md-auto[data-v-7c3232e0],.my-md-auto[data-v-7c3232e0]{margin-top:auto!important}.mr-md-auto[data-v-7c3232e0],.mx-md-auto[data-v-7c3232e0]{margin-right:auto!important}.mb-md-auto[data-v-7c3232e0],.my-md-auto[data-v-7c3232e0]{margin-bottom:auto!important}.ml-md-auto[data-v-7c3232e0],.mx-md-auto[data-v-7c3232e0]{margin-left:auto!important}}@media (min-width:992px){.m-lg-0[data-v-7c3232e0]{margin:0!important}.mt-lg-0[data-v-7c3232e0],.my-lg-0[data-v-7c3232e0]{margin-top:0!important}.mr-lg-0[data-v-7c3232e0],.mx-lg-0[data-v-7c3232e0]{margin-right:0!important}.mb-lg-0[data-v-7c3232e0],.my-lg-0[data-v-7c3232e0]{margin-bottom:0!important}.ml-lg-0[data-v-7c3232e0],.mx-lg-0[data-v-7c3232e0]{margin-left:0!important}.m-lg-1[data-v-7c3232e0]{margin:.25rem!important}.mt-lg-1[data-v-7c3232e0],.my-lg-1[data-v-7c3232e0]{margin-top:.25rem!important}.mr-lg-1[data-v-7c3232e0],.mx-lg-1[data-v-7c3232e0]{margin-right:.25rem!important}.mb-lg-1[data-v-7c3232e0],.my-lg-1[data-v-7c3232e0]{margin-bottom:.25rem!important}.ml-lg-1[data-v-7c3232e0],.mx-lg-1[data-v-7c3232e0]{margin-left:.25rem!important}.m-lg-2[data-v-7c3232e0]{margin:.5rem!important}.mt-lg-2[data-v-7c3232e0],.my-lg-2[data-v-7c3232e0]{margin-top:.5rem!important}.mr-lg-2[data-v-7c3232e0],.mx-lg-2[data-v-7c3232e0]{margin-right:.5rem!important}.mb-lg-2[data-v-7c3232e0],.my-lg-2[data-v-7c3232e0]{margin-bottom:.5rem!important}.ml-lg-2[data-v-7c3232e0],.mx-lg-2[data-v-7c3232e0]{margin-left:.5rem!important}.m-lg-3[data-v-7c3232e0]{margin:1rem!important}.mt-lg-3[data-v-7c3232e0],.my-lg-3[data-v-7c3232e0]{margin-top:1rem!important}.mr-lg-3[data-v-7c3232e0],.mx-lg-3[data-v-7c3232e0]{margin-right:1rem!important}.mb-lg-3[data-v-7c3232e0],.my-lg-3[data-v-7c3232e0]{margin-bottom:1rem!important}.ml-lg-3[data-v-7c3232e0],.mx-lg-3[data-v-7c3232e0]{margin-left:1rem!important}.m-lg-4[data-v-7c3232e0]{margin:1.5rem!important}.mt-lg-4[data-v-7c3232e0],.my-lg-4[data-v-7c3232e0]{margin-top:1.5rem!important}.mr-lg-4[data-v-7c3232e0],.mx-lg-4[data-v-7c3232e0]{margin-right:1.5rem!important}.mb-lg-4[data-v-7c3232e0],.my-lg-4[data-v-7c3232e0]{margin-bottom:1.5rem!important}.ml-lg-4[data-v-7c3232e0],.mx-lg-4[data-v-7c3232e0]{margin-left:1.5rem!important}.m-lg-5[data-v-7c3232e0]{margin:3rem!important}.mt-lg-5[data-v-7c3232e0],.my-lg-5[data-v-7c3232e0]{margin-top:3rem!important}.mr-lg-5[data-v-7c3232e0],.mx-lg-5[data-v-7c3232e0]{margin-right:3rem!important}.mb-lg-5[data-v-7c3232e0],.my-lg-5[data-v-7c3232e0]{margin-bottom:3rem!important}.ml-lg-5[data-v-7c3232e0],.mx-lg-5[data-v-7c3232e0]{margin-left:3rem!important}.p-lg-0[data-v-7c3232e0]{padding:0!important}.pt-lg-0[data-v-7c3232e0],.py-lg-0[data-v-7c3232e0]{padding-top:0!important}.pr-lg-0[data-v-7c3232e0],.px-lg-0[data-v-7c3232e0]{padding-right:0!important}.pb-lg-0[data-v-7c3232e0],.py-lg-0[data-v-7c3232e0]{padding-bottom:0!important}.pl-lg-0[data-v-7c3232e0],.px-lg-0[data-v-7c3232e0]{padding-left:0!important}.p-lg-1[data-v-7c3232e0]{padding:.25rem!important}.pt-lg-1[data-v-7c3232e0],.py-lg-1[data-v-7c3232e0]{padding-top:.25rem!important}.pr-lg-1[data-v-7c3232e0],.px-lg-1[data-v-7c3232e0]{padding-right:.25rem!important}.pb-lg-1[data-v-7c3232e0],.py-lg-1[data-v-7c3232e0]{padding-bottom:.25rem!important}.pl-lg-1[data-v-7c3232e0],.px-lg-1[data-v-7c3232e0]{padding-left:.25rem!important}.p-lg-2[data-v-7c3232e0]{padding:.5rem!important}.pt-lg-2[data-v-7c3232e0],.py-lg-2[data-v-7c3232e0]{padding-top:.5rem!important}.pr-lg-2[data-v-7c3232e0],.px-lg-2[data-v-7c3232e0]{padding-right:.5rem!important}.pb-lg-2[data-v-7c3232e0],.py-lg-2[data-v-7c3232e0]{padding-bottom:.5rem!important}.pl-lg-2[data-v-7c3232e0],.px-lg-2[data-v-7c3232e0]{padding-left:.5rem!important}.p-lg-3[data-v-7c3232e0]{padding:1rem!important}.pt-lg-3[data-v-7c3232e0],.py-lg-3[data-v-7c3232e0]{padding-top:1rem!important}.pr-lg-3[data-v-7c3232e0],.px-lg-3[data-v-7c3232e0]{padding-right:1rem!important}.pb-lg-3[data-v-7c3232e0],.py-lg-3[data-v-7c3232e0]{padding-bottom:1rem!important}.pl-lg-3[data-v-7c3232e0],.px-lg-3[data-v-7c3232e0]{padding-left:1rem!important}.p-lg-4[data-v-7c3232e0]{padding:1.5rem!important}.pt-lg-4[data-v-7c3232e0],.py-lg-4[data-v-7c3232e0]{padding-top:1.5rem!important}.pr-lg-4[data-v-7c3232e0],.px-lg-4[data-v-7c3232e0]{padding-right:1.5rem!important}.pb-lg-4[data-v-7c3232e0],.py-lg-4[data-v-7c3232e0]{padding-bottom:1.5rem!important}.pl-lg-4[data-v-7c3232e0],.px-lg-4[data-v-7c3232e0]{padding-left:1.5rem!important}.p-lg-5[data-v-7c3232e0]{padding:3rem!important}.pt-lg-5[data-v-7c3232e0],.py-lg-5[data-v-7c3232e0]{padding-top:3rem!important}.pr-lg-5[data-v-7c3232e0],.px-lg-5[data-v-7c3232e0]{padding-right:3rem!important}.pb-lg-5[data-v-7c3232e0],.py-lg-5[data-v-7c3232e0]{padding-bottom:3rem!important}.pl-lg-5[data-v-7c3232e0],.px-lg-5[data-v-7c3232e0]{padding-left:3rem!important}.m-lg-n1[data-v-7c3232e0]{margin:-.25rem!important}.mt-lg-n1[data-v-7c3232e0],.my-lg-n1[data-v-7c3232e0]{margin-top:-.25rem!important}.mr-lg-n1[data-v-7c3232e0],.mx-lg-n1[data-v-7c3232e0]{margin-right:-.25rem!important}.mb-lg-n1[data-v-7c3232e0],.my-lg-n1[data-v-7c3232e0]{margin-bottom:-.25rem!important}.ml-lg-n1[data-v-7c3232e0],.mx-lg-n1[data-v-7c3232e0]{margin-left:-.25rem!important}.m-lg-n2[data-v-7c3232e0]{margin:-.5rem!important}.mt-lg-n2[data-v-7c3232e0],.my-lg-n2[data-v-7c3232e0]{margin-top:-.5rem!important}.mr-lg-n2[data-v-7c3232e0],.mx-lg-n2[data-v-7c3232e0]{margin-right:-.5rem!important}.mb-lg-n2[data-v-7c3232e0],.my-lg-n2[data-v-7c3232e0]{margin-bottom:-.5rem!important}.ml-lg-n2[data-v-7c3232e0],.mx-lg-n2[data-v-7c3232e0]{margin-left:-.5rem!important}.m-lg-n3[data-v-7c3232e0]{margin:-1rem!important}.mt-lg-n3[data-v-7c3232e0],.my-lg-n3[data-v-7c3232e0]{margin-top:-1rem!important}.mr-lg-n3[data-v-7c3232e0],.mx-lg-n3[data-v-7c3232e0]{margin-right:-1rem!important}.mb-lg-n3[data-v-7c3232e0],.my-lg-n3[data-v-7c3232e0]{margin-bottom:-1rem!important}.ml-lg-n3[data-v-7c3232e0],.mx-lg-n3[data-v-7c3232e0]{margin-left:-1rem!important}.m-lg-n4[data-v-7c3232e0]{margin:-1.5rem!important}.mt-lg-n4[data-v-7c3232e0],.my-lg-n4[data-v-7c3232e0]{margin-top:-1.5rem!important}.mr-lg-n4[data-v-7c3232e0],.mx-lg-n4[data-v-7c3232e0]{margin-right:-1.5rem!important}.mb-lg-n4[data-v-7c3232e0],.my-lg-n4[data-v-7c3232e0]{margin-bottom:-1.5rem!important}.ml-lg-n4[data-v-7c3232e0],.mx-lg-n4[data-v-7c3232e0]{margin-left:-1.5rem!important}.m-lg-n5[data-v-7c3232e0]{margin:-3rem!important}.mt-lg-n5[data-v-7c3232e0],.my-lg-n5[data-v-7c3232e0]{margin-top:-3rem!important}.mr-lg-n5[data-v-7c3232e0],.mx-lg-n5[data-v-7c3232e0]{margin-right:-3rem!important}.mb-lg-n5[data-v-7c3232e0],.my-lg-n5[data-v-7c3232e0]{margin-bottom:-3rem!important}.ml-lg-n5[data-v-7c3232e0],.mx-lg-n5[data-v-7c3232e0]{margin-left:-3rem!important}.m-lg-auto[data-v-7c3232e0]{margin:auto!important}.mt-lg-auto[data-v-7c3232e0],.my-lg-auto[data-v-7c3232e0]{margin-top:auto!important}.mr-lg-auto[data-v-7c3232e0],.mx-lg-auto[data-v-7c3232e0]{margin-right:auto!important}.mb-lg-auto[data-v-7c3232e0],.my-lg-auto[data-v-7c3232e0]{margin-bottom:auto!important}.ml-lg-auto[data-v-7c3232e0],.mx-lg-auto[data-v-7c3232e0]{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0[data-v-7c3232e0]{margin:0!important}.mt-xl-0[data-v-7c3232e0],.my-xl-0[data-v-7c3232e0]{margin-top:0!important}.mr-xl-0[data-v-7c3232e0],.mx-xl-0[data-v-7c3232e0]{margin-right:0!important}.mb-xl-0[data-v-7c3232e0],.my-xl-0[data-v-7c3232e0]{margin-bottom:0!important}.ml-xl-0[data-v-7c3232e0],.mx-xl-0[data-v-7c3232e0]{margin-left:0!important}.m-xl-1[data-v-7c3232e0]{margin:.25rem!important}.mt-xl-1[data-v-7c3232e0],.my-xl-1[data-v-7c3232e0]{margin-top:.25rem!important}.mr-xl-1[data-v-7c3232e0],.mx-xl-1[data-v-7c3232e0]{margin-right:.25rem!important}.mb-xl-1[data-v-7c3232e0],.my-xl-1[data-v-7c3232e0]{margin-bottom:.25rem!important}.ml-xl-1[data-v-7c3232e0],.mx-xl-1[data-v-7c3232e0]{margin-left:.25rem!important}.m-xl-2[data-v-7c3232e0]{margin:.5rem!important}.mt-xl-2[data-v-7c3232e0],.my-xl-2[data-v-7c3232e0]{margin-top:.5rem!important}.mr-xl-2[data-v-7c3232e0],.mx-xl-2[data-v-7c3232e0]{margin-right:.5rem!important}.mb-xl-2[data-v-7c3232e0],.my-xl-2[data-v-7c3232e0]{margin-bottom:.5rem!important}.ml-xl-2[data-v-7c3232e0],.mx-xl-2[data-v-7c3232e0]{margin-left:.5rem!important}.m-xl-3[data-v-7c3232e0]{margin:1rem!important}.mt-xl-3[data-v-7c3232e0],.my-xl-3[data-v-7c3232e0]{margin-top:1rem!important}.mr-xl-3[data-v-7c3232e0],.mx-xl-3[data-v-7c3232e0]{margin-right:1rem!important}.mb-xl-3[data-v-7c3232e0],.my-xl-3[data-v-7c3232e0]{margin-bottom:1rem!important}.ml-xl-3[data-v-7c3232e0],.mx-xl-3[data-v-7c3232e0]{margin-left:1rem!important}.m-xl-4[data-v-7c3232e0]{margin:1.5rem!important}.mt-xl-4[data-v-7c3232e0],.my-xl-4[data-v-7c3232e0]{margin-top:1.5rem!important}.mr-xl-4[data-v-7c3232e0],.mx-xl-4[data-v-7c3232e0]{margin-right:1.5rem!important}.mb-xl-4[data-v-7c3232e0],.my-xl-4[data-v-7c3232e0]{margin-bottom:1.5rem!important}.ml-xl-4[data-v-7c3232e0],.mx-xl-4[data-v-7c3232e0]{margin-left:1.5rem!important}.m-xl-5[data-v-7c3232e0]{margin:3rem!important}.mt-xl-5[data-v-7c3232e0],.my-xl-5[data-v-7c3232e0]{margin-top:3rem!important}.mr-xl-5[data-v-7c3232e0],.mx-xl-5[data-v-7c3232e0]{margin-right:3rem!important}.mb-xl-5[data-v-7c3232e0],.my-xl-5[data-v-7c3232e0]{margin-bottom:3rem!important}.ml-xl-5[data-v-7c3232e0],.mx-xl-5[data-v-7c3232e0]{margin-left:3rem!important}.p-xl-0[data-v-7c3232e0]{padding:0!important}.pt-xl-0[data-v-7c3232e0],.py-xl-0[data-v-7c3232e0]{padding-top:0!important}.pr-xl-0[data-v-7c3232e0],.px-xl-0[data-v-7c3232e0]{padding-right:0!important}.pb-xl-0[data-v-7c3232e0],.py-xl-0[data-v-7c3232e0]{padding-bottom:0!important}.pl-xl-0[data-v-7c3232e0],.px-xl-0[data-v-7c3232e0]{padding-left:0!important}.p-xl-1[data-v-7c3232e0]{padding:.25rem!important}.pt-xl-1[data-v-7c3232e0],.py-xl-1[data-v-7c3232e0]{padding-top:.25rem!important}.pr-xl-1[data-v-7c3232e0],.px-xl-1[data-v-7c3232e0]{padding-right:.25rem!important}.pb-xl-1[data-v-7c3232e0],.py-xl-1[data-v-7c3232e0]{padding-bottom:.25rem!important}.pl-xl-1[data-v-7c3232e0],.px-xl-1[data-v-7c3232e0]{padding-left:.25rem!important}.p-xl-2[data-v-7c3232e0]{padding:.5rem!important}.pt-xl-2[data-v-7c3232e0],.py-xl-2[data-v-7c3232e0]{padding-top:.5rem!important}.pr-xl-2[data-v-7c3232e0],.px-xl-2[data-v-7c3232e0]{padding-right:.5rem!important}.pb-xl-2[data-v-7c3232e0],.py-xl-2[data-v-7c3232e0]{padding-bottom:.5rem!important}.pl-xl-2[data-v-7c3232e0],.px-xl-2[data-v-7c3232e0]{padding-left:.5rem!important}.p-xl-3[data-v-7c3232e0]{padding:1rem!important}.pt-xl-3[data-v-7c3232e0],.py-xl-3[data-v-7c3232e0]{padding-top:1rem!important}.pr-xl-3[data-v-7c3232e0],.px-xl-3[data-v-7c3232e0]{padding-right:1rem!important}.pb-xl-3[data-v-7c3232e0],.py-xl-3[data-v-7c3232e0]{padding-bottom:1rem!important}.pl-xl-3[data-v-7c3232e0],.px-xl-3[data-v-7c3232e0]{padding-left:1rem!important}.p-xl-4[data-v-7c3232e0]{padding:1.5rem!important}.pt-xl-4[data-v-7c3232e0],.py-xl-4[data-v-7c3232e0]{padding-top:1.5rem!important}.pr-xl-4[data-v-7c3232e0],.px-xl-4[data-v-7c3232e0]{padding-right:1.5rem!important}.pb-xl-4[data-v-7c3232e0],.py-xl-4[data-v-7c3232e0]{padding-bottom:1.5rem!important}.pl-xl-4[data-v-7c3232e0],.px-xl-4[data-v-7c3232e0]{padding-left:1.5rem!important}.p-xl-5[data-v-7c3232e0]{padding:3rem!important}.pt-xl-5[data-v-7c3232e0],.py-xl-5[data-v-7c3232e0]{padding-top:3rem!important}.pr-xl-5[data-v-7c3232e0],.px-xl-5[data-v-7c3232e0]{padding-right:3rem!important}.pb-xl-5[data-v-7c3232e0],.py-xl-5[data-v-7c3232e0]{padding-bottom:3rem!important}.pl-xl-5[data-v-7c3232e0],.px-xl-5[data-v-7c3232e0]{padding-left:3rem!important}.m-xl-n1[data-v-7c3232e0]{margin:-.25rem!important}.mt-xl-n1[data-v-7c3232e0],.my-xl-n1[data-v-7c3232e0]{margin-top:-.25rem!important}.mr-xl-n1[data-v-7c3232e0],.mx-xl-n1[data-v-7c3232e0]{margin-right:-.25rem!important}.mb-xl-n1[data-v-7c3232e0],.my-xl-n1[data-v-7c3232e0]{margin-bottom:-.25rem!important}.ml-xl-n1[data-v-7c3232e0],.mx-xl-n1[data-v-7c3232e0]{margin-left:-.25rem!important}.m-xl-n2[data-v-7c3232e0]{margin:-.5rem!important}.mt-xl-n2[data-v-7c3232e0],.my-xl-n2[data-v-7c3232e0]{margin-top:-.5rem!important}.mr-xl-n2[data-v-7c3232e0],.mx-xl-n2[data-v-7c3232e0]{margin-right:-.5rem!important}.mb-xl-n2[data-v-7c3232e0],.my-xl-n2[data-v-7c3232e0]{margin-bottom:-.5rem!important}.ml-xl-n2[data-v-7c3232e0],.mx-xl-n2[data-v-7c3232e0]{margin-left:-.5rem!important}.m-xl-n3[data-v-7c3232e0]{margin:-1rem!important}.mt-xl-n3[data-v-7c3232e0],.my-xl-n3[data-v-7c3232e0]{margin-top:-1rem!important}.mr-xl-n3[data-v-7c3232e0],.mx-xl-n3[data-v-7c3232e0]{margin-right:-1rem!important}.mb-xl-n3[data-v-7c3232e0],.my-xl-n3[data-v-7c3232e0]{margin-bottom:-1rem!important}.ml-xl-n3[data-v-7c3232e0],.mx-xl-n3[data-v-7c3232e0]{margin-left:-1rem!important}.m-xl-n4[data-v-7c3232e0]{margin:-1.5rem!important}.mt-xl-n4[data-v-7c3232e0],.my-xl-n4[data-v-7c3232e0]{margin-top:-1.5rem!important}.mr-xl-n4[data-v-7c3232e0],.mx-xl-n4[data-v-7c3232e0]{margin-right:-1.5rem!important}.mb-xl-n4[data-v-7c3232e0],.my-xl-n4[data-v-7c3232e0]{margin-bottom:-1.5rem!important}.ml-xl-n4[data-v-7c3232e0],.mx-xl-n4[data-v-7c3232e0]{margin-left:-1.5rem!important}.m-xl-n5[data-v-7c3232e0]{margin:-3rem!important}.mt-xl-n5[data-v-7c3232e0],.my-xl-n5[data-v-7c3232e0]{margin-top:-3rem!important}.mr-xl-n5[data-v-7c3232e0],.mx-xl-n5[data-v-7c3232e0]{margin-right:-3rem!important}.mb-xl-n5[data-v-7c3232e0],.my-xl-n5[data-v-7c3232e0]{margin-bottom:-3rem!important}.ml-xl-n5[data-v-7c3232e0],.mx-xl-n5[data-v-7c3232e0]{margin-left:-3rem!important}.m-xl-auto[data-v-7c3232e0]{margin:auto!important}.mt-xl-auto[data-v-7c3232e0],.my-xl-auto[data-v-7c3232e0]{margin-top:auto!important}.mr-xl-auto[data-v-7c3232e0],.mx-xl-auto[data-v-7c3232e0]{margin-right:auto!important}.mb-xl-auto[data-v-7c3232e0],.my-xl-auto[data-v-7c3232e0]{margin-bottom:auto!important}.ml-xl-auto[data-v-7c3232e0],.mx-xl-auto[data-v-7c3232e0]{margin-left:auto!important}}.stretched-link[data-v-7c3232e0]:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.text-monospace[data-v-7c3232e0]{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify[data-v-7c3232e0]{text-align:justify!important}.text-wrap[data-v-7c3232e0]{white-space:normal!important}.text-nowrap[data-v-7c3232e0]{white-space:nowrap!important}.text-truncate[data-v-7c3232e0]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left[data-v-7c3232e0]{text-align:left!important}.text-right[data-v-7c3232e0]{text-align:right!important}.text-center[data-v-7c3232e0]{text-align:center!important}@media (min-width:576px){.text-sm-left[data-v-7c3232e0]{text-align:left!important}.text-sm-right[data-v-7c3232e0]{text-align:right!important}.text-sm-center[data-v-7c3232e0]{text-align:center!important}}@media (min-width:768px){.text-md-left[data-v-7c3232e0]{text-align:left!important}.text-md-right[data-v-7c3232e0]{text-align:right!important}.text-md-center[data-v-7c3232e0]{text-align:center!important}}@media (min-width:992px){.text-lg-left[data-v-7c3232e0]{text-align:left!important}.text-lg-right[data-v-7c3232e0]{text-align:right!important}.text-lg-center[data-v-7c3232e0]{text-align:center!important}}@media (min-width:1200px){.text-xl-left[data-v-7c3232e0]{text-align:left!important}.text-xl-right[data-v-7c3232e0]{text-align:right!important}.text-xl-center[data-v-7c3232e0]{text-align:center!important}}.text-lowercase[data-v-7c3232e0]{text-transform:lowercase!important}.text-uppercase[data-v-7c3232e0]{text-transform:uppercase!important}.text-capitalize[data-v-7c3232e0]{text-transform:capitalize!important}.font-weight-light[data-v-7c3232e0]{font-weight:300!important}.font-weight-lighter[data-v-7c3232e0]{font-weight:lighter!important}.font-weight-normal[data-v-7c3232e0]{font-weight:400!important}.font-weight-bold[data-v-7c3232e0]{font-weight:700!important}.font-weight-bolder[data-v-7c3232e0]{font-weight:bolder!important}.font-italic[data-v-7c3232e0]{font-style:italic!important}.text-white[data-v-7c3232e0]{color:#fff!important}.text-primary[data-v-7c3232e0]{color:#203040!important}a.text-primary[data-v-7c3232e0]:focus,a.text-primary[data-v-7c3232e0]:hover{color:#070a0d!important}.text-secondary[data-v-7c3232e0]{color:#ce0cb7!important}a.text-secondary[data-v-7c3232e0]:focus,a.text-secondary[data-v-7c3232e0]:hover{color:#860877!important}.text-success[data-v-7c3232e0]{color:#28a745!important}a.text-success[data-v-7c3232e0]:focus,a.text-success[data-v-7c3232e0]:hover{color:#19692c!important}.text-info[data-v-7c3232e0]{color:#17a2b8!important}a.text-info[data-v-7c3232e0]:focus,a.text-info[data-v-7c3232e0]:hover{color:#0f6674!important}.text-warning[data-v-7c3232e0]{color:#ffc107!important}a.text-warning[data-v-7c3232e0]:focus,a.text-warning[data-v-7c3232e0]:hover{color:#ba8b00!important}.text-danger[data-v-7c3232e0]{color:#dc3545!important}a.text-danger[data-v-7c3232e0]:focus,a.text-danger[data-v-7c3232e0]:hover{color:#a71d2a!important}.text-light[data-v-7c3232e0]{color:#f8f9fa!important}a.text-light[data-v-7c3232e0]:focus,a.text-light[data-v-7c3232e0]:hover{color:#cbd3da!important}.text-dark[data-v-7c3232e0]{color:#343a40!important}a.text-dark[data-v-7c3232e0]:focus,a.text-dark[data-v-7c3232e0]:hover{color:#121416!important}.text-body[data-v-7c3232e0]{color:#a79e8b!important}.text-muted[data-v-7c3232e0]{color:#6c757d!important}.text-black-50[data-v-7c3232e0]{color:rgba(0,0,0,.5)!important}.text-white-50[data-v-7c3232e0]{color:hsla(0,0%,100%,.5)!important}.text-hide[data-v-7c3232e0]{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none[data-v-7c3232e0]{text-decoration:none!important}.text-break[data-v-7c3232e0]{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset[data-v-7c3232e0]{color:inherit!important}.visible[data-v-7c3232e0]{visibility:visible!important}.invisible[data-v-7c3232e0]{visibility:hidden!important}@media print{[data-v-7c3232e0],[data-v-7c3232e0]:after,[data-v-7c3232e0]:before{text-shadow:none!important;box-shadow:none!important}a[data-v-7c3232e0]:not(.btn){text-decoration:underline}abbr[title][data-v-7c3232e0]:after{content:" (" attr(title) ")"}pre[data-v-7c3232e0]{white-space:pre-wrap!important}blockquote[data-v-7c3232e0],pre[data-v-7c3232e0]{border:1px solid #adb5bd;page-break-inside:avoid}thead[data-v-7c3232e0]{display:table-header-group}img[data-v-7c3232e0],tr[data-v-7c3232e0]{page-break-inside:avoid}h2[data-v-7c3232e0],h3[data-v-7c3232e0],p[data-v-7c3232e0]{orphans:3;widows:3}h2[data-v-7c3232e0],h3[data-v-7c3232e0]{page-break-after:avoid}@page{size:a3}.container[data-v-7c3232e0],body[data-v-7c3232e0]{min-width:992px!important}.navbar[data-v-7c3232e0]{display:none}.badge[data-v-7c3232e0]{border:1px solid #000}.table[data-v-7c3232e0]{border-collapse:collapse!important}.table td[data-v-7c3232e0],.table th[data-v-7c3232e0]{background-color:#fff!important}.table-bordered td[data-v-7c3232e0],.table-bordered th[data-v-7c3232e0]{border:1px solid #dee2e6!important}.table-dark[data-v-7c3232e0]{color:inherit}.table-dark tbody+tbody[data-v-7c3232e0],.table-dark td[data-v-7c3232e0],.table-dark th[data-v-7c3232e0],.table-dark thead th[data-v-7c3232e0]{border-color:#dee2e6}.table .thead-dark th[data-v-7c3232e0]{color:inherit;border-color:#dee2e6}}.btn-group .dropdown-toggle-split[data-v-7c3232e0]{margin-bottom:8px}[data-v-7c3232e0]{-webkit-tap-highlight-color:rgba(0,0,0,0)}.sticky[data-v-7c3232e0]{position:sticky;top:0;z-index:9999}.btn[data-v-7c3232e0]:focus,.dropdown-item[data-v-7c3232e0]:focus{outline:none}.alert-dismissible .close[data-v-7c3232e0]{cursor:pointer}label.btn[data-v-7c3232e0]:hover{text-decoration:none;cursor:pointer}.progress-bar[data-v-7c3232e0],.text-muted[data-v-7c3232e0]{color:#a79e8b!important}.btn[data-v-7c3232e0],.card[data-v-7c3232e0],.dropdown-toggle[data-v-7c3232e0]:after,.jumbotron[data-v-7c3232e0],.list-group-item[data-v-7c3232e0],.modal-content[data-v-7c3232e0]{border:1px solid #507386!important}.app-view-mode-embed .card[data-v-7c3232e0],.app-view-mode-embed .list-group-item[data-v-7c3232e0]{border:none!important}.app-view-mode-embed .card[data-v-7c3232e0],.list-group-item[data-v-7c3232e0]{border-left:none!important;border-right:none!important}.app-view-mode-embed .card[data-v-7c3232e0]{border-top:none!important}.card-body.header[data-v-7c3232e0]{border-bottom:1px solid #507386!important}.list-group-item[data-v-7c3232e0]{margin-bottom:-1px!important}.jumbotron[data-v-7c3232e0]{border:1px solid #2a3c46!important}.dropdown-item.active[data-v-7c3232e0]{background-color:#203040!important}.dark .dropdown-item[data-v-7c3232e0]:focus,.dropdown-item[data-v-7c3232e0]:hover{outline:1px solid #507386!important;outline-offset:-1px;background-color:initial}.alert[data-v-7c3232e0],.card[data-v-7c3232e0],.dropdown-menu[data-v-7c3232e0],.list-group-item[data-v-7c3232e0],.modal-content[data-v-7c3232e0],.progress-bar[data-v-7c3232e0]{background-color:#101417!important}.card[data-v-7c3232e0]{background-color:initial!important}.btn[data-v-7c3232e0]{color:#a79e8b}.btn span[data-v-7c3232e0]{background-color:#101417}.btn-danger[data-v-7c3232e0]{background-color:#203040!important}a[data-v-7c3232e0]{background-color:#203040;padding:.2rem;color:#80b6cc!important}a[data-v-7c3232e0]:hover{color:#80b6cc!important;background-color:initial;text-decoration:underline!important}.dropdown-toggle[data-v-7c3232e0]:after{border-color:transparent!important;border-top:.3em solid!important;border-right:.3em solid transparent!important;border-bottom:0!important;border-left:.3em solid transparent!important}input[data-v-7c3232e0],select[data-v-7c3232e0],textarea[data-v-7c3232e0]{background-color:#203040!important;color:#a79e8b!important;border:1px solid #507386!important}a.vast-blocker[data-v-7c3232e0]{background:none!important}.modal-header[data-v-7c3232e0]{border-bottom:none!important}.modal-footer[data-v-7c3232e0]{border-top:none!important}.modal-content .close[data-v-7c3232e0]{text-shadow:none!important;color:#507386!important;padding:0;margin:0}.modal-content .close[data-v-7c3232e0]:after,.modal-content .close[data-v-7c3232e0]:before{background-color:initial!important}body[data-v-7c3232e0]::-webkit-scrollbar{display:none}.modal-backdrop[data-v-7c3232e0]{opacity:.7}.my-btn-link[data-v-7c3232e0]{background-color:#203040}.my-btn-link[data-v-7c3232e0]:hover{background:#0f171e;color:#fff!important}.btn span[data-v-7c3232e0]{background:none!important}@media (max-width:576px){.modal-content[data-v-7c3232e0]{border-radius:0;border-left:none!important;border-right:none!important}.modal-dialog[data-v-7c3232e0]{width:100vw;margin:0}}img[data-v-7c3232e0]{width:100%;margin:0;padding:0;height:100%;min-height:4.5rem} \ No newline at end of file diff --git a/ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.css.gz b/ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.css.gz similarity index 68% rename from ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.css.gz rename to ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.css.gz index b57499050a1492fdfe06bce991fbb62112628582..b10f9b335a4a1e1bfc895f2d3a182a4f0c34a08c 100644 GIT binary patch delta 8045 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 diff --git a/ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.js b/ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.js similarity index 53% rename from ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.js rename to ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.js index 453df19..dd62c1e 100644 --- a/ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.js +++ b/ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.js @@ -1,2 +1,2 @@ (window.webpackJsonp=window.webpackJsonp||[]).push([[3],[]]); -//# sourceMappingURL=async_main_7a2bfe28.dc63956c75681b023819.bundle.js.map \ No newline at end of file +//# sourceMappingURL=async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.js.map \ No newline at end of file diff --git a/ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.js.map b/ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.js.map similarity index 50% rename from ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.js.map rename to ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.js.map index 11716a1..1033cd2 100644 --- a/ui/dist/async_main_7a2bfe28.dc63956c75681b023819.bundle.js.map +++ b/ui/dist/async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.js.map @@ -1 +1 @@ -{"version":3,"sources":[],"names":[],"mappings":"","file":"async_main_7a2bfe28.dc63956c75681b023819.bundle.js","sourceRoot":""} \ No newline at end of file +{"version":3,"sources":[],"names":[],"mappings":"","file":"async_main_7a2bfe28.c8a5d568b3002b296cb0.bundle.js","sourceRoot":""} \ No newline at end of file diff --git a/ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.css b/ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.css similarity index 68% rename from ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.css rename to ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.css index 272b72f..23909b9 100644 --- a/ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.css +++ b/ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.css @@ -3,4 +3,4 @@ * Copyright 2011-2020 The Bootstrap Authors * Copyright 2011-2020 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#203040;--secondary:#ce0cb7;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,:after,:before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:1rem;font-weight:400;line-height:1.5;color:#a79e8b;text-align:left;background-color:#101417}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:initial;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{font-style:normal;line-height:inherit}address,dl,ol,ul{margin-bottom:1rem}dl,ol,ul{margin-top:0}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}a{color:#80b6cc;text-decoration:none;background-color:initial}a:hover{color:#4997b6;text-decoration:underline}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{border-style:none}img,svg{vertical-align:middle}svg{overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:initial}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2;color:#f78e66}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem}.display-1,.display-2{font-weight:300;line-height:1.2}.display-2{font-size:5.5rem}.display-3{font-size:4.5rem}.display-3,.display-4{font-weight:300;line-height:1.2}.display-4{font-size:3.5rem}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer:before{content:"\2014\A0"}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#101417;border:1px solid #dee2e6;border-radius:.25rem}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.33333%;max-width:8.33333%}.col-2{flex:0 0 16.66667%;max-width:16.66667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.33333%;max-width:33.33333%}.col-5{flex:0 0 41.66667%;max-width:41.66667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.33333%;max-width:58.33333%}.col-8{flex:0 0 66.66667%;max-width:66.66667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.33333%;max-width:83.33333%}.col-11{flex:0 0 91.66667%;max-width:91.66667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.33333%}.offset-2{margin-left:16.66667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333%}.offset-5{margin-left:41.66667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333%}.offset-8{margin-left:66.66667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333%}.offset-11{margin-left:91.66667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.33333%;max-width:8.33333%}.col-sm-2{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.33333%;max-width:33.33333%}.col-sm-5{flex:0 0 41.66667%;max-width:41.66667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.33333%;max-width:58.33333%}.col-sm-8{flex:0 0 66.66667%;max-width:66.66667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.33333%;max-width:83.33333%}.col-sm-11{flex:0 0 91.66667%;max-width:91.66667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333%}.offset-sm-2{margin-left:16.66667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333%}.offset-sm-5{margin-left:41.66667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333%}.offset-sm-8{margin-left:66.66667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333%}.offset-sm-11{margin-left:91.66667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.33333%;max-width:8.33333%}.col-md-2{flex:0 0 16.66667%;max-width:16.66667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.33333%;max-width:33.33333%}.col-md-5{flex:0 0 41.66667%;max-width:41.66667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.33333%;max-width:58.33333%}.col-md-8{flex:0 0 66.66667%;max-width:66.66667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.33333%;max-width:83.33333%}.col-md-11{flex:0 0 91.66667%;max-width:91.66667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333%}.offset-md-2{margin-left:16.66667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333%}.offset-md-5{margin-left:41.66667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333%}.offset-md-8{margin-left:66.66667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333%}.offset-md-11{margin-left:91.66667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.33333%;max-width:8.33333%}.col-lg-2{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.33333%;max-width:33.33333%}.col-lg-5{flex:0 0 41.66667%;max-width:41.66667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.33333%;max-width:58.33333%}.col-lg-8{flex:0 0 66.66667%;max-width:66.66667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.33333%;max-width:83.33333%}.col-lg-11{flex:0 0 91.66667%;max-width:91.66667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333%}.offset-lg-2{margin-left:16.66667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333%}.offset-lg-5{margin-left:41.66667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333%}.offset-lg-8{margin-left:66.66667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333%}.offset-lg-11{margin-left:91.66667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.33333%;max-width:8.33333%}.col-xl-2{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.33333%;max-width:33.33333%}.col-xl-5{flex:0 0 41.66667%;max-width:41.66667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.33333%;max-width:58.33333%}.col-xl-8{flex:0 0 66.66667%;max-width:66.66667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.33333%;max-width:83.33333%}.col-xl-11{flex:0 0 91.66667%;max-width:91.66667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333%}.offset-xl-2{margin-left:16.66667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333%}.offset-xl-5{margin-left:41.66667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333%}.offset-xl-8{margin-left:66.66667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333%}.offset-xl-11{margin-left:91.66667%}}.table{width:100%;margin-bottom:1rem;color:#a79e8b}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#a79e8b;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#c1c5ca}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#8b939c}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#b3b8be}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#f1bbeb}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#e681da}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#eda6e5}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#4b7095;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{-webkit-appearance:none;appearance:none}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#a79e8b;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;text-align:center;vertical-align:middle;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#a79e8b;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#203040;border-color:#203040}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#131d27;border-color:#0f171e}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(65,79,93,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#203040;border-color:#203040}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0f171e;border-color:#0b1016}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(65,79,93,.5)}.btn-secondary{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#aa0a97;border-color:#9e098c}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(213,48,194,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#9e098c;border-color:#920881}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(213,48,194,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#203040;border-color:#203040}.btn-outline-primary:hover{color:#fff;background-color:#203040;border-color:#203040}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#203040;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#203040;border-color:#203040}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.btn-outline-secondary{color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary:hover{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#ce0cb7;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#80b6cc;text-decoration:none}.btn-link:hover{color:#4997b6}.btn-link.focus,.btn-link:focus,.btn-link:hover{text-decoration:underline}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#a79e8b;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#203040}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 auto;width:1%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;z-index:1;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#203040;background-color:#203040}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#4b7095}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#6289b1;border-color:#6289b1}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#203040;background-color:#203040}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(32,48,64,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(32,48,64,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(32,48,64,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;appearance:none}.custom-select:focus{border-color:#4b7095;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#4b7095;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;appearance:none}.custom-range:focus{outline:none}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#203040;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#6289b1}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#203040;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#6289b1}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#203040;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#6289b1}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#101417;border-color:#dee2e6 #dee2e6 #101417}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#203040}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem;border-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion{overflow-anchor:none}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb,.breadcrumb-item{display:flex}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#80b6cc;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#4997b6;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#203040;border-color:#203040}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#203040}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0f171e}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.badge-secondary{color:#fff;background-color:#ce0cb7}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#9e098c}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#111921;background-color:#d2d6d9;border-color:#c1c5ca}.alert-primary hr{border-top-color:#b3b8be}.alert-primary .alert-link{color:#000}.alert-secondary{color:#6b065f;background-color:#f5cef1;border-color:#f1bbeb}.alert-secondary hr{border-top-color:#eda6e5}.alert-secondary .alert-link{color:#3b0334}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;line-height:0;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#203040;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#a79e8b;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#203040;border-color:#203040}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#111921;background-color:#c1c5ca}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#111921;background-color:#b3b8be}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#111921;border-color:#111921}.list-group-item-secondary{color:#6b065f;background-color:#f1bbeb}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#6b065f;background-color:#eda6e5}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#6b065f;border-color:#6b065f}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0}a.close.disabled{pointer-events:none}.toast{flex-basis:350px;max-width:350px;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);height:min-content;content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem);height:min-content}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;color:#f78e66;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#a79e8b}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#203040!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0f171e!important}.bg-secondary{background-color:#ce0cb7!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#9e098c!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#203040!important}.border-secondary{border-color:#ce0cb7!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.85714%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.user-select-all{-webkit-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;user-select:none!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#203040!important}a.text-primary:focus,a.text-primary:hover{color:#070a0d!important}.text-secondary{color:#ce0cb7!important}a.text-secondary:focus,a.text-secondary:hover{color:#860877!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#a79e8b!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}}.btn-group .dropdown-toggle-split{margin-bottom:8px}*{-webkit-tap-highlight-color:rgba(0,0,0,0)}.sticky{position:sticky;top:0;z-index:9999}.btn:focus,.dropdown-item:focus{outline:none}.alert-dismissible .close{cursor:pointer}label.btn:hover{text-decoration:none;cursor:pointer}.progress-bar,.text-muted{color:#a79e8b!important}.btn,.card,.dropdown-toggle:after,.jumbotron,.list-group-item,.modal-content{border:1px solid #507386!important}.app-view-mode-embed .card,.app-view-mode-embed .list-group-item{border:none!important}.app-view-mode-embed .card,.list-group-item{border-left:none!important;border-right:none!important}.app-view-mode-embed .card{border-top:none!important}.card-body.header{border-bottom:1px solid #507386!important}.list-group-item{margin-bottom:-1px!important}.jumbotron{border:1px solid #2a3c46!important}.dropdown-item.active{background-color:#203040!important}.dark .dropdown-item:focus,.dropdown-item:hover{outline:1px solid #507386!important;outline-offset:-1px;background-color:initial}.alert,.card,.dropdown-menu,.list-group-item,.modal-content,.progress-bar{background-color:#101417!important}.card{background-color:initial!important}.btn{color:#a79e8b}.btn span{background-color:#101417}.btn-danger{background-color:#203040!important}a{background-color:#203040;padding:.2rem}a,a:hover{color:#80b6cc!important}a:hover{background-color:initial;text-decoration:underline!important}.dropdown-toggle:after{border-color:transparent!important;border-top:.3em solid!important;border-right:.3em solid transparent!important;border-bottom:0!important;border-left:.3em solid transparent!important}input,select,textarea{background-color:#203040!important;color:#a79e8b!important;border:1px solid #507386!important}a.vast-blocker{background:none!important}.modal-header{border-bottom:none!important}.modal-footer{border-top:none!important}.modal-content .close{text-shadow:none!important;color:#507386!important;padding:0;margin:0}.modal-content .close:after,.modal-content .close:before{background-color:initial!important}body::-webkit-scrollbar{display:none}.modal-backdrop{opacity:.7}.my-btn-link{background-color:#203040}.my-btn-link:hover{background:#0f171e;color:#fff!important}.btn span{background:none!important}@media (max-width:576px){.modal-content{border-radius:0;border-left:none!important;border-right:none!important}.modal-dialog{width:100vw;margin:0}} \ No newline at end of file + */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#203040;--secondary:#ce0cb7;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,:after,:before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:1rem;font-weight:400;line-height:1.5;color:#a79e8b;text-align:left;background-color:#101417}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:initial;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{font-style:normal;line-height:inherit}address,dl,ol,ul{margin-bottom:1rem}dl,ol,ul{margin-top:0}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}a{color:#80b6cc;text-decoration:none;background-color:initial}a:hover{color:#4997b6;text-decoration:underline}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{border-style:none}img,svg{vertical-align:middle}svg{overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:initial}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2;color:#f78e66}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem}.display-1,.display-2{font-weight:300;line-height:1.2}.display-2{font-size:5.5rem}.display-3{font-size:4.5rem}.display-3,.display-4{font-weight:300;line-height:1.2}.display-4{font-size:3.5rem}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer:before{content:"\2014\A0"}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#101417;border:1px solid #dee2e6;border-radius:.25rem}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.33333%;max-width:8.33333%}.col-2{flex:0 0 16.66667%;max-width:16.66667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.33333%;max-width:33.33333%}.col-5{flex:0 0 41.66667%;max-width:41.66667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.33333%;max-width:58.33333%}.col-8{flex:0 0 66.66667%;max-width:66.66667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.33333%;max-width:83.33333%}.col-11{flex:0 0 91.66667%;max-width:91.66667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.33333%}.offset-2{margin-left:16.66667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333%}.offset-5{margin-left:41.66667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333%}.offset-8{margin-left:66.66667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333%}.offset-11{margin-left:91.66667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.33333%;max-width:8.33333%}.col-sm-2{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.33333%;max-width:33.33333%}.col-sm-5{flex:0 0 41.66667%;max-width:41.66667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.33333%;max-width:58.33333%}.col-sm-8{flex:0 0 66.66667%;max-width:66.66667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.33333%;max-width:83.33333%}.col-sm-11{flex:0 0 91.66667%;max-width:91.66667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333%}.offset-sm-2{margin-left:16.66667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333%}.offset-sm-5{margin-left:41.66667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333%}.offset-sm-8{margin-left:66.66667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333%}.offset-sm-11{margin-left:91.66667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.33333%;max-width:8.33333%}.col-md-2{flex:0 0 16.66667%;max-width:16.66667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.33333%;max-width:33.33333%}.col-md-5{flex:0 0 41.66667%;max-width:41.66667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.33333%;max-width:58.33333%}.col-md-8{flex:0 0 66.66667%;max-width:66.66667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.33333%;max-width:83.33333%}.col-md-11{flex:0 0 91.66667%;max-width:91.66667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333%}.offset-md-2{margin-left:16.66667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333%}.offset-md-5{margin-left:41.66667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333%}.offset-md-8{margin-left:66.66667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333%}.offset-md-11{margin-left:91.66667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.33333%;max-width:8.33333%}.col-lg-2{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.33333%;max-width:33.33333%}.col-lg-5{flex:0 0 41.66667%;max-width:41.66667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.33333%;max-width:58.33333%}.col-lg-8{flex:0 0 66.66667%;max-width:66.66667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.33333%;max-width:83.33333%}.col-lg-11{flex:0 0 91.66667%;max-width:91.66667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333%}.offset-lg-2{margin-left:16.66667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333%}.offset-lg-5{margin-left:41.66667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333%}.offset-lg-8{margin-left:66.66667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333%}.offset-lg-11{margin-left:91.66667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.33333%;max-width:8.33333%}.col-xl-2{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.33333%;max-width:33.33333%}.col-xl-5{flex:0 0 41.66667%;max-width:41.66667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.33333%;max-width:58.33333%}.col-xl-8{flex:0 0 66.66667%;max-width:66.66667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.33333%;max-width:83.33333%}.col-xl-11{flex:0 0 91.66667%;max-width:91.66667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333%}.offset-xl-2{margin-left:16.66667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333%}.offset-xl-5{margin-left:41.66667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333%}.offset-xl-8{margin-left:66.66667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333%}.offset-xl-11{margin-left:91.66667%}}.table{width:100%;margin-bottom:1rem;color:#a79e8b}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#a79e8b;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#c1c5ca}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#8b939c}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#b3b8be}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#f1bbeb}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#e681da}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#eda6e5}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#4b7095;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{-webkit-appearance:none;appearance:none}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#a79e8b;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;text-align:center;vertical-align:middle;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#a79e8b;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#203040;border-color:#203040}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#131d27;border-color:#0f171e}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(65,79,93,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#203040;border-color:#203040}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0f171e;border-color:#0b1016}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(65,79,93,.5)}.btn-secondary{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#aa0a97;border-color:#9e098c}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(213,48,194,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#9e098c;border-color:#920881}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(213,48,194,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#203040;border-color:#203040}.btn-outline-primary:hover{color:#fff;background-color:#203040;border-color:#203040}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#203040;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#203040;border-color:#203040}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.btn-outline-secondary{color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary:hover{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#ce0cb7;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#ce0cb7;border-color:#ce0cb7}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#80b6cc;text-decoration:none}.btn-link:hover{color:#4997b6}.btn-link.focus,.btn-link:focus,.btn-link:hover{text-decoration:underline}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#a79e8b;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#203040}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 auto;width:1%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;z-index:1;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#203040;background-color:#203040}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#4b7095}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#6289b1;border-color:#6289b1}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#203040;background-color:#203040}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(32,48,64,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(32,48,64,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(32,48,64,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;appearance:none}.custom-select:focus{border-color:#4b7095;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#4b7095;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;appearance:none}.custom-range:focus{outline:none}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #101417,0 0 0 .2rem rgba(32,48,64,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#203040;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#6289b1}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#203040;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#6289b1}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#203040;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#6289b1}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#101417;border-color:#dee2e6 #dee2e6 #101417}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#203040}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem;border-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion{overflow-anchor:none}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb,.breadcrumb-item{display:flex}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#80b6cc;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#4997b6;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#203040;border-color:#203040}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#203040}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0f171e}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(32,48,64,.5)}.badge-secondary{color:#fff;background-color:#ce0cb7}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#9e098c}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(206,12,183,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#111921;background-color:#d2d6d9;border-color:#c1c5ca}.alert-primary hr{border-top-color:#b3b8be}.alert-primary .alert-link{color:#000}.alert-secondary{color:#6b065f;background-color:#f5cef1;border-color:#f1bbeb}.alert-secondary hr{border-top-color:#eda6e5}.alert-secondary .alert-link{color:#3b0334}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;line-height:0;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#203040;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#a79e8b;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#203040;border-color:#203040}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#111921;background-color:#c1c5ca}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#111921;background-color:#b3b8be}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#111921;border-color:#111921}.list-group-item-secondary{color:#6b065f;background-color:#f1bbeb}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#6b065f;background-color:#eda6e5}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#6b065f;border-color:#6b065f}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0}a.close.disabled{pointer-events:none}.toast{flex-basis:350px;max-width:350px;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);height:min-content;content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem);height:min-content}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;color:#f78e66;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#a79e8b}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#203040!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0f171e!important}.bg-secondary{background-color:#ce0cb7!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#9e098c!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#203040!important}.border-secondary{border-color:#ce0cb7!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.85714%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.user-select-all{-webkit-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;user-select:none!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#203040!important}a.text-primary:focus,a.text-primary:hover{color:#070a0d!important}.text-secondary{color:#ce0cb7!important}a.text-secondary:focus,a.text-secondary:hover{color:#860877!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#a79e8b!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}}.btn-group .dropdown-toggle-split{margin-bottom:8px}*{-webkit-tap-highlight-color:rgba(0,0,0,0)}.sticky{position:sticky;top:0;z-index:9999}.btn:focus,.dropdown-item:focus{outline:none}.alert-dismissible .close{cursor:pointer}label.btn:hover{text-decoration:none;cursor:pointer}.progress-bar,.text-muted{color:#a79e8b!important}.btn,.card,.dropdown-toggle:after,.jumbotron,.list-group-item,.modal-content{border:1px solid #507386!important}.app-view-mode-embed .card,.app-view-mode-embed .list-group-item{border:none!important}.app-view-mode-embed .card,.list-group-item{border-left:none!important;border-right:none!important}.app-view-mode-embed .card{border-top:none!important}.card-body.header{border-bottom:1px solid #507386!important}.list-group-item{margin-bottom:-1px!important}.jumbotron{border:1px solid #2a3c46!important}.dropdown-item.active{background-color:#203040!important}.dark .dropdown-item:focus,.dropdown-item:hover{outline:1px solid #507386!important;outline-offset:-1px;background-color:initial}.alert,.card,.dropdown-menu,.list-group-item,.modal-content,.progress-bar{background-color:#101417!important}.card{background-color:initial!important}.btn{color:#a79e8b}.btn span{background-color:#101417}.btn-danger{background-color:#203040!important}a{background-color:#203040;padding:.2rem}a,a:hover{color:#80b6cc!important}a:hover{background-color:initial;text-decoration:underline!important}.dropdown-toggle:after{border-color:transparent!important;border-top:.3em solid!important;border-right:.3em solid transparent!important;border-bottom:0!important;border-left:.3em solid transparent!important}input,select,textarea{background-color:#203040!important;color:#a79e8b!important;border:1px solid #507386!important}a.vast-blocker{background:none!important}.modal-header{border-bottom:none!important}.modal-footer{border-top:none!important}.modal-content .close{text-shadow:none!important;color:#507386!important;padding:0;margin:0}.modal-content .close:after,.modal-content .close:before{background-color:initial!important}body::-webkit-scrollbar{display:none}.modal-backdrop{opacity:.7}.my-btn-link{background-color:#203040}.my-btn-link:hover{background:#0f171e;color:#fff!important}.btn span{background:none!important}@media (max-width:576px){.modal-content{border-radius:0;border-left:none!important;border-right:none!important}.modal-dialog{width:100vw;margin:0}} \ No newline at end of file diff --git a/ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.css.gz b/ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.css.gz similarity index 68% rename from ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.css.gz rename to ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.css.gz index 94f62f5a6ba32ff9ef7e8b2bdbef1f178275692a..584fc788c0b2e0c7d0f8ffdac17442d7009a97af 100644 GIT binary patch delta 7435 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 T@j-psKYZpN%=9V{Je>an;F*XP diff --git a/ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js b/ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js new file mode 100644 index 0000000..b70c3d1 --- /dev/null +++ b/ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{"0Vpd":function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return o}));var a=n("uUTq"),r=n.n(a);const s=n("NOtv")("webtor:lib:ext");class i{init(){return new Promise((e,t)=>{if(window.__webtorInjected)return e();s("wait for initialization"),window.addEventListener("message",t=>{if(t.source==window)return t.data.webtorInjected?e():void 0})})}async fetch(t){return await this.init(),s("request downloadId=%d",t),new Promise((n,a)=>{window.addEventListener("message",t=>{if(t.source==window&&t.data.torrent){const i=new Uint8Array(t.data.torrent.data),o=new e(i.byteLength),l=new Uint8Array(i);for(let e=0;e`,e.container.appendChild(r)}})},"7OJJ":function(e,t,n){"use strict";var a=n("N83T"),r=n("angx");Object.assign(MediaElementPlayer.prototype,{async buildbrowse(e,t,n){const s=this.options.store;let{state:i,getters:o,dispatch:l}=s;if(o.currentVideoFiles.length<2)return;e.browseLayer=document.createElement("div"),e.browseLayer.className=`${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}browse`;const c=document.createElement("div");e.browseLayer.appendChild(c),e.browseLayer.style.width="100%",e.browseLayer.style.height="100%";const d=n.querySelector(`.${this.options.classPrefix}overlay-play`);n.insertBefore(e.browseLayer,d),r.a.buildVue({el:c,render:t=>t(a.a,{on:{hide(){e.browseLayer.style.display="none"},show(){e.browseLayer.style.display=""}}})}),e.browseLayer.style.zIndex=2,e.browseLayer.addEventListener("click",(function(){e.play(),e.browseLayer.style.display="none"}))}})},ATa7:function(e,t,n){"use strict";function a({id:e,appId:t,appVersion:n,appName:a}){const r="https://www.googletagmanager.com/gtag/js?id="+e,s=document.createElement("script");function i(){dataLayer.push(arguments)}s.type="text/javascript",s.async=!0,s.src=r,document.body.appendChild(s),window.dataLayer=window.dataLayer||[],i("js",new Date),i("config",e)}n.d(t,"a",(function(){return a}))},BFdT:function(e,t,n){"use strict";class a{constructor(e,t,n,a){const r=this;return r.player=e,r.controller=t,r.media=n,r.endedMedia=!1,r.controller.addEventListener(cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED,()=>{r.paused?r.pause():r.play(),r.endedMedia=!1}),r.controller.addEventListener(cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED,()=>{r.setMuted(r.player.isMuted),r.volume=0}),r.controller.addEventListener(cast.framework.RemotePlayerEventType.IS_MEDIA_LOADED_CHANGED,()=>{const e=mejs.Utils.createEvent("loadedmetadata",r.media);r.media.dispatchEvent(e)}),r.controller.addEventListener(cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED,()=>{r.volume=r.player.volumeLevel;const e=mejs.Utils.createEvent("volumechange",r.media);r.media.dispatchEvent(e)}),r.controller.addEventListener(cast.framework.RemotePlayerEventType.DURATION_CHANGED,()=>{const e=mejs.Utils.createEvent("timeupdate",r.media);r.media.dispatchEvent(e)}),r.controller.addEventListener(cast.framework.RemotePlayerEventType.CURRENT_TIME_CHANGED,()=>{const e=mejs.Utils.createEvent("timeupdate",r.media);r.media.dispatchEvent(e),r.getCurrentTime()>=r.getDuration()&&(r.endedMedia=!0,setTimeout(()=>{const e=mejs.Utils.createEvent("ended",r.media);r.media.dispatchEvent(e)},50))}),r.controller.addEventListener(cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED,()=>{r.setMuted(r.player.isMuted)}),r.load(),r}get paused(){return this.player.isPaused}set muted(e){this.setMuted(e)}get muted(){return this.player.isMuted}get ended(){return this.endedMedia}get readyState(){return this.media.originalNode.readyState}set currentTime(e){this.setCurrentTime(e)}get currentTime(){return this.getCurrentTime()}get duration(){return this.getDuration()}set volume(e){this.setVolume(e)}get volume(){return this.getVolume()}set src(e){this.setSrc(e)}get src(){return this.getSrc()}getSrc(){return this.media.originalNode.src}setSrc(e){this.media.originalNode.src="string"==typeof e?e:e[0].src,this.load()}setCurrentTime(e){this.player.currentTime=e,this.controller.seek();const t=mejs.Utils.createEvent("timeupdate",this.media);this.media.dispatchEvent(t)}getCurrentTime(){return this.player.currentTime}getOriginalDuration(){return this.media.getDuration()}getDuration(){return this.getOriginalDuration()}setVolume(e){this.player.volumeLevel=e,this.controller.setVolumeLevel();const t=mejs.Utils.createEvent("volumechange",this.media);this.media.dispatchEvent(t)}getVolume(){return this.player.volumeLevel}play(){if(this.player.isPaused){this.controller.playOrPause();const e=mejs.Utils.createEvent("play",this.media);this.media.dispatchEvent(e)}}pause(){if(!this.player.isPaused){this.controller.playOrPause();const e=mejs.Utils.createEvent("pause",this.media);this.media.dispatchEvent(e)}}load(){const e=this,t=cast.framework.CastContext.getInstance().getCurrentSession(),n=[],a=e.media.originalNode.children;let r=null,s=null,i=1;for(let e=0,t=a.length;e{const a=e.media.originalNode.currentTime;if(e.setCurrentTime(a),e.play(),n.length>0){const e=new chrome.cast.media.EditTracksInfoRequest([1]);t.getMediaSession().editTracksInfo(e,()=>{},e=>{console.error(e)})}const r=mejs.Utils.createEvent("play",e.media);e.media.dispatchEvent(r)},t=>{console.log(t),e._getErrorMessage(t)})}setMuted(e){!0!==e||this.player.isMuted?!1===e&&this.player.isMuted&&this.controller.muteOrUnmute():this.controller.muteOrUnmute(),setTimeout(()=>{const e=mejs.Utils.createEvent("volumechange",this.media);this.media.dispatchEvent(e)},50)}_getErrorMessage(e){const t=e.description?" : "+e.description:".";let n;switch(e.code){case chrome.cast.ErrorCode.API_NOT_INITIALIZED:n="The API is not initialized"+t;break;case chrome.cast.ErrorCode.CANCEL:n="The operation was canceled by the user"+t;break;case chrome.cast.ErrorCode.CHANNEL_ERROR:n="A channel to the receiver is not available"+t;break;case chrome.cast.ErrorCode.EXTENSION_MISSING:n="The Cast extension is not available"+t;break;case chrome.cast.ErrorCode.INVALID_PARAMETER:n="The parameters to the operation were not valid"+t;break;case chrome.cast.ErrorCode.RECEIVER_UNAVAILABLE:n="No receiver was compatible with the session request"+t;break;case chrome.cast.ErrorCode.SESSION_ERROR:n="A session could not be created, or a session was invalid"+t;break;case chrome.cast.ErrorCode.TIMEOUT:n="The operation timed out"+t;break;default:n="Unknown error: "+e}console.error(n)}}window.ChromecastPlayer=a,Object.assign(MediaElementPlayer.prototype,{async buildchromecast(e,t,n){const a=this;if(window.__onGCastApiAvailable=function(e){e&&a._initializeCastPlayer()},window.cast)a._initializeCastPlayer();else{const e=document.createElement("script");e.type="text/javascript",e.src="https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1",document.body.appendChild(e)}e.castButton=document.createElement("div"),e.castButton.className=`${a.options.classPrefix}button ${a.options.classPrefix}cast-button`,e.castButton.innerHTML='',e.container.appendChild(e.castButton)},_initializeCastPlayer(){const e=this,t=cast.framework.CastContext.getInstance(),n=t.getCurrentSession();t.setOptions({receiverApplicationId:chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:chrome.cast.AutoJoinPolicy.PAGE_SCOPED,androidReceiverCompatible:!0}),e.remotePlayer=new cast.framework.RemotePlayer,e.remotePlayerController=new cast.framework.RemotePlayerController(e.remotePlayer),e.remotePlayerController.addEventListener(cast.framework.RemotePlayerEventType.IS_CONNECTED_CHANGED,e._switchToCastPlayer.bind(this)),n&&n.endSession(!0)},_switchToCastPlayer(){const e=this;e.proxy&&e.proxy.pause(),cast&&cast.framework&&e.remotePlayer.isConnected?e._setupCastPlayer():e._setDefaultPlayer()},_setupCastPlayer(){const e=this,t=cast.framework.CastContext.getInstance().getCurrentSession();!0!==e.loadedChromecast&&(e.loadedChromecast=!0,e.proxy=new a(e.remotePlayer,e.remotePlayerController,e.media,e.options),e.media.addEventListener("loadedmetadata",()=>{-1===["SESSION_ENDING","SESSION_ENDED","NO_SESSION"].indexOf(t.getSessionState())&&e.proxy instanceof DefaultPlayer&&(e.proxy.pause(),e.proxy=new a(e.remotePlayer,e.remotePlayerController,e.media,e.options))}),e.media.addEventListener("timeupdate",()=>{e.currentMediaTime=e.getCurrentTime()}))}})},HZq6:function(e,t){e.exports="

        YOURSITE respects the intellectual property of others. YOURSITE takes matters of Intellectual Property very seriously and is committed to meeting the needs of content owners while helping them manage publication of their content online.

        \n

        It should be noted that YOURSITE is a simple search engine of videos available at a wide variety websites.\nIf you believe that your copyrighted work has been copied in a way that constitutes copyright infringement and is accessible on this site, you may notify our copyright agent, as set forth in the Digital Millennium Copyright Act of 1998 (DMCA). For your complaint to be valid under the DMCA, you must provide the following information when providing notice of the claimed copyright infringement:

        \n

        A physical or electronic signature of a person authorized to act on behalf of the copyright owner Identification of the copyrighted work claimed to have been infringed\nIdentification of the material that is claimed to be infringing or to be the subject of the infringing activity and that is to be removed\nInformation reasonably sufficient to permit the service provider to contact the complaining party, such as an address, telephone number, and, if available, an electronic mail address\nA statement that the complaining party "in good faith believes that use of the material in the manner complained of is not authorized by the copyright owner, its agent, or law"\nA statement that the "information in the notification is accurate", and "under penalty of perjury, the complaining party is authorized to act on behalf of the owner of an exclusive right that is allegedly infringed"\nThe above information must be submitted as a written, faxed or emailed notification to the following Designated Agent:

        \n

        Attn: DMCA Office

        \n

        Contact Us : http://www.watchdogsecurity.online

        \n

        WE CAUTION YOU THAT UNDER FEDERAL LAW, IF YOU KNOWINGLY MISREPRESENT THAT ONLINE MATERIAL IS INFRINGING, YOU MAY BE SUBJECT TO HEAVY CIVIL PENALTIES. THESE INCLUDE MONETARY DAMAGES, COURT COSTS, AND ATTORNEYS FEES INCURRED BY US, BY ANY COPYRIGHT OWNER, OR BY ANY COPYRIGHT OWNER'S LICENSEE THAT IS INJURED AS A RESULT OF OUR RELYING UPON YOUR MISREPRESENTATION. YOU MAY ALSO BE SUBJECT TO CRIMINAL PROSECUTION FOR PERJURY.

        \n

        This information should not be construed as legal advice, for further details on the information required for valid DMCA notifications, see 17 U.S.C. 512(c)(3).

        \n"},LPVh:function(e,t,n){"use strict";var a=n("owiN"),r=n("angx");Object.assign(MediaElementPlayer.prototype,{async buildembed(e,t,n){e.embedButton=document.createElement("div"),e.embedButton.className=`${this.options.classPrefix}button ${this.options.classPrefix}embed-button`,e.embedButton.innerHTML=``,this.addControlElement(e.embedButton,"embed"),e.embedLayer=document.createElement("div"),e.embedLayer.className=`${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}embed`;const s=document.createElement("div");e.embedLayer.appendChild(s);const i=n.querySelector(`.${this.options.classPrefix}overlay-play`);n.insertBefore(e.embedLayer,i),e.embedLayer.style.width="100%",e.embedLayer.style.height="100%";let o=!1;const l=()=>{e.embedLayer.style.display=o?"none":"",o=!o};r.a.buildVue({el:s,render:e=>e(a.a,{on:{close:l}})}),e.embedLayer.style.display="none",e.embedLayer.style.zIndex=2,e.embedButton.addEventListener("click",l)}})},"N9g/":function(e,t,n){"use strict";n.d(t,"eb",(function(){return a})),n.d(t,"W",(function(){return r})),n.d(t,"z",(function(){return s})),n.d(t,"ab",(function(){return i})),n.d(t,"T",(function(){return o})),n.d(t,"P",(function(){return l})),n.d(t,"S",(function(){return c})),n.d(t,"db",(function(){return d})),n.d(t,"c",(function(){return u})),n.d(t,"bb",(function(){return p})),n.d(t,"I",(function(){return m})),n.d(t,"K",(function(){return h})),n.d(t,"J",(function(){return f})),n.d(t,"n",(function(){return y})),n.d(t,"b",(function(){return g})),n.d(t,"o",(function(){return w})),n.d(t,"p",(function(){return b})),n.d(t,"G",(function(){return E})),n.d(t,"fb",(function(){return T})),n.d(t,"e",(function(){return S})),n.d(t,"L",(function(){return v})),n.d(t,"U",(function(){return L})),n.d(t,"m",(function(){return _})),n.d(t,"y",(function(){return A})),n.d(t,"Y",(function(){return P})),n.d(t,"X",(function(){return I})),n.d(t,"q",(function(){return C})),n.d(t,"f",(function(){return N})),n.d(t,"hb",(function(){return D})),n.d(t,"cb",(function(){return O})),n.d(t,"u",(function(){return k})),n.d(t,"w",(function(){return R})),n.d(t,"i",(function(){return U})),n.d(t,"v",(function(){return x})),n.d(t,"t",(function(){return M})),n.d(t,"j",(function(){return H})),n.d(t,"k",(function(){return j})),n.d(t,"O",(function(){return F})),n.d(t,"Q",(function(){return $})),n.d(t,"B",(function(){return B})),n.d(t,"x",(function(){return q})),n.d(t,"ib",(function(){return W})),n.d(t,"C",(function(){return V})),n.d(t,"D",(function(){return z})),n.d(t,"l",(function(){return Y})),n.d(t,"a",(function(){return G})),n.d(t,"gb",(function(){return J})),n.d(t,"g",(function(){return K})),n.d(t,"R",(function(){return X})),n.d(t,"N",(function(){return Z})),n.d(t,"Z",(function(){return Q})),n.d(t,"jb",(function(){return ee})),n.d(t,"H",(function(){return te})),n.d(t,"A",(function(){return ne})),n.d(t,"F",(function(){return ae})),n.d(t,"M",(function(){return re})),n.d(t,"r",(function(){return se})),n.d(t,"d",(function(){return ie})),n.d(t,"s",(function(){return oe})),n.d(t,"kb",(function(){return le})),n.d(t,"E",(function(){return ce})),n.d(t,"V",(function(){return de})),n.d(t,"h",(function(){return ue}));const a="SET_TORRENT_SUCCESS",r="SET_PWD_SUCCESS",s="SET_FILE_SUCCESS",i="SET_SOURCE",o="SET_PLAYER_STATUS_SUCCESS",l="SET_PLAYER_FILE_PATH_SUCCESS",c="SET_PLAYER_SOURCE_URL_SUCCESS",d="SET_TORRENT_FAILURE",u="CLEAR_TORRENT_LOAD_ERROR",p="SET_STAT_SUCCESS",m="SET_LOAD_STATE",h="SET_LOAD_STATE_SUCCESS",f="SET_LOAD_STATE_FAILURE",y="SET_DELIVERY_FAILURE",g="CLEAR_DELIVERY_FAILURE",w="SET_DELIVERY_TOKEN",b="SET_DOWNLOAD_ID",E="SET_LANG",T="SET_USER_LANG",S="SET_ABUSED",v="SET_MEDIA_INFO",L="SET_PLAYER_TIME",_="SET_CURRENT_DIR_FILE_STATES",A="SET_FILE_STATE",P="SET_RECENT_TORRENTS",I="SET_RECENT_TORRENT",C="SET_DOWNLOAD_PATH",N="SET_ADBLOCK_ENABLED",D="SET_VIEW_MODE",O="SET_THEME",k="SET_EXTERNAL_FEATURES",R="SET_EXTERNAL_SUBTITLES",U="SET_ATTACHED_TRACKS",x="SET_EXTERNAL_POSTER",M="SET_EXTERNAL_CONTROLS",H="SET_AUTOPLAY",j="SET_CAPTION",F="SET_PLAYER_CONTROLS_SHOWN",$="SET_PLAYER_FULLSCREEN",B="SET_HEADER",q="SET_EXTERNAL_TITLE",W="SET_WIDTH",V="SET_HEIGHT",z="SET_IMDBID",Y="SET_COMPLETED_PIECES",G="SET_CAPTION_SIZE",J="SET_USER_SETTINGS",K="SET_ADS_INJECTED",X="SET_PLAYER_NATIVE_FULLSCREEN",Z="SET_NEW_POSITION",Q="SET_SEEDER",ee="SET_ZIP_DOWNLOAD",te="SET_LAST_TIME",ne="SET_FIRST_PLAY",ae="SET_IS_CACHED",re="SET_NAME",se="SET_DOWNLOAD_STAT",ie="DROP_DOWNLOAD_STAT",oe="SET_DOWNLOAD_TYPE",le="UPDATE_WINDOW_WIDTH",ce="SET_INITED",de="SET_PROGRESS",ue="SET_API_UNREACHABLE"},Q7T3:function(e,t,n){"use strict";var a=n("4nS2"),r=n("angx");Object.assign(MediaElementPlayer.prototype,{async buildcontinue(e,t,n){const s=this.options.store;let{state:i,getters:o,dispatch:l}=s;if(i.time<=60)return void(e.currentTime=0);const c=i.time,d=e.play;let u=!0;e.play=()=>{u||d.apply(e)},e.pause(),e.continueLayer=document.createElement("div"),e.continueLayer.className=`${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}continue`;const p=document.createElement("div");e.continueLayer.appendChild(p);const m=n.querySelector(`.${this.options.classPrefix}overlay-play`);function h(){u=!1,e.play(),e.continueLayer.style.display="none"}function f(){e&&(e.currentTime=0,h())}function y(){e.currentTime=c-5,h()}n.insertBefore(e.continueLayer,m),r.a.buildVue({el:p,render:e=>e(a.a,{on:{continueWatch:y,restartWatch:f},props:{time:c}})}),e.continueLayer.style.zIndex=2,m.style.display="none"}})},"Sph+":function(e,t,n){"use strict";var a=n("gGSK"),r=n("angx");Object.assign(MediaElementPlayer.prototype,{async buildadvancedtracks(e,t,n){e.tracksButton=document.createElement("div"),e.tracksButton.className=`${this.options.classPrefix}button ${this.options.classPrefix}captions-button`,e.tracksButton.innerHTML=``,this.addControlElement(e.tracksButton,"tracks"),e.tracksLayer=document.createElement("div"),e.tracksLayer.className=`${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}tracks`;const s=document.createElement("div");e.tracksLayer.appendChild(s);const i=n.querySelector(`.${this.options.classPrefix}overlay-play`);n.insertBefore(e.tracksLayer,i),e.tracksLayer.style.width="100%",e.tracksLayer.style.height="100%";let o=!1;const l=()=>{e.tracksLayer.style.display="",o=!0},c=()=>{e.tracksLayer.style.display="none",o=!1};r.a.buildVue({el:s,render:t=>t(a.a,{props:{player:e},on:{close:c,show:l}})});e.tracksLayer.style.display="none",e.tracksLayer.style.zIndex=2,e.tracksButton.addEventListener("click",()=>{e.tracksLayer.style.display=o?"none":"",o=!o})}})},TySg:function(e,t,n){},UWVl:function(e,t,n){"use strict";var a=n("L2Oj"),r=n("angx");Object.assign(MediaElementPlayer.prototype,{async buildcaptions(e,t,n){e.captionsLayer=document.createElement("div"),e.captionsLayer.className=`${this.options.classPrefix}captions-layer ${this.options.classPrefix}layer`;const s=document.createElement("div");e.captionsLayer.appendChild(s),n.insertBefore(e.captionsLayer,n.firstChild),e.captionsLayer.style.width="100%",e.captionsLayer.style.height="100%",e.captionsLayer.addEventListener("click",(function(){e.pause()})),r.a.buildVue({el:s,render:e=>e(a.a)})}})},ZjLY:function(e,t,n){"use strict";n.d(t,"a",(function(){return f})),n.d(t,"b",(function(){return d}));var a=n("DzJC"),r=n.n(a);const s=n("NOtv")("webtor:lib:captions"),i=n("Tm1B")((function(e){return s("fetch caption url=%o",e),fetch(e)}),{retries:5,retryDelay:function(e,t,n){return 1e3*Math.pow(2,e)},retryOn:function(e,t,n){if(null!==t||n.status>=500)return s("got captions error retry count=%o",e),!0}});async function o(e){const t=await i(e),n=await t.text(),a=e.substring(0,e.lastIndexOf("/")+1),r=[],s=n.split("\n");let o=0,l={},c=!1;for(const e of s){const t=e.match("#EXTINF:([0-9.]+),");"#EXT-X-ENDLIST"==e&&(c=!0),t&&(l.num=o,l.length=parseFloat(t[1]),o++),e.match("^[^#]")&&(l.name=e,l.src=a+l.name),void 0!==l.name&&(r.push(l),l.content=function(e){let t=null;return function(){return null===t&&(t=new Promise((async function(t,n){const a=await i(e.src);t(await a.text())}))),t}}(l),l={start:0})}return{fragments:r,ended:c}}function l(e){if("string"!=typeof e)throw new TypeError("Argument must be a string value");const t=~(e=e.replace(",",".")).indexOf(".")?e.split(".")[1].length:0;let n=0,a=1;for(let t=0,r=(e=e.split(":").reverse()).length;t0&&(a=Math.pow(60,t)),n+=Number(e[t])*a;return Number(n.toFixed(t))}function c(e){return"string"==typeof e&&/$1"),r.push(a)}return r}(e):function(e){const t=e.split(/\r?\n/),n=[],a=/^((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{1,3})?) --\> ((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{3})?)(.*)$/;let r,s,i;for(let e=0,o=t.length;e=0&&""!==t[e-1]&&(i=t[e-1]),e++,s=t[e],e++;""!==t[e]&&e$1"),n.push({identifier:i,start:0===l(r[1])?.2:l(r[1]),stop:l(r[3]),text:s,settings:r[5]})}i=""}return n}(e)}function d(e){const t=document.createElement("div");t.innerHTML=e;const n=t.getElementsByTagName("script");let a=n.length;for(;a--;)n[a].remove();const r=t.getElementsByTagName("*");for(let e=0,t=r.length;e>1,a=e[n].start,r=e[n].stop,t>=a&&tt&&(i=n-1)}return-1}class p{constructor(e){this.entries=c(e)}getEntry(e){const t=u(this.entries,e);return t>-1?this.entries[t]:null}}class m{constructor(e){this.src=e,this.fragments=[],this.fetching=!1,this.ended=!1,this.entries=[],this.entriesByFragment=[],this.lastTime=0,this.lastIndex=0,this.lookAhead=300,this.getHLSFragments=r()(o,5e3,{trailing:!1})}findFragment(e){for(const t of this.fragments)if(e>t.start&&e=e+this.lookAhead)){if(!this.ended){const{fragments:e,ended:t}=await this.getHLSFragments(this.src);this.fragments=e,this.ended=t}await this.preload(e)}}async getEntry(e){this.loadFragments(e);const t=u(this.entries,e);return t>-1?this.entries[t]:null}}function h(e){return new p(e)}async function f(e){if(!e)return null;if(e.match(/^data:(?:.+?\/.+?)?(?:;.+?=.+?)*(?:;base64)?,.*$/))return h((t=e.split(",")[1],decodeURIComponent(atob(t).split("").map((function(e){return"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)})).join(""))));if(e.match(/\.(srt|vtt)/)){const t=await i(e);return h(await t.text())}return e.match(/\.m3u8/)?function(e){return new m(e)}(e):void 0;var t}},ZkeA:function(e,t,n){"use strict";var a=n("UEvZ"),r=n("angx");Object.assign(MediaElementPlayer.prototype,{async buildavailableprogress(e,t,n){this.options.store;const s=e.slider,i=document.createElement("span");s.appendChild(i);const o=this;r.a.buildVue({el:i,render:e=>e(a.a,{props:{options:o.options}})})}})},angx:function(e,t,n){"use strict";t.a={}},hLcy:function(e,t,n){"use strict";n.d(t,"a",(function(){return je}));n("TySg");var a=n("Kw5r"),r=n("L2JU"),s=n("ConA"),i=n.n(s),o=n("CHRH"),l=n("+pEd"),c=n("on2l"),d=n("2Oh5"),u=n("aYB2"),p=n("ejiP"),m=n("3jyg"),h=n("EBPt"),f=n("pCGM"),y=n("0cPP"),g=n("djjB"),w=n("rjGI"),b=n("m2OT"),E=n("36L+"),T=n("GGSl"),S=n("ht+0"),v=n("PYlw"),L=n("LMqb"),_=n("LU1b"),A=n("u4xr"),P=n("IQOQ"),I=n.n(P),C=n("jE9Z"),N=n("t77h");a.default.use(C.a);const D=Object(N.a)([{path:"/",name:"intro",component:()=>Promise.all([n.e(6),n.e(10),n.e(8),n.e(12),n.e(9),n.e(11),n.e(7),n.e(2),n.e(1),n.e(5),n.e(0),n.e(3),n.e(4)]).then(n.bind(null,"QtWM"))},{path:"/show",name:"show",component:()=>Promise.all([n.e(6),n.e(10),n.e(8),n.e(12),n.e(9),n.e(11),n.e(7),n.e(2),n.e(1),n.e(5),n.e(0),n.e(3),n.e(4)]).then(n.bind(null,"z6uy"))},{path:"/support",name:"support",component:()=>Promise.all([n.e(2),n.e(1),n.e(5),n.e(0),n.e(3),n.e(4)]).then(n.bind(null,"mc1H"))},{path:"/dmca",name:"dmca",component:()=>Promise.all([n.e(2),n.e(1),n.e(5),n.e(0),n.e(3),n.e(4)]).then(n.bind(null,"V/Wt"))},{path:"/magnet-to-torrent",name:"magnet2torrent",component:()=>Promise.all([n.e(2),n.e(1),n.e(5),n.e(0),n.e(3),n.e(4)]).then(n.bind(null,"W159"))},{path:"/torrent-to-magnet",name:"torrent2magnet",component:()=>Promise.all([n.e(2),n.e(1),n.e(5),n.e(0),n.e(3),n.e(4)]).then(n.bind(null,"nn7+"))},{path:"/torrent-to-ddl",name:"torrent2ddl",component:()=>Promise.all([n.e(6),n.e(10),n.e(8),n.e(12),n.e(9),n.e(11),n.e(7),n.e(2),n.e(1),n.e(5),n.e(0),n.e(3),n.e(4)]).then(n.bind(null,"2Elr"))},{path:"/empty",name:"empty",component:()=>Promise.all([n.e(2),n.e(1),n.e(5),n.e(0),n.e(3),n.e(4)]).then(n.bind(null,"LPcv"))},{path:"/:magnet(magnet:.*)",name:"magnet-uri",component:()=>Promise.all([n.e(6),n.e(10),n.e(8),n.e(12),n.e(9),n.e(11),n.e(7),n.e(2),n.e(1),n.e(5),n.e(0),n.e(3),n.e(4)]).then(n.bind(null,"z6uy"))},{path:"/:infohash([0-9a-fA-F]{40})",name:"infohash",component:()=>Promise.all([n.e(6),n.e(10),n.e(8),n.e(12),n.e(9),n.e(11),n.e(7),n.e(2),n.e(1),n.e(5),n.e(0),n.e(3),n.e(4)]).then(n.bind(null,"z6uy"))}]);var O=n("sbly");const k=n("aCH8");function R(e=""){return k(e+Date.now().toString())}function U(e){return Object.assign({},e)}function x({name:e,pwd:t,file:n,torrent:a}){return{name:e,pwd:t,file:n,torrent:a?a.infoHash:null}}function M(e){if(!e||!e.src)return e;const t=Object.assign({},e);let n="";return n="object"==typeof t.src?t.src.href:t.src,t.src=n.split("?")[0],t}function H(e){e=e.sort((e,t)=>(e=e.srclang)>(t=t.srclang)?1:e0)for(const e in t){const n=parseInt(e)+1;t[e].label=t[e].label+" #"+n}t=[]}return e}var j=function({user:e,deb:t,i18n:n,router:a,ssr:r,locales:s}){return{ssr:r,inited:!1,windowWidth:0,name:null,controls:!0,progress:0,features:{p2pProgress:!0,title:!0,settings:!0,fullscreen:!0,subtitles:!0,continue:!0,playpause:!0,currentTime:!0,timeline:!0,duration:!0,volume:!0,chromecast:!0,browse:!0,download:!0,captions:!0,embed:!0,autoSubtitles:!0},isCached:!1,lastTime:null,zipDownload:!1,adsInjected:!1,completedPieces:[],width:null,height:null,imdbId:null,autoplay:!1,firstPlay:!0,playerControlsShown:!0,playerFullScreen:!1,playerNativeFullScreen:!1,caption:null,captionSize:0,externalSubtitles:[],externalPoster:"",externalTitle:null,header:!0,adblock:!1,apiUnreachable:!1,viewMode:"default",theme:null,user:e,version:"v1.15.0",subtitle:null,time:0,mediaInfo:null,debug:t,baseURL:"https://webtor.io",sponsorURL:"https://www.patreon.com/bePatron?u=24145874",authURL:"/auth/patreon",userID:R(),downloadID:null,torrent:null,file:null,downloadPath:null,pwd:"/",fileHistory:null,playerStatus:O.b,playerFilePath:null,playerSourceUrl:null,wrongFormat:!1,deliveryFailure:!1,loadState:!1,deliveryToken:null,abused:!1,stats:{},errors:{},source:[],loadError:!1,lang:n.locale,userLang:s.length>0&&s[0].normalized?s[0].normalized:n.fallbackLocale,fallbackLang:n.fallbackLocale,currentDirFileState:{},recentTorrents:{},newPosition:null,seeder:null,attachedTracks:[],downloadStats:{},downloadType:null}},F=n("N9g/");const $=n("NOtv")("webtor:lib:store");var B={[F.E](e){e.inited=!0},[F.kb](e){$("update window width=%o",window.innerWidth),e.windowWidth=window.innerWidth},[F.M](e,t){e.name=t},[F.V](e,t){e.progress=t},[F.F](e,t){e.isCached=t},[F.i](e,t){e.attachedTracks=t},[F.a](e,t){e.captionSize+t<0||(e.captionSize=e.captionSize+t)},[F.jb](e,t){e.zipDownload=t},[F.g](e,t){e.adsInjected=t},[F.l](e,t){e.completedPieces=t},[F.ib](e,t){e.width=t},[F.C](e,t){e.height=t},[F.D](e,t){e.imdbId=t},[F.w](e,t){e.externalSubtitles=t},[F.B](e,t){e.header=t},[F.x](e,t){e.externalTitle=t},[F.u](e,t){const n={};for(const t in e.features)n[t]=e.controls;e.features=Object.assign(n,t)},[F.t](e,t){e.controls=t},[F.j](e,t){e.autoplay=t},[F.k](e,t){e.caption=t},[F.N](e,t){e.newPosition=t},[F.O](e,t){e.playerControlsShown=t},[F.Q](e,t){e.playerFullScreen=t},[F.R](e,t){e.playerNativeFullScreen=t},[F.v](e,t){e.externalPoster=t},[F.hb](e,t){e.viewMode=t},[F.cb](e,t){e.theme=t},[F.f](e){e.adblock=!0},[F.h](e){e.apiUnreachable=!0},[F.I](e,t){e.loadState=t},[F.e](e){e.loadState=!1,e.abused=!0},[F.K](e){e.loadState=!1,e.loadError=!1},[F.J](e){e.loadState=!1,e.loadError=!0},[F.L](e,t){e.mediaInfo=t},[F.U](e,t){e.time=t},[F.y](e,t){a.default.set(e.currentDirFileState,t.file,t)},[F.r](e,{p:t,m:n}){a.default.set(e.downloadStats,t,n)},[F.d](e,t){a.default.delete(e.downloadStats,t)},[F.eb](e,t){e.torrent&&t&&t.infoHash==e.torrent.infoHash||(e.torrent=t,e.file=null,e.pwd="/",e.source=null,e.alterSource=null,e.playerStatus=null,e.playerFilePath=null,e.wrongFormat=!1,e.loadError=!1,e.deliveryFailure=!1,e.stats=!1,e.errors={},e.torrent&&(e.abused=!1),e.mediaInfo=null,e.playerStatus=O.b)},[F.W](e,t){e.pwd!=t&&(e.pwd=t||"/",e.file=null,e.wrongFormat=!1,e.deliveryFailure=!1,e.playerStatus=O.b)},[F.q](e,t){e.downloadPath=t},[F.s](e,t){e.downloadType=t},[F.z](e,t){e.file!=t&&(e.file=t,e.wrongFormat=!1,e.deliveryFailure=!1,e.mediaInfo=null,e.caption=null,e.playerStatus=O.b)},[F.G](e,t){e.lang=t},[F.fb](e,t){e.userLang=t},[F.p](e,t){e.downloadID=t},[F.ab](e,t){e.caption=null,e.source=t,e.playerFullScreen=!1,e.playerControlsShown=!0},[F.T](e,t){e.playerStatus=t,t!=O.g&&t!=O.a||(e.lastTime=null)},[F.H](e,t){e.lastTime=t},[F.P](e,t){e.playerFilePath=t},[F.S](e,t){e.playerSourceUrl=t},[F.db](e){e.wrongFormat=!0},[F.n](e,{header:{path:t},message:n,data:r}){a.default.set(e.errors,"/"+t,n),e.deliveryFailure={message:n,data:r}},[F.c](e){e.wrongFormat=!1},[F.b](e){e.deliveryFailure=!1},[F.o](e,t){e.deliveryToken=t},[F.bb](e,t){e.stats=t},[F.m](e,t){e.currentDirFileState=t},[F.Y](e,t){e.recentTorrents=t},[F.gb](e,t){t.captionSize&&(e.captionSize=t.captionSize),t.theme&&!e.theme&&(e.theme=t.theme)},[F.X](e,t){a.default.set(e.recentTorrents,t.infoHash,t)},[F.X](e,t){a.default.set(e.recentTorrents,t.infoHash,t)},[F.Z](e,t){e.seeder=t},[F.A](e,t){e.firstPlay=t}};function q(e,t,n=null){if(null==e)return[];let a={};const r=(e,t,n)=>{if(0==t.length)return n;const a=t.shift();return null==e[a]?e[a]=r({},t,n):e[a]=r(e[a],t,n),e};for(let t of e.files){const e=t.path.split("/");a=r(a,e,t)}let s=t.substring(1).split("/");""==s[0]&&(s=[]);let i=a;for(let e of s)i=i[e];const o=[];if(!n){o.push({name:".",type:"dir",path:"/"}),s.pop();let e="/";s.length>0&&(e="/"+s.join("/")),o.push({name:"..",type:"dir",path:e})}for(let e in i){if(n&&n!=e)continue;let a={};a.name=e,a.path="/"==t?"/"+e:`${t}/${e}`,void 0!==i[e].length?(a.type="file",a.length=i[e].length):a.type="dir",o.push(a)}return o.sort((e,t)=>e.name.localeCompare(t.name))}var W=n("ZjLY"),V=n("uUTq"),z=n.n(V);const Y=n("I1+I"),G=n("aCH8");var J=function({i18n:e,sdk:t,message:n,config:a}){return{gtagDimensions:(e,t)=>({dimension1:t.fileExt.replace(/^\./,"").toLowerCase(),dimension2:"transcode"==t.deliveryType,dimension3:t.mediaType,dimension4:t.isAutoplay,dimension5:e.file,dimension6:e.torrent.infoHash,dimension8:t.isAdblock,dimension9:t.isSponsor,dimension10:t.filePath,dimension11:t.isEmbedded}),gtagDownloadDimensions:(e,t)=>({dimension6:e.torrent.infoHash,dimension8:t.isAdblock,dimension9:t.isSponsor}),sdk:()=>t,torrentFile:e=>q(e.torrent,e.pwd,e.file)[0],title:e=>"Webtor.io",isEmbedded:(e,t)=>t.isVideoMode||t.isDownloadMode,iOS:()=>"undefined"!=typeof window&&(["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(window.navigator.platform)||window.navigator.userAgent.includes("Mac")&&"ontouchend"in document),showShare:(e,t)=>!t.isEmbedded,showLogo:(e,t)=>!t.isEmbedded,showDownload:(e,t)=>!t.isEmbedded,showStatus:(e,t)=>!t.isEmbedded,selfHosted:()=>a.selfHosted,isAutoplay:e=>e.autoplay,isVideoMode:e=>"video"==e.viewMode,isDownloadMode:e=>"download"==e.viewMode,preroll:e=>e.preroll,isIndia:e=>"IN"==e.country,underPlayerBanner:e=>e.underPlayerBanner,warnBanner:e=>e.warnBanner,shareLink:e=>window.location.origin+"/"+e.torrent.infoHash,magnetURI:e=>z.a.toMagnetURI(e.torrent),blogUrl:e=>`https://blog.webtor.io/${e.lang}/post/`,backersUrl:e=>`https://blog.webtor.io/${e.lang}/backers/`,technologyUrl:e=>`https://blog.webtor.io/${e.lang}/technology/`,metadata:e=>{const t={};return e.userID&&(t["user-id"]=e.userID),t},translations:t=>e.messages,ls:e=>q(e.torrent,e.pwd),currentVideoFiles:(e,n)=>{const a=[];for(const e of n.ls)"video"==t.util.getMediaType(e.name)&&a.push(e.name);return a},currentVideoFilesWithFriendlyNames:(t,n)=>{const a=[];for(const t of n.currentVideoFiles){let n=Y(t).name;if(n.match(/s\d+/i)&&n.match(/e\d+/i)){const t=n.match(/e(\d+)/i),a=(parseInt(t[1])+"").padStart(2,"0");n=e.t("common.episode")+" "+a}a.push({name:t,friendlyName:n})}return a},currentPrimaryVideoFiles:(e,t)=>t.currentVideoFiles.filter(e=>!e.match(/sample/i)),currentInfoHash:e=>e.torrent?e.torrent.infoHash:null,isDemo:(e,t)=>"08ada5a7a6183aae1e09d831df6748d566095a10"==t.currentInfoHash,displayAds:(e,t)=>!t.isDemo&&(0!=a.ads&&!t.isSponsor),displayPopups:(e,t)=>t.displayAds,displayAdsense:(e,t)=>0!=a.adsense&&(0!=a.ads&&(!t.isSponsor&&!t.isEmbedded)),displayAdfox:(e,t)=>0!=a.ads&&(!t.isSponsor&&!t.isEmbedded),displayPrerolls:(e,t)=>!1,isAdblock:e=>e.adblock,isWindows:e=>navigator.platform.indexOf("Win")>-1,currentDir:e=>"/"==e.pwd?null:e.pwd.split("/").slice(-1).pop(),deepLevel:e=>e.pwd.split("/").length-1,deliveryType:e=>t.util.getDeliveryType(e.file),mediaType:e=>t.util.getMediaType(e.file),fileName:e=>Y(e.file).name,fileExt:e=>Y(e.file).ext,filePath:e=>null==e.file?e.pwd:"/"==e.pwd?e.file:e.pwd.substr(1)+"/"+e.file,downloadFile:e=>e.downloadPath?Y(e.downloadPath).base:null,downloadSize:e=>{let t=0;for(const n of e.torrent.files)("/"+n.path).startsWith(e.downloadPath)&&(t+=n.length);return t},isSponsor:e=>!!e.user&&(e.user&&e.user.role&&"NOBODY"!=e.user.role),sources:async(e,n)=>{const a=await e.seeder.streamUrl(n.filePath,U(n.metadata));return[{src:a,type:t.util.getMimeType(a),title:"main"}]},poster:async(e,n)=>{const a=U(n.metadata);if(a.invoke=!1,e.externalPoster)return await t.ext.streamUrl(e.externalPoster,{},a);for(let r of e.torrent.files)if("image"==t.util.getMediaType(r.name)&&r.name.startsWith(n.fileName))return await e.seeder.streamUrl(r.path,a);if(1==n.currentPrimaryVideoFiles.length){const r=n.ls;for(const n of r)if("image"==t.util.getMediaType(n.name)&&n.name.match(/poster/))return await e.seeder.streamUrl(n.path,a)}return null},captionSource(e){if(!e.player.subtitle)return null;let t=e.player.subtitle.src;return t?(t.href&&(t=t.href),Object(W.a)(t)):null},openSubtitlesTracks:async(e,a)=>{let r=[];const s={};e.imdbId&&(s["imdb-id"]=e.imdbId);const i=await e.seeder.openSubtitles(a.filePath,Object.assign(U(a.metadata),s));n.send("open subtitles",i);for(const e of i){if(!["srt","vtt"].includes(e.format))continue;const n=t.util.getLang(e.srclang);r.push({kind:"subtitles",label:""!=n.nativeName?n.nativeName:e.label,srclang:e.srclang,src:e.src,hash:G(e.hash+e.id)})}return r=H(r),r},async tracks(e,t){let n=[];n=e.player.subtitle?[e.player.subtitle]:e.attachedTracks;let a=[];for(const e of n)a.push(U(e));for(const t of a){if(e.player.subtitle&&t.hash==e.player.subtitle.hash){t.default=!0;break}if(t.autoselect){t.default=!0;break}}return a},hasLogin:()=>a.patreon,apiUrl:()=>a.sdk.apiUrl}},K=n("UiL2"),X=n.n(K),Z=n("sKoL");function Q(e){return e.split("_")[0].toLowerCase()}function ee(e,t){e=Q(e);for(const n of t)if(Q(n.srclang)==e)return n;return null}async function te({state:e,getters:t},n){let a=null;if(a=ee(n,e.attachedTracks),a&&(a.source="attached"),!a){const e=await t.openSubtitlesTracks;e&&(a=ee(n,e),a&&(a.source="openSubtitles"))}return a}n("NOtv")("webtor:lib:stoplistCheck");function ne(e,t){return e==t||e.startsWith(t+" ")||e.endsWith(" "+t)||e.includes(" "+t+" ")}function ae(e,t){return ne(e,t)||ne(e,t.replace(/\s+/g,""))}function re(e,t){const n=t.split("|");for(const t of n)if(ae(e,t))return!0;return!1}function se(e,t){const n=t.split("+");let a=!0;for(const t of n)re(e,t)||(a=!1);return a}var ie=function(e,t){const n=e.toLowerCase().replace(/[^\w]/g," ").replace(/(\d+)/g," $1 ").replace(/\s+/g," ");for(const e of t)if(""!=e&&se(n,e))return!1;return!0};const oe=n("GBY4");var le=n("hLX6"),ce=n.n(le);function de(e){for(let t in e)Array.isArray(e[t])?e[t]=e[t].join("\n"):"object"==typeof e[t]&&(e[t]=de(e[t]));return e}var ue=n("sEfC"),pe=n.n(ue);const me=n("NOtv")("webtor:lib:store"),he=n("aCH8"),fe=n("GBY4"),ye=n("lnXG"),ge=n("DKuG");let we,be=!1,Ee=!1;const Te=n("WLfg");var Se=function({router:e,message:t,db:n,sdk:r,ext:s,i18n:i,injectHash:o,injectCode:l,config:c}){return{log({},e){me(e)},adblockEnabled:({commit:e})=>{e(F.f)},changeCaptionSize:({commit:e,dispatch:t},n)=>{e(F.a,n),t("updateUserSettings")},getMediaInfo:async({commit:e,state:t,getters:n})=>{if("webseed"==n.deliveryType)return;const a=U(n.metadata);a.invoke=!1;const r=await t.seeder.mediaInfo(n.filePath,a);e(F.L,r)},async play({commit:e,dispatch:t}){t("stats"),e(F.T,O.e)},async pause({commit:e}){e(F.T,O.c)},async cd({dispatch:e,state:t},n){n!=t.pwd&&(e("log","Change directory path="+n),await e("setState",{torrent:t.torrent,pwd:n}),await e("pushState"))},async getCurrentDirFileStates({commit:e,state:t}){const a=await n.getCurrentDirFileStates({infoHash:t.torrent.infoHash,pwd:t.pwd}),r={};for(const e of a)r[e.file]=e;e(F.m,r)},async open({dispatch:e,state:t,commit:n},a){e("log","Open path file="+a),await e("setState",{torrent:t.torrent,pwd:t.pwd,file:a,autoplay:!0}),await e("pushState")},async hideDownload({commit:e}){e(F.s,null),e(F.q,null)},async download({dispatch:e,state:t,getters:n,commit:a},r){a(F.s,"file"),a(F.q,r)},async downloadUrl({state:e,getters:t}){let n=null;return n="zip"==e.downloadType?await e.seeder.zipUrl(e.downloadPath,U(t.metadata)):await e.seeder.downloadUrl(e.downloadPath,U(t.metadata)),n},async proceedTorrentDownload({dispatch:e,state:t,getters:n,commit:a}){const r=ye(t.torrent),s=z.a.toTorrentFile(r),i=new Blob([s.buffer]),o=window.URL.createObjectURL(i),l=document.createElement("a");l.style.display="none",l.href=o,l.download=r.name+".torrent",document.body.appendChild(l),l.click(),window.URL.revokeObjectURL(o)},async proceedDownload({dispatch:e,state:t,getters:n,commit:a}){let r=null;"zip"==t.downloadType?(r=await t.seeder.zipUrl(t.downloadPath,U(n.metadata)),e("downloadEvent","Content Zip Download")):(r=await t.seeder.downloadUrl(t.downloadPath,U(n.metadata)),e("downloadEvent","Content Download")),e("log",`Download path=${t.downloadPath} type=${t.downloadType} url=${r.href}`),e("stats"),window.location=r.href},event({getters:e},{name:t,payload:n={}}){const r=Object.assign({},e.gtagDimensions,n);void 0!==a.default.$gtag&&a.default.$gtag.event(t,r)},downloadEvent({getters:e},t){const n=Object.assign({},e.gtagDownloadDimensions,{dimension10:j.downloadPath});void 0!==a.default.$gtag&&a.default.$gtag.event(t,n)},async zip({dispatch:e,state:t,getters:n,commit:a}){if(!t.torrent)return;let r=t.pwd;"/"==r&&(r="/"+t.torrent.name),me("zip invoked path=%o",r),a(F.s,"zip"),a(F.q,r)},async delivery({commit:e,state:t,getters:n,dispatch:a}){if(!t.torrent||!t.file)return;const r=n.filePath;a("log",`Deliver content file=${r} url=${await t.seeder.streamUrl(r,U(n.metadata))}`),a("updateSource"),a("stats")},async stats({state:e,getters:t,commit:n}){const a=t.filePath,r=await e.seeder.isCached(a,U(t.metadata));if(n(F.F,r),e.features.p2pProgress&&!r&&!we)try{we=await e.seeder.stats("",(e,t)=>{n(F.bb,t)},U(t.metadata))}catch(e){me(e),we=null}},async pushTorrent({getters:e,dispatch:t},n){t("log","Push torrent torrentInfo="+n.infoHash);try{return await r.torrent.touch(n,2592e3,U(e.metadata))}catch(t){if("not found"!=t)throw me(t),t;try{return await r.torrent.push(n,2592e3,U(e.metadata))}catch(e){throw me(e),e}}},pushAbuse:async({getters:e},t)=>await r.abuse.push(t,U(e.metadata)),async setState({commit:e,state:t,dispatch:a,getters:s},i){let{torrent:o,file:l,pwd:c,autoplay:d}=i;if(!c&&o&&o.files.length>0){const e=o.files[0].path.split("/");e.length>1&&(c="/"+e[0])}c||(c="/");const u={torrent:t.torrent,file:t.file,pwd:t.pwd};if(JSON.stringify(x(u))!=JSON.stringify(x(i))){if(await a("leave"),(o&&!t.torrent||o&&o.infoHash!=t.torrent.infoHash)&&await n.pushTorrent(o),e(F.eb,o),e(F.W,c),e(F.z,l),o&&!l&&(null==u.torrent||u.torrent.infoHash!=o.infoHash)){const t=s.currentPrimaryVideoFiles;t.length>0&&(l=t[0],e(F.z,l))}if(o&&c){const t=await n.setRecentTorrent(o,c);e(F.X,t),await a("getCurrentDirFileStates")}if(o&&c&&l)if(s.isDownloadMode)await a("zip");else{const i=await n.getFileState({infoHash:o.infoHash,pwd:c,file:l});let u=0,p=null;const m=await s.tracks;if(m.length>0)for(const e of m)if(e.autoselect){p=e;break}if(i&&i.time&&(u=i.time),i&&i.subtitle&&i.subtitle.src){p=i.subtitle;let e=new fe(p.src);const n={};t.imdbId&&(n["imdb-id"]=t.imdbId);const a=await r.util.makeQuery(Object.assign(U(s.metadata),n));e.set("query",a),p.src=e}if(p&&"ext"==p.type){let e=!1;for(const t of m)t.hash==p.hash&&(e=!0);e||(p=null)}await a("player/setSubtitle",p);let h=null;if(i&&i.audio&&i.audio.src){h=i.audio;let e=new fe(p.src);const t=await r.util.makeQuery(Object.assign(U(s.metadata),{}));e.set("query",t),h.src=e}await a("player/setAudio",h),e(F.j,d),e(F.U,u),a("event",{name:"Content Show"}),await a("delivery")}}},async fetchMagnet({dispatch:e,getters:t},a){let s=null;e("log","Fetch torrent magnet="+a);var{_:i,infoHash:o}=z()(a);if(e("log","Fetching from localdb"),s=await n.pullTorrent(o),!s||!s.pieces||0==s.pieces.length)try{e("log","Fetching from torrent store"),s=await r.torrent.pull(o,U(t.metadata))}catch(e){me(e)}return s||(e("log","Fetching by magnet uri from peers"),s=await r.magnet.fetchTorrent(a,U(t.metadata))),s},fetchFromURL:async({},e)=>(e.match(/^http/)&&(e=await r.ext.url(e)),await r.torrent.fromUrl(e)),async processInit({commit:n,getters:a,dispatch:r},s){n(F.g,!0),t.send("inject",l);const c=await t.receiveOnce("check");await ge("/sandblaster.min.js");const d=sandblaster.detect();if(me("chacking hashes %o %o",Te(c),o),Te(c)!=o||d.sandboxed)return e.push({name:"empty"}).catch(()=>{}),t.send("forbidden"),!1;if(ge("/iframeResizer.contentWindow.min.js"),s.imdbId&&n(F.D,s.imdbId),s.subtitles&&(n(F.w,s.subtitles),r("updateAttachedTracks")),s.hasOwnProperty("controls")&&n(F.t,s.controls),s.features&&n(F.u,s.features),s.poster&&n(F.v,s.poster),s.title&&n(F.x,s.title),s.lang&&(n(F.G,s.lang),i.locale=s.lang),s.userLang&&n(F.fb,s.userLang),s.mode&&n(F.hb,s.mode),s.i18n)for(const e in s.i18n){const t=ce.a.dot(de(s.i18n[e]));i.mergeLocaleMessage(e,t)}!1===s.header&&n(F.B,!1),s.height&&n(F.C,s.height),s.width&&n(F.ib,s.width)},async fetchTorrent({state:n,commit:a,dispatch:i,getters:o},l=null){we&&(we.close(),we=null);const c=e.currentRoute;let d=n.torrent;if("string"==typeof l){const e=function e(t){if(t.match(/^magnet/)||t.match(/^[a-fA-F0-9]{40}$/))return z()(t);const n=oe(t,!0);for(const t in n.query){const a=e(n.query[t]);if(a)return a}return!1}(l);l=e||await i("fetchFromURL",l)}let u={};t.send("init");const p=await t.receiveOnce("init");if(p){if(!1===await i("processInit",p))return;u={torrentUrl:p.torrentUrl,magnet:p.magnet},t.receive("play",()=>{i("play")}),t.receive("pause",()=>{i("pause")}),t.receive("setPosition",async e=>{await i("setPosition",e),await i("setPosition",null)}),t.receive("open",async e=>{await i("setState",{torrent:n.torrent,pwd:e.pwd,file:e.file}),await i("pushState")})}else u={torrentUrl:c.query.torrent_url,magnet:c.query.magnet,downloadId:c.query.downloadId};if("{}"==JSON.stringify(X()(u))&&!n.torrent&&!l)return void e.push({name:"intro"}).catch(()=>{});const m=d?z.a.toMagnetURI(d):null,h=l?z.a.toMagnetURI(l):null;if(u.magnet&&u.magnet!=m||u.downloadId||u.torrentUrl||l&&h!=m){a(F.V,25),o.isVideoMode?a(F.I,"prepare to play"):a(F.I,"loading torrent");try{if(l&&l.pieces&&l.pieces.length>0)d=l;else if(!r||!l||l.pieces&&0!=l.pieces.length)if(s&&u.downloadId){i("log","Fetch torrent downloadId="+u.downloadId);const e=parseInt(u.downloadId);me("request downloadId=%d",e),d=await s.fetch(e)}else r&&u.torrentUrl?d=await i("fetchFromURL",u.torrentUrl):r&&u.magnet&&(d=await i("fetchMagnet",u.magnet));else d=await i("fetchMagnet",h);if(a(F.V,50),me("Got torrent infoHash=%s",d.infoHash),!await i("checkTorrent",d))return a(F.e),a(F.V,0),void e.push({name:"intro"}).catch(()=>{});if(await i("pushTorrent",d),a(F.V,75),a(F.Z,r.seeder.get(d.infoHash)),r&&r.params.cache){const e=await n.seeder.completedPieces();me("Got torrent completed pieces length=%o",e.length),a(F.l,e)}a(F.K);let o=null;c.query.pwd&&!l&&(o=c.query.pwd),p&&p.pwd&&(o=p.pwd);let m=null;c.query.file&&!l&&(m=c.query.file),p&&p.file&&(m=p.file),await i("setState",{torrent:d,pwd:o,file:m}),a(F.V,100),t.send("torrent fetched",d)}catch(e){t.send("torrent error"),await i("setState",{}),"abused"==e?a(F.e):(a(F.J),me(e)),a(F.V,0)}"player-logo-click"==c.query.event&&i("event",{name:"Player Logo Click"}),await i("pushState")}},async cleanTorrent({commit:e}){e(F.eb,null),e(F.W,null),e(F.z,null),e(F.ab,null)},async processFile({commit:e,dispatch:t},n){if(n)try{return await Object(Z.a)(n)}catch(t){console.log(t),e(F.db)}},async leave({commit:e}){e(F.ab,null)},async nextFile({state:e,dispatch:t,getters:n}){const a=n.ls;if(a<2)return;let s=null,i=!0;for(let t of a)if(r.util.getMediaType(t.path)==r.util.getMediaType(e.playerFilePath)){if(!i){s=t;break}"/"+e.playerFilePath==t.path&&(i=!1)}s&&await t("open",s.name)},async pushState({state:n}){if(n.torrent){t.send("open",{file:n.file,pwd:n.pwd});try{me("push state=%o",{file:n.file,pwd:n.pwd}),await e.push({name:"show",query:X()({file:n.file,pwd:n.pwd,magnet:z.a.toMagnetURI(n.torrent)})})}catch(e){if(console.log(e),"NavigationDuplicated"!==e.name)throw e}}else e.push({name:"intro"}).catch(()=>{})},async checkTorrent({},e){for(const t of e.files)if(!ie(t.path,c.stoplist))return!1;return!0},async updateCaption({state:e,getters:t,commit:n}){const a=await t.captionSource;if(!a)return void n(F.k,null);const r=await a.getEntry(e.time);n(F.k,r)},async updateTime({commit:e,getters:n,dispatch:a,state:r},{time:s,file:i}){e(F.U,s),a("updateCaption"),a("updateFileState",i),null===r.lastTime?e(F.H,s):s-15-5>r.lastTime?(e(F.H,s),r.lastTime=s):s-15>r.lastTime&&(a("event",{name:"Content Playtime",payload:{metric1:s-r.lastTime}}),e(F.H,s)),t.send("current time",s)},async setDuration({},e){t.send("duration",e)},firstPlay({commit:e,dispatch:t}){e(F.A,!1),t("event",{name:"Content Plays"})},async setPosition({commit:e},t){e(F.N,t)},async processAutoSubtitles(e){const t=await async function(e){const{state:t}=e;let n=null;return n=await te(e,t.userLang),n||(n=await te(e,t.fallbackLang)),n}(e),{dispatch:n}=e;t&&n("player/setSubtitle",t)},async updateAttachedTracks({state:e,commit:t,getters:n}){let a=[];const s=U(n.metadata);s.invoke=!1;for(const t of e.externalSubtitles){let e=!1;!0===t.autoselect&&(e=!0),!0!==t.default&&""!==t.default||(e=!0),a.push({kind:"subtitles",label:t.label,srclang:t.srclang,src:await r.ext.streamUrl(t.src,{},s),hash:he(t.src+t.label),autoselect:e,type:"ext"})}for(const t of e.hls.subtitles)a.push({kind:"subtitles",label:t.label,srclang:t.srclang,hash:he(t.src),src:new fe(t.src),autoselect:t.autoselect,default:t.default,forced:t.forced,type:"hls"});if(e.torrent)for(let t of e.torrent.files)if("subtitle"==r.util.getMediaType(t.name)&&t.name.startsWith(n.fileName)){const n=r.util.getSubtitleLang(t.name);a.push({kind:"subtitles",label:n?n.nativeName:t.name,srclang:n?n.code:"en",src:await e.seeder.streamUrl(t.path,s),hash:he(e.infoHash+t.name)})}a=H(a),t(F.i,a)},async updateSource({state:e,getters:t,commit:n}){const a=r.util.getMediaType(e.file),s=await t.sources,i=await t.tracks,o=await t.poster,l={format:a,sources:s,tracks:i,autoplay:t.isAutoplay,poster:o};me("setting source=%o",l),n(F.ab,l)},async updateFileState({state:e,commit:t},a=null){if(a||(a=e.file),!e.file||!e.torrent||!e.pwd||e.file!=a)return;let r={infoHash:e.torrent.infoHash,pwd:e.pwd,file:e.file,subtitle:M(e.player.subtitle),audio:M(e.player.audio),time:e.time};r=await n.updateFileState(r),t(F.y,r)},async init({dispatch:e,commit:t}){await Promise.all([e("checkApi"),e("getRecentTorrents"),e("getUserSettings"),e("initRouter"),e("initWindowWidth")]),t(F.E),me("inited")},updateWindowWidth({commit:e}){e(F.kb)},async checkApi({commit:e}){if(r)try{await r.checkApi()}catch(t){e(F.h),me(t)}},async initWindowWidth({commit:e}){"undefined"!=typeof window&&window.addEventListener("resize",pe()(()=>{e(F.kb)},1e3))},async initAdScripts({getters:e}){if(!Ee&&e.displayPopups){Ee=!0;for(const t of c.adScripts){if(t.context&&!1===t.context.embed&&e.isEmbedded)continue;const n=document.createElement("script");if(n.type="text/javascript",n.setAttribute("data-cfasync","false"),t.src)n.src=t.src;else if(t.content){const e=document.createTextNode(t.content);n.appendChild(e)}document.body.appendChild(n)}}},async initAdsense(){if(be)return;be=!0;const e=document.createElement("script");e.type="text/javascript",e.setAttribute("async","true"),e.src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client="+c.adsense.client,e.crossOrigin="anonymous",document.body.appendChild(e)},async placeAdsenseAd({getters:e,dispatch:t},{slot:n,name:a,format:r,style:s,placeholder:i}){if(!e.displayAdsense)return;t("initAdsense"),a&&(n=c.adsense.slots[a]),s||(s="display:block");let o='30))return document.getElementById(i)&&"adsbygoogle"in window&&document.getElementById(i).offsetWidth>0?(document.getElementById(i).innerHTML=o,(adsbygoogle=window.adsbygoogle||[]).push({}),void clearInterval(d)):void l++;clearInterval(d)}),100)},async initRouter({state:t,commit:n,dispatch:r}){e.beforeEach(async(r,s,o)=>{if("undefined"!=typeof window){const t=new URL(window.location);if("/"!=t.pathname||""!=t.search)return history.replaceState({},"","/"),void e.replace(t.pathname+t.search)}let l=r.name,c=r.path;if(r.query.magnet&&(c="/"+z()(r.query.magnet).infoHash,r.query.pwd&&(c+=r.query.pwd,l=r.query.pwd),r.query.file&&(c+="/"+r.query.file,l=r.query.file)),a.default.$gtag&&a.default.$gtag.pageview({page_path:c,page_title:l}),"video"!=r.query.mode&&"video"!=t.viewMode||n(F.hb,"video"),"download"!=r.query.mode&&"download"!=t.viewMode||n(F.hb,"download"),s.params.lang&&!r.params.lang)return e.push(Object(N.b)(r,s.params.lang)).catch(()=>{});if(r.params.lang&&(n(F.G,r.params.lang),i.locale=r.params.lang),r.hash||r.name&&r.name.startsWith("magnet-uri")||r.name&&r.name.startsWith("infohash")){let t="";r.name&&r.name.startsWith("infohash")?t=r.params.infohash:r.name&&r.name.startsWith("magnet-uri")?(t=decodeURIComponent(r.fullPath.substring(1)),t=t.match(/magnet\:.*/)[0]):t=r.hash.substring(1);try{const n=z()(t),a=z.a.toMagnetURI(n);return e.push({name:"show",query:{magnet:a}}).catch(()=>{})}catch(e){me(e)}}return o()})},async getUserSettings({commit:e}){if(!n)return;const t=await n.getUserSettings();e(F.gb,t)},async updateUserSettings({state:e}){const t={captionSize:e.captionSize};n.updateUserSettings(t)},getRecentTorrent:async(e,t)=>await n.pullTorrent(t),async getRecentTorrents({commit:e}){if(!n)return;const t=await n.getRecentTorrents(),a={};for(const e of t)a[e.infoHash]=e;e(F.Y,a)},async updatePlayerStatus({commit:e},n){t.send("player status",n),e(F.T,n)},playerInited(){t.send("inited")}}};function ve(e){return{autoselect:e.autoselect,default:e.default,forced:e.forced,srclang:e.lang,label:e.name,src:e.url,id:e.id}}var Le={namespaced:!0,strict:!0,state:()=>({audio:[],subtitles:[]}),getters:{},actions:{async updateSubtitles({commit:e,dispatch:t},n){const a=[];for(const e of n)a.push(ve(e));e("setSubtitles",a),t("updateAttachedTracks",{},{root:!0})},async updateAudio({commit:e},t){const n=[];for(const e of t)n.push(ve(e));e("setAudio",n)}},mutations:{setSubtitles(e,t){e.subtitles=t},setAudio(e,t){e.audio=t}}};var _e={namespaced:!0,strict:!0,state:()=>({audio:null,subtitle:null,error:null,availableDuration:0,duration:0,dropSubtitles:[]}),getters:{seeder:(e,t,n,a)=>n.seeder,filePath:(e,t,n,a)=>a.filePath},actions:{async dropSubtitles({commit:e},t){e("dropSubtitles",t)},async clearSubtitleDrops({commit:e}){e("clearSubtitleDrops")},async setSubtitle({commit:e,dispatch:t},n){e("setSubtitle",n),await t("updateFileState",null,{root:!0}),await t("updateCaption",{},{root:!0})},async setAudio({commit:e,dispatch:t},n){e("setAudio",n),await t("updateFileState",null,{root:!0})},async updateAvailableDuration({commit:e,dispatch:t},n){e("setAvailableDuration",n)},async updateDuration({commit:e},t){e("setDuration",t)},async setError({dispatch:e,state:t,getters:n,commit:a},r){try{const e=await n.seeder.error(n.filePath);if(e){let t="unknown error";t=e.includes("probing failed")||e.includes("context deadline exceeded")?"no peers for transcoding":e.split(": ").pop(),a("setError",t)}}catch(r){console.log(r),a("setError",r.message)}}},mutations:{setSubtitle(e,t){e.subtitle=t},setAudio(e,t){e.audio=t},setError(e,t){e.error=t},setAvailableDuration(e,t){e.availableDuration=t},setDuration(e,t){e.duration=t},dropSubtitles(e,t){e.dropSubtitles=t},clearSubtitleDrops(e){e.dropSubtitles=[]}}};var Ae=n("Aqzh"),Pe=n.n(Ae),Ie=n("qSUR"),Ce=n("7VJI"),Ne=n.n(Ce),De=["en","ru"];n("NOtv")("webtor:i18n");const Oe=new Ne.a.Locales(De),ke={};for(let e of De)ke[e]=ce.a.dot(de(Pe()(n("itzk"),n("0JRs")(`./${e}.json`))));a.default.use(Ie.a);var Re=n("1M3H"),Ue=n.n(Re);let xe=!1;var Me=n("QZtn"),He=n("angx");async function je({api:e,db:t,locales:n,routerMode:s,ext:i,debug:o,user:l,sdk:c,message:d,config:u,ssr:p,injectHash:m,injectCode:h}){const f=function({mode:e}){return new C.a({mode:e,routes:D})}({mode:s}),y=function(e){const t=e.best(Oe).normalized;return new Ie.a({locale:t,fallbackLocale:"en",messages:ke,pluralizationRules:{ru:function(e,t){if(0===e)return 0;const n=e>10&&e<20,a=e%10==1;return t<4?!n&&a?1:2:!n&&a?1:!n&&e%10>=2&&e%10<=4||t<4?2:3}}})}(n),g=function({router:e,i18n:t,ext:n,debug:a,db:s,user:i,sdk:o,message:l,config:c,ssr:d,injectHash:u,injectCode:p,locales:m}){return new r.a.Store({modules:{hls:Le,player:_e},strict:!0,state:j({user:i,deb:a,i18n:t,ssr:d,locales:m}),mutations:B,getters:J({i18n:t,sdk:o,message:l,config:c}),actions:Se({router:e,message:l,db:s,sdk:o,ext:n,i18n:t,injectHash:u,injectCode:p,config:c})})}({router:f,db:t,api:e,i18n:y,locales:n,ext:i,debug:o,user:l,sdk:c,message:d,config:u,ssr:p,injectHash:m,injectCode:h});g.dispatch("init"),He.a.buildVue=e=>new a.default({i18n:y,store:g,router:f,...e});const w=He.a.buildVue({render:e=>e(Me.a)});return function(){if(xe)return;xe=!0;const e=new Ue.a;Object.defineProperty(a.default.prototype,"$tm",{get(){return(...t)=>e.renderInline(this.$t(...t))}})}(),{app:w,router:f,store:g}}a.default.component("icon",o.a),a.default.use(r.a),a.default.use(i.a),a.default.use(l.a),a.default.use(c.a),a.default.use(d.a),a.default.use(u.a),a.default.use(p.a),a.default.use(m.a),a.default.use(h.a),a.default.use(f.a),a.default.use(y.a),a.default.use(g.a),a.default.use(w.a),a.default.use(b.a),a.default.use(T.a),a.default.use(S.a),a.default.use(v.a),a.default.use(L.a),a.default.use(_.a),a.default.use(E.a),a.default.use(A.a),a.default.use(I.a)},jMAv:function(e,t,n){"use strict";n.d(t,"a",(function(){return l}));var a=n("P0+2");const r=n("aCH8"),s=n("NOtv")("webtor:lib:clientDb");class i{getDb(){return null!=this.db||(this.db=Object(a.a)("webtor",3,{upgrade(e,t){if(t<1){const t=e.createObjectStore("files",{keyPath:"id"});e.createObjectStore("torrents",{keyPath:"id"}),t.createIndex("hashAndPwd","hashAndPwd")}t<2&&e.createObjectStore("recentTorrents",{keyPath:"id"}),t<3&&e.createObjectStore("userSettings",{keyPath:"id"})}})),this.db}makeFileKey(e){return r(e.infoHash+e.pwd+e.file)}makeHashAndPwd(e){return r(e.infoHash+e.pwd)}async updateFileState(e){const t=this.makeFileKey(e),n=await this.getDb(),a=this.makeHashAndPwd(e);return e.id=t,e.hashAndPwd=a,e.timestamp=Date.now(),await n.put("files",e),e}async getFileState(e){const t=this.makeFileKey(e),n=await this.getDb();return await n.get("files",t)}async getCurrentDirFileStates(e){const t=this.makeHashAndPwd(e),n=await this.getDb();return await n.getAllFromIndex("files","hashAndPwd",t)}async pushTorrent(e){const t=await this.getDb(),n=e.infoHash;return await t.put("torrents",{id:n,torrent:e})}async pullTorrent(e){const t=await this.getDb(),n=await t.get("torrents",e);return n?n.torrent:null}async setRecentTorrent(e,t){const n=await this.getDb(),a=e.infoHash,r=e.name,s={id:a,infoHash:e.infoHash,name:r,pwd:t,timestamp:Date.now()};return await n.put("recentTorrents",s),s}async getRecentTorrents(){const e=await this.getDb();return await e.getAll("recentTorrents")}async updateUserSettings(e){const t=await this.getDb();return e.id=1,await t.put("userSettings",e)}async getUserSettings(){const e=await this.getDb(),t=await e.get("userSettings",1);return t||{}}}class o{async updateUserSettings(e){}async getUserSettings(){return{}}async updateFileState(e){return{}}async getFileState(e){return null}async getCurrentDirFileStates(e){return[]}async pushTorrent(e){}async pullTorrent(e){return null}async setRecentTorrent(e){return{}}async getRecentTorrents(){return[]}}async function l(){if(!("indexedDB"in window))return s("This browser doesn't support IndexedDB"),new o;const e=new i;try{await e.getUserSettings()}catch(e){return s(e),new o}return e}},lYHK:function(e,t){Object.assign(MediaElementPlayer.prototype,{async builddownload(e,t,n){const a=this.options.store;let{getters:r,dispatch:s}=a;e.downloadButton=document.createElement("div"),e.downloadButton.className=`${this.options.classPrefix}button ${this.options.classPrefix}download-button`,e.downloadButton.innerHTML=``,this.addControlElement(e.downloadButton,"download");e.downloadButton.addEventListener("click",e=>{e.stopPropagation(),e.preventDefault(),s("download","/"+r.filePath)})}})},mN5Q:function(e,t,n){"use strict";const a=n("NOtv")("webtor:lib:message");function r(){try{return window.self!==window.top}catch(e){return!0}}const s=new URLSearchParams(window.location.search).get("id");a("using message id=%o",s);const i={id:()=>s,send(e,t={}){r&&(a("post message=%o data=%o",e=s?{id:s,name:e,data:t}:"webtor: "+e,t),window.parent.postMessage(e,"*"))},receiveOnce:e=>new Promise((t,n)=>{const r=n=>{const i=n.data;s||(window.removeEventListener("message",r),t()),i.id==s&&i.name==e&&(a("receive message=%o",i),window.removeEventListener("message",r),t(i.data))};window.addEventListener("message",r)}),receive(e,t){window.addEventListener("message",(function(n){const r=n.data;r.id==s&&r.name==e&&(a("receive message=%o",r),t(r.data))}))}};t.a=i},qGil:function(e,t,n){"use strict";n.r(t),function(e){var t=n("hLcy"),a=n("jMAv"),r=n("ATa7"),s=n("0Vpd"),i=n("7VJI"),o=n.n(i),l=n("mN5Q"),c=n("oRvx");let d=window.location!=window.parent.location?document.referrer:document.location.href;d&&(d=new URL(d));let u=window.__TOKEN__,p=window.__USER__,m=JSON.parse(e.from(window.__CONFIG__,"base64").toString("utf-8")),h=window.__INJECT_CODE__,f=window.__INJECT_HASH__;window.__INITIAL_STATE__&&window.__INITIAL_STATE__.user&&(p=window.__INITIAL_STATE__.user);const y=Object(c.a)(Object.assign({async getToken(){if(!u)return null;const e=await fetch("/token/",{headers:{token:u}});return u=await e.text(),u}},m.sdk));m.ga&&Object(r.a)(Object.assign({appVersion:n("kiQV").version},m.ga));const g=Object(s.a)(),w=window.navigator.userLanguage||window.navigator.language,b=new o.a.Locales(w);let E=!1;try{E=localStorage&&!!localStorage.debug}catch(e){console.log(e)}(async()=>{const e=await Object(a.a)(),{app:n,router:r,store:s}=await Object(t.a)({locales:b,routerMode:null,ext:g,debug:E,db:e,user:p,sdk:y,message:l.a,url:d,config:m,ssr:!1,injectCode:h,injectHash:f});window.__INITIAL_STATE__&&(window.__INITIAL_STATE__.ssr=!1,s.replaceState(window.__INITIAL_STATE__)),r.onReady(async()=>{n.$mount("#app"),s.dispatch("updateWindowWidth")})})()}.call(this,n("HDXh").Buffer)},sKoL:function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return s}));var a=n("uUTq"),r=n.n(a);function s(t){return new Promise((n,a)=>{const s=new FileReader;s.addEventListener("load",t=>{const s=new Uint8Array(t.target.result),i=new e(s);try{n(r()(i))}catch(t){a(t)}}),s.addEventListener("error",e=>{a(e)}),s.readAsArrayBuffer(t)})}}).call(this,n("HDXh").Buffer)},sUwA:function(e,t,n){"use strict";var a=n("UmmU"),r=n("angx");Object.assign(MediaElementPlayer.prototype,{async buildsettings(e,t,n){const s=this.options.store;let{state:i,getters:o,dispatch:l}=s;e.settingsButton=document.createElement("div"),e.settingsButton.className=`${this.options.classPrefix}button ${this.options.classPrefix}settings-button`,e.settingsButton.innerHTML=``,this.addControlElement(e.settingsButton,"settings"),e.settingsLayer=document.createElement("div"),e.settingsLayer.className=`${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}settings`;const c=document.createElement("div");e.settingsLayer.appendChild(c);const d=n.querySelector(`.${this.options.classPrefix}overlay-play`);n.insertBefore(e.settingsLayer,d),e.settingsLayer.style.width="100%",e.settingsLayer.style.height="100%";let u=!1;const p=()=>{e.settingsLayer.style.display=u?"none":"",u=!u};r.a.buildVue({el:c,render:e=>e(a.a,{on:{close:p}})}),e.settingsLayer.style.display="none",e.settingsLayer.style.zIndex=2,e.settingsButton.addEventListener("click",p)}})},sbly:function(e,t,n){"use strict";n.d(t,"d",(function(){return a})),n.d(t,"e",(function(){return r})),n.d(t,"c",(function(){return s})),n.d(t,"a",(function(){return i})),n.d(t,"g",(function(){return o})),n.d(t,"f",(function(){return l})),n.d(t,"b",(function(){return c}));const a="PLAY",r="PLAYING",s="PAUSE",i="ENDED",o="SEEKING",l="SEEKED",c="IDLE"},t77h:function(e,t,n){"use strict";n.d(t,"b",(function(){return a})),n.d(t,"a",(function(){return r}));function a(e,t=null){const n=Object.assign({},e.params);let a=e.name;return t?(n.lang=t,a=e.meta.lang?e.name:e.name+"_with_lang"):(delete n.lang,a=e.meta.lang?e.name.replace("_with_lang",""):e.name),{name:a,params:n,query:e.query,hash:e.hash}}function r(e){const t=e.map(e=>({...e,path:"/:lang"+e.path,name:e.name+"_with_lang",meta:{lang:!0},pathToRegexpOptions:{strict:!0}}));return e.concat(t)}},uMKe:function(e,t,n){"use strict";function a(){return new Promise((e,t)=>{let n=!1,a=document.createElement("div");a.innerHTML=" ",a.className="adsbox",document.body.appendChild(a),setTimeout((function(){0===a.offsetHeight&&(n=!0),a.remove(),e(n)}),100)})}n.d(t,"a",(function(){return a}))},wVwO:function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var a=n("t77h");function r(e,t,n,r,s){const i=[];for(const o in e){const e=Object(a.b)(t,o),l=r+n.resolve(e).href.replace("#","");i.push({rel:"alternate",hreflang:o,href:l}),o==s&&i.push({rel:"canonical",hreflang:o,href:l})}return i}},yAdz:function(e,t,n){"use strict";var a=n("WToM"),r=n("angx");Object.assign(MediaElementPlayer.prototype,{async builderror(e,t,n){this.options.store;e.errorLayer=document.createElement("div"),e.errorLayer.className=`${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}error`;const s=document.createElement("div");e.errorLayer.appendChild(s),e.errorLayer.style.width="100%",e.errorLayer.style.height="100%",e.errorLayer.style.display="none";const i=n.querySelector(`.${this.options.classPrefix}overlay-play`);e.media.addEventListener("error",(function(t){e.errorLayer.style.display=""})),n.insertBefore(e.errorLayer,i),r.a.buildVue({el:s,render:e=>e(a.a)})}})},"yK/g":function(e,t,n){"use strict";t.a=function(e,t,n){const a=[];let r=null,s=null;for(const t of e)null!=s?t.position-1!=s.position?(null!=r&&a.push(r),r={start:t.position,end:t.position+1}):null!=r&&(r.end=t.position+1):r={start:t.position,end:t.position+1},s=t;null!=r&&a.push(r);for(const e in a)a[e]={start:a[e].start/t*n,end:a[e].end/t*n};return a}}}]); +//# sourceMappingURL=async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js.map \ No newline at end of file diff --git a/ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js.gz b/ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..a3d036b8bff1705af59a30b3664edd284f7c3e99 GIT binary patch literal 21639 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 {\n if (window.__webtorInjected) return resolve();\n debug('wait for initialization');\n window.addEventListener('message', (event) => {\n if (event.source != window)\n return;\n\n if (event.data.webtorInjected) return resolve();\n });\n });\n }\n async fetch(downloadId) {\n await this.init();\n debug('request downloadId=%d', downloadId);\n return new Promise((resolve, reject) => {\n window.addEventListener('message', (event) => {\n if (event.source != window)\n return;\n\n if (event.data.torrent) {\n const ab = new Uint8Array(event.data.torrent.data);\n const buffer = new Buffer(ab.byteLength);\n const view = new Uint8Array(ab);\n for (let i = 0; i < buffer.length; ++i) {\n buffer[i] = view[i];\n }\n try {\n const torrent = parseTorrent(buffer);\n debug('resolve torrent infoHash=%s', torrent.infoHash);\n resolve(torrent);\n } catch (e) {\n reject(e);\n }\n }\n });\n window.postMessage({downloadId}, '*');\n });\n }\n}\nexport function createExt() {\n return new Ext();\n}\n","// import registry from '../registry';\nObject.assign(MediaElementPlayer.prototype, {\n async buildlogo(player, controls, layers) {\n // const store = this.options.store;\n // let {getters, dispatch} = store;\n const route = this.options.route;\n const logoButton = document.createElement('div');\n logoButton.className = `${this.options.classPrefix}button ${this.options.classPrefix}logo-button`;\n logoButton.innerHTML =\n `download atwebtor`;\n player.container.appendChild(logoButton);\n },\n})","import Browse from '../../components/App/Show/Player/MediaElement/Browse.vue';\n\nimport registry from '../registry';\n\nObject.assign(MediaElementPlayer.prototype, {\n async buildbrowse(player, controls, layers) {\n const store = this.options.store;\n let {state, getters, dispatch} = store;\n if (getters.currentVideoFiles.length < 2) return;\n player.browseLayer = document.createElement('div');\n player.browseLayer.className = `${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}browse`;\n const browseContainer = document.createElement('div');\n player.browseLayer.appendChild(browseContainer);\n player.browseLayer.style.width = '100%';\n player.browseLayer.style.height = '100%';\n const playLayer = layers.querySelector(`.${this.options.classPrefix}overlay-play`);\n\n layers.insertBefore(player.browseLayer, playLayer);\n registry.buildVue({\n el: browseContainer,\n render: (h) => h(Browse, {on: {\n hide() {\n player.browseLayer.style.display = 'none';\n },\n show() {\n player.browseLayer.style.display = '';\n },\n }}),\n });\n player.browseLayer.style.zIndex = 2;\n player.browseLayer.addEventListener('click', function() {\n player.play();\n player.browseLayer.style.display = 'none';\n });\n },\n})","export function analytics({id, appId, appVersion, appName}) {\n const url = 'https://www.googletagmanager.com/gtag/js?id=' + id;\n const s = document.createElement('script');\n s.type = 'text/javascript';\n s.async = true;\n s.src = url;\n document.body.appendChild(s);\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n gtag('config', id);\n};\n","'use strict';\n\nexport default class ChromecastPlayer {\n\n\t/**\n\t *\n\t * @param {cast.framework.RemotePlayer} player\n\t * @param {cast.framework.RemotePlayerController} controller\n\t * @param {MediaElement} media\n\t * @param {Object} options\n\t */\n\tconstructor (player, controller, media, options) {\n\t\tconst t = this;\n\t\tt.player = player;\n\t\tt.controller = controller;\n\t\tt.media = media;\n\t\tt.endedMedia = false;\n\n\t\t// Add event listeners for player changes which may occur outside sender app\n\t\tt.controller.addEventListener(cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED, () => {\n\t\t\tif (t.paused) {\n\t\t\t\tt.pause();\n\t\t\t} else {\n\t\t\t\tt.play();\n\t\t\t}\n\t\t\tt.endedMedia = false;\n\t\t});\n\t\tt.controller.addEventListener(cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED, () => {\n\t\t\tt.setMuted(t.player.isMuted);\n\t\t\tt.volume = 0;\n\t\t});\n\t\tt.controller.addEventListener(cast.framework.RemotePlayerEventType.IS_MEDIA_LOADED_CHANGED, () => {\n\t\t\tconst event = mejs.Utils.createEvent('loadedmetadata', t.media);\n\t\t\tt.media.dispatchEvent(event);\n\t\t});\n\t\tt.controller.addEventListener(cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED, () => {\n\t\t\tt.volume = t.player.volumeLevel;\n\t\t\tconst event = mejs.Utils.createEvent('volumechange', t.media);\n\t\t\tt.media.dispatchEvent(event);\n\t\t});\n\t\tt.controller.addEventListener(cast.framework.RemotePlayerEventType.DURATION_CHANGED, () => {\n\t\t\tconst event = mejs.Utils.createEvent('timeupdate', t.media);\n\t\t\tt.media.dispatchEvent(event);\n\t\t});\n\t\tt.controller.addEventListener(cast.framework.RemotePlayerEventType.CURRENT_TIME_CHANGED, () => {\n\t\t\tconst event = mejs.Utils.createEvent('timeupdate', t.media);\n\t\t\tt.media.dispatchEvent(event);\n\n\t\t\tif (t.getCurrentTime() >= t.getDuration()) {\n\t\t\t\tt.endedMedia = true;\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tconst event = mejs.Utils.createEvent('ended', t.media);\n\t\t\t\t\tt.media.dispatchEvent(event);\n\t\t\t\t}, 50);\n\t\t\t}\n\t\t});\n\t\tt.controller.addEventListener(cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED, () => {\n\t\t\tt.setMuted(t.player.isMuted)\n\t\t});\n\n\t\tt.load();\n\t\treturn t;\n\t}\n\n\tget paused() {\n\t\treturn this.player.isPaused;\n\t}\n\n\tset muted (value) {\n\t\tthis.setMuted(value);\n\t}\n\n\tget muted () {\n\t\treturn this.player.isMuted;\n\t}\n\n\tget ended () {\n\t\treturn this.endedMedia;\n\t}\n\n\tget readyState () {\n\t\treturn this.media.originalNode.readyState;\n\t}\n\n\tset currentTime (value) {\n\t\tthis.setCurrentTime(value);\n\t}\n\n\tget currentTime () {\n\t\treturn this.getCurrentTime();\n\t}\n\n\tget duration () {\n\t\treturn this.getDuration();\n\t}\n\n\tset volume (value) {\n\t\tthis.setVolume(value);\n\t}\n\n\tget volume () {\n\t\treturn this.getVolume();\n\t}\n\n\tset src (src) {\n\t\tthis.setSrc(src);\n\t}\n\n\tget src () {\n\t\treturn this.getSrc();\n\t}\n\n\tgetSrc () {\n\t\treturn this.media.originalNode.src;\n\t}\n\n\tsetSrc (value) {\n\t\tthis.media.originalNode.src = typeof value === 'string' ? value : value[0].src;\n\t\tthis.load();\n\t}\n\n\tsetCurrentTime (value) {\n\t\tthis.player.currentTime = value;\n\t\tthis.controller.seek();\n\t\tconst event = mejs.Utils.createEvent('timeupdate', this.media);\n\t\tthis.media.dispatchEvent(event);\n\t}\n\n\tgetCurrentTime () {\n\t\treturn this.player.currentTime;\n\t}\n\n\tgetOriginalDuration () {\n\t\treturn this.media.getDuration();\n\t}\n\n\tgetDuration () {\n\t\treturn this.getOriginalDuration();\n\t}\n\n\tsetVolume (value) {\n\t\tthis.player.volumeLevel = value;\n\t\tthis.controller.setVolumeLevel();\n\t\tconst event = mejs.Utils.createEvent('volumechange', this.media);\n\t\tthis.media.dispatchEvent(event);\n\t}\n\n\tgetVolume () {\n\t\treturn this.player.volumeLevel;\n\t}\n\n\tplay () {\n\t\tif (this.player.isPaused) {\n\t\t\tthis.controller.playOrPause();\n\t\t\tconst event = mejs.Utils.createEvent('play', this.media);\n\t\t\tthis.media.dispatchEvent(event);\n\t\t}\n\t}\n\n\tpause () {\n\t\tif (!this.player.isPaused) {\n\t\t\tthis.controller.playOrPause();\n\t\t\tconst event = mejs.Utils.createEvent('pause', this.media);\n\t\t\tthis.media.dispatchEvent(event);\n\t\t}\n\t}\n\n\tload () {\n\t\tconst t = this;\n\t\tconst castSession = cast.framework.CastContext.getInstance().getCurrentSession();\n const tracks = [];\n const children = t.media.originalNode.children;\n\n let url = null;\n let type = null;\n\n let counter = 1;\n\n for (let i = 0, total = children.length; i < total; i++) {\n const child = children[i];\n const tag = child.tagName.toLowerCase();\n\n if (tag === 'track' && (child.getAttribute('kind') === 'subtitles' || child.getAttribute('kind') === 'captions')) {\n const el = new chrome.cast.media.Track(counter, chrome.cast.media.TrackType.TEXT);\n el.trackContentId = mejs.Utils.absolutizeUrl(child.getAttribute('src'));\n el.trackContentType = 'text/vtt';\n el.subtype = chrome.cast.media.TextTrackType.SUBTITLES;\n el.name = child.getAttribute('label');\n el.language = child.getAttribute('srclang');\n el.customData = null;\n tracks.push(el);\n counter++;\n }\n if (tag === 'source' && url === null) {\n url = child.getAttribute('src');\n // type = child.getAttribute('type');\n }\n }\n type = 'application/x-mpegurl';\n\n\t\tconst mediaInfo = new chrome.cast.media.MediaInfo(url, type);\n\n mediaInfo.textTrackStyle = new chrome.cast.media.TextTrackStyle();\n mediaInfo.tracks = tracks;\n\n\t\tmediaInfo.metadata = new chrome.cast.media.GenericMediaMetadata();\n\t\tmediaInfo.streamType = chrome.cast.media.StreamType.Live;\n mediaInfo.hlsSegmentFormat = 'ts';\n\t\tmediaInfo.customData = null;\n\t\tmediaInfo.duration = null;\n\t\t// mediaInfo.currentTime = t.isLive ? Infinity : 0;\n\n\t\tif (t.media.originalNode.getAttribute('data-cast-title')) {\n\t\t\tmediaInfo.metadata.title = t.media.originalNode.getAttribute('data-cast-title');\n\t\t}\n\n\t\tif (t.media.originalNode.getAttribute('data-cast-description')) {\n\t\t\tmediaInfo.metadata.subtitle = t.media.originalNode.getAttribute('data-cast-description');\n\t\t}\n\n\t\tif (t.media.originalNode.getAttribute('poster') || t.media.originalNode.getAttribute('data-cast-poster')) {\n\t\t\tconst poster = t.media.originalNode.getAttribute('poster') || t.media.originalNode.getAttribute('data-cast-poster');\n\t\t\tmediaInfo.metadata.images = [\n\t\t\t\t{'url': mejs.Utils.absolutizeUrl(poster)}\n\t\t\t];\n\t\t}\n\n\t\tconst request = new chrome.cast.media.LoadRequest(mediaInfo);\n\n\t\tcastSession.loadMedia(request).then(() => {\n\t\t\t// Autoplay media in the current position\n\t\t\tconst currentTime = t.media.originalNode.currentTime;\n\t\t\tt.setCurrentTime(currentTime);\n\t\t\tt.play();\n\t\t\tif (tracks.length > 0) {\n\t\t\t\tconst tracksInfo = new chrome.cast.media.EditTracksInfoRequest([1]);\n\t\t\t\tcastSession.getMediaSession().editTracksInfo(tracksInfo, () => {\n\t\t\t\t}, (e) => {\n\t\t\t\t\tconsole.error(e);\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst event = mejs.Utils.createEvent('play', t.media);\n\t\t\tt.media.dispatchEvent(event);\n\t\t}, (error) => {\n console.log(error);\n\t\t\tt._getErrorMessage(error);\n\t\t});\n\t}\n\n\tsetMuted (value) {\n\t\tif (value === true && !this.player.isMuted) {\n\t\t\tthis.controller.muteOrUnmute();\n\t\t} else if (value === false && this.player.isMuted) {\n\t\t\tthis.controller.muteOrUnmute();\n\t\t}\n\t\tsetTimeout(() => {\n\t\t\tconst event = mejs.Utils.createEvent('volumechange', this.media);\n\t\t\tthis.media.dispatchEvent(event);\n\t\t}, 50);\n\t}\n\n\t_getErrorMessage (error) {\n\n\t\tconst description = error.description ? ` : ${error.description}` : '.';\n\n\t\tlet message;\n\n\t\tswitch (error.code) {\n\t\t\tcase chrome.cast.ErrorCode.API_NOT_INITIALIZED:\n\t\t\t\tmessage = `The API is not initialized${description}`;\n\t\t\t\tbreak;\n\t\t\tcase chrome.cast.ErrorCode.CANCEL:\n\t\t\t\tmessage = `The operation was canceled by the user${description}`;\n\t\t\t\tbreak;\n\t\t\tcase chrome.cast.ErrorCode.CHANNEL_ERROR:\n\t\t\t\tmessage = `A channel to the receiver is not available${description}`;\n\t\t\t\tbreak;\n\t\t\tcase chrome.cast.ErrorCode.EXTENSION_MISSING:\n\t\t\t\tmessage = `The Cast extension is not available${description}`;\n\t\t\t\tbreak;\n\t\t\tcase chrome.cast.ErrorCode.INVALID_PARAMETER:\n\t\t\t\tmessage = `The parameters to the operation were not valid${description}`;\n\t\t\t\tbreak;\n\t\t\tcase chrome.cast.ErrorCode.RECEIVER_UNAVAILABLE:\n\t\t\t\tmessage = `No receiver was compatible with the session request${description}`;\n\t\t\t\tbreak;\n\t\t\tcase chrome.cast.ErrorCode.SESSION_ERROR:\n\t\t\t\tmessage = `A session could not be created, or a session was invalid${description}`;\n\t\t\t\tbreak;\n\t\t\tcase chrome.cast.ErrorCode.TIMEOUT:\n\t\t\t\tmessage = `The operation timed out${description}`;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tmessage = `Unknown error: ${error}`;\n\t\t\t\tbreak;\n\t\t}\n\n\t\tconsole.error(message);\n\t}\n}\n\nwindow.ChromecastPlayer = ChromecastPlayer;","import ChromecastPlayer from './chromecast/player';\nObject.assign(MediaElementPlayer.prototype, {\n async buildchromecast(player, controls, layers) {\n const t = this;\n window['__onGCastApiAvailable'] = function(isAvailable) {\n if (isAvailable) {\n t._initializeCastPlayer();\n }\n };\n if (window.cast) {\n t._initializeCastPlayer();\n } else {\n const s = document.createElement('script');\n s.type = 'text/javascript';\n s.src = 'https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1';\n document.body.appendChild(s);\n }\n player.castButton = document.createElement('div');\n\t\tplayer.castButton.className = `${t.options.classPrefix}button ${t.options.classPrefix}cast-button`;\n\t\tplayer.castButton.innerHTML =\n\t\t\t``;\n player.container.appendChild(player.castButton);\n },\n\t/**\n\t *\n\t * @private\n\t */\n _initializeCastPlayer () {\n\t\tconst t = this;\n\n\t\tconst\n\t\t\tcontext = cast.framework.CastContext.getInstance(),\n\t\t\tsession = context.getCurrentSession()\n\t\t;\n\n context.setOptions({\n receiverApplicationId: chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,\n autoJoinPolicy: chrome.cast.AutoJoinPolicy.PAGE_SCOPED,\n androidReceiverCompatible: true,\n });\n\n\t\tt.remotePlayer = new cast.framework.RemotePlayer();\n\t\tt.remotePlayerController = new cast.framework.RemotePlayerController(t.remotePlayer);\n\t\tt.remotePlayerController.addEventListener(cast.framework.RemotePlayerEventType.IS_CONNECTED_CHANGED, t._switchToCastPlayer.bind(this));\n\n\t\tif (session) {\n\t\t\tsession.endSession(true);\n\t\t\t// t._switchToCastPlayer();\n\t\t}\n\t},\n\n\t/**\n\t *\n\t * @private\n\t */\n\t_switchToCastPlayer () {\n\t\tconst t = this;\n\n\t\tif (t.proxy) {\n\t\t\tt.proxy.pause();\n\t\t}\n\t\tif (cast && cast.framework) {\n\t\t\tif (t.remotePlayer.isConnected) {\n\t\t\t\tt._setupCastPlayer();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tt._setDefaultPlayer();\n\t},\n\t/**\n\t *\n\t * @private\n\t */\n\t_setupCastPlayer () {\n\t\tconst\n\t\t\tt = this,\n\t\t\tcontext = cast.framework.CastContext.getInstance(),\n\t\t\tcastSession = context.getCurrentSession()\n\t\t;\n\n\t\tif (t.loadedChromecast === true) {\n\t\t\treturn;\n\t\t}\n\n\t\tt.loadedChromecast = true;\n\n\t\tt.proxy = new ChromecastPlayer(t.remotePlayer, t.remotePlayerController, t.media, t.options);\n\n\t\t// If no Cast was setup correctly, make sure it is\n\t\tt.media.addEventListener('loadedmetadata', () => {\n\t\t\tif (['SESSION_ENDING', 'SESSION_ENDED', 'NO_SESSION'].indexOf(castSession.getSessionState()) === -1 &&\n\t\t\t\tt.proxy instanceof DefaultPlayer) {\n\t\t\t\tt.proxy.pause();\n\t\t\t\tt.proxy = new ChromecastPlayer(t.remotePlayer, t.remotePlayerController, t.media, t.options);\n\t\t\t}\n\t\t});\n\n\t\tt.media.addEventListener('timeupdate', () => {\n\t\t\tt.currentMediaTime = t.getCurrentTime();\n\t\t});\n\t}\n})","module.exports = \"

        YOURSITE respects the intellectual property of others. YOURSITE takes matters of Intellectual Property very seriously and is committed to meeting the needs of content owners while helping them manage publication of their content online.

        \\n

        It should be noted that YOURSITE is a simple search engine of videos available at a wide variety websites.\\nIf you believe that your copyrighted work has been copied in a way that constitutes copyright infringement and is accessible on this site, you may notify our copyright agent, as set forth in the Digital Millennium Copyright Act of 1998 (DMCA). For your complaint to be valid under the DMCA, you must provide the following information when providing notice of the claimed copyright infringement:

        \\n

        A physical or electronic signature of a person authorized to act on behalf of the copyright owner Identification of the copyrighted work claimed to have been infringed\\nIdentification of the material that is claimed to be infringing or to be the subject of the infringing activity and that is to be removed\\nInformation reasonably sufficient to permit the service provider to contact the complaining party, such as an address, telephone number, and, if available, an electronic mail address\\nA statement that the complaining party "in good faith believes that use of the material in the manner complained of is not authorized by the copyright owner, its agent, or law"\\nA statement that the "information in the notification is accurate", and "under penalty of perjury, the complaining party is authorized to act on behalf of the owner of an exclusive right that is allegedly infringed"\\nThe above information must be submitted as a written, faxed or emailed notification to the following Designated Agent:

        \\n

        Attn: DMCA Office

        \\n

        Contact Us : http://www.watchdogsecurity.online

        \\n

        WE CAUTION YOU THAT UNDER FEDERAL LAW, IF YOU KNOWINGLY MISREPRESENT THAT ONLINE MATERIAL IS INFRINGING, YOU MAY BE SUBJECT TO HEAVY CIVIL PENALTIES. THESE INCLUDE MONETARY DAMAGES, COURT COSTS, AND ATTORNEYS FEES INCURRED BY US, BY ANY COPYRIGHT OWNER, OR BY ANY COPYRIGHT OWNER'S LICENSEE THAT IS INJURED AS A RESULT OF OUR RELYING UPON YOUR MISREPRESENTATION. YOU MAY ALSO BE SUBJECT TO CRIMINAL PROSECUTION FOR PERJURY.

        \\n

        This information should not be construed as legal advice, for further details on the information required for valid DMCA notifications, see 17 U.S.C. 512(c)(3).

        \\n\";","import Settings from '../../components/App/Show/Player/MediaElement/Embed.vue';\nimport registry from '../registry';\nObject.assign(MediaElementPlayer.prototype, {\n async buildembed(player, controls, layers) {\n // const store = this.options.store;\n // let {getters, dispatch} = store;\n player.embedButton = document.createElement('div');\n player.embedButton.className = `${this.options.classPrefix}button ${this.options.classPrefix}embed-button`;\n player.embedButton.innerHTML =\n ``;\n this.addControlElement(player.embedButton, 'embed');\n player.embedLayer = document.createElement('div');\n player.embedLayer.className = `${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}embed`;\n const embedContainer = document.createElement('div');\n player.embedLayer.appendChild(embedContainer);\n const playLayer = layers.querySelector(`.${this.options.classPrefix}overlay-play`);\n // playLayer.style.display = 'none';\n\n layers.insertBefore(player.embedLayer, playLayer);\n player.embedLayer.style.width = '100%';\n player.embedLayer.style.height = '100%';\n let toggle = false;\n const t = () => {\n if (toggle) {\n player.embedLayer.style.display = 'none';\n } else {\n player.embedLayer.style.display = '';\n }\n toggle = !toggle;\n }\n registry.buildVue({\n el: embedContainer,\n render: (h) => h(Settings, {on: {\n close: t,\n }}),\n });\n player.embedLayer.style.display = 'none';\n player.embedLayer.style.zIndex = 2;\n player.embedButton.addEventListener('click', t);\n },\n})","export const SET_TORRENT_SUCCESS = 'SET_TORRENT_SUCCESS';\nexport const SET_PWD_SUCCESS = 'SET_PWD_SUCCESS';\nexport const SET_FILE_SUCCESS = 'SET_FILE_SUCCESS';\nexport const SET_SOURCE = 'SET_SOURCE';\nexport const SET_PLAYER_STATUS_SUCCESS = 'SET_PLAYER_STATUS_SUCCESS';\nexport const SET_PLAYER_FILE_PATH_SUCCESS = 'SET_PLAYER_FILE_PATH_SUCCESS';\nexport const SET_PLAYER_SOURCE_URL_SUCCESS = 'SET_PLAYER_SOURCE_URL_SUCCESS';\nexport const SET_TORRENT_FAILURE = 'SET_TORRENT_FAILURE';\nexport const CLEAR_TORRENT_LOAD_ERROR = 'CLEAR_TORRENT_LOAD_ERROR';\nexport const SET_STAT_SUCCESS = 'SET_STAT_SUCCESS';\nexport const SET_LOAD_STATE = 'SET_LOAD_STATE';\nexport const SET_LOAD_STATE_SUCCESS = 'SET_LOAD_STATE_SUCCESS';\nexport const SET_LOAD_STATE_FAILURE = 'SET_LOAD_STATE_FAILURE';\nexport const SET_DELIVERY_FAILURE = 'SET_DELIVERY_FAILURE';\nexport const CLEAR_DELIVERY_FAILURE = 'CLEAR_DELIVERY_FAILURE';\nexport const SET_DELIVERY_TOKEN = 'SET_DELIVERY_TOKEN';\nexport const SET_DOWNLOAD_ID = 'SET_DOWNLOAD_ID';\nexport const SET_LANG = 'SET_LANG';\nexport const SET_USER_LANG = 'SET_USER_LANG';\nexport const SET_ABUSED = 'SET_ABUSED';\nexport const SET_MEDIA_INFO = 'SET_MEDIA_INFO';\nexport const SET_PLAYER_TIME = 'SET_PLAYER_TIME';\nexport const SET_CURRENT_DIR_FILE_STATES = 'SET_CURRENT_DIR_FILE_STATES';\nexport const SET_FILE_STATE = 'SET_FILE_STATE';\nexport const SET_RECENT_TORRENTS = 'SET_RECENT_TORRENTS';\nexport const SET_RECENT_TORRENT = 'SET_RECENT_TORRENT';\nexport const SET_AUDIO_SETTING = 'SET_AUDIO_SETTING';\nexport const SET_SUBTITLE_SETTING = 'SET_SUBTITLE_SETTING';\nexport const DROP_AUDIO_SETTING = 'DROP_AUDIO_SETTING';\nexport const DROP_SUBTITLE_SETTING = 'DROP_SUBTITLE_SETTING';\nexport const SET_ACTION = 'SET_ACTION';\nexport const SET_DOWNLOAD_PATH = 'SET_DOWNLOAD_PATH';\nexport const SET_ADBLOCK_ENABLED = 'SET_ADBLOCK_ENABLED';\nexport const SET_VIEW_MODE = 'SET_VIEW_MODE';\nexport const SET_THEME = 'SET_THEME';\nexport const SET_ID = 'SET_ID';\nexport const SET_EXTERNAL_FEATURES = 'SET_EXTERNAL_FEATURES';\nexport const SET_EXTERNAL_SUBTITLES = 'SET_EXTERNAL_SUBTITLES';\nexport const SET_ATTACHED_TRACKS = 'SET_ATTACHED_TRACKS';\nexport const SET_EXTERNAL_POSTER = 'SET_EXTERNAL_POSTER';\nexport const SET_EXTERNAL_CONTROLS = 'SET_EXTERNAL_CONTROLS';\nexport const SET_AUTOPLAY = 'SET_AUTOPLAY';\nexport const SET_CAPTION = 'SET_CAPTION';\nexport const SET_PLAYER_CONTROLS_SHOWN = 'SET_PLAYER_CONTROLS_SHOWN';\nexport const SET_PLAYER_FULLSCREEN = 'SET_PLAYER_FULLSCREEN';\nexport const SET_HEADER = 'SET_HEADER';\nexport const SET_EXTERNAL_TITLE = 'SET_EXTERNAL_TITLE';\nexport const SET_WIDTH = 'SET_WIDTH';\nexport const SET_HEIGHT = 'SET_HEIGHT';\nexport const SET_IMDBID = 'SET_IMDBID';\nexport const SET_COMPLETED_PIECES = 'SET_COMPLETED_PIECES';\nexport const CHANGE_CAPTION_SIZE = 'SET_CAPTION_SIZE';\nexport const SET_USER_SETTINGS = 'SET_USER_SETTINGS';\nexport const SET_ADS_INJECTED = 'SET_ADS_INJECTED';\nexport const SET_PLAYER_NATIVE_FULLSCREEN = 'SET_PLAYER_NATIVE_FULLSCREEN';\nexport const SET_NEW_POSITION = 'SET_NEW_POSITION';\nexport const SET_SEEDER = 'SET_SEEDER';\nexport const SET_ZIP_DOWNLOAD = 'SET_ZIP_DOWNLOAD';\nexport const SET_LAST_TIME = 'SET_LAST_TIME';\nexport const SET_FIRST_PLAY = 'SET_FIRST_PLAY';\nexport const SET_IS_CACHED = 'SET_IS_CACHED';\nexport const SET_NAME = 'SET_NAME';\nexport const SET_DOWNLOAD_STAT = 'SET_DOWNLOAD_STAT';\nexport const DROP_DOWNLOAD_STAT = 'DROP_DOWNLOAD_STAT';\nexport const SET_DOWNLOAD_TYPE = 'SET_DOWNLOAD_TYPE';\nexport const UPDATE_WINDOW_WIDTH = 'UPDATE_WINDOW_WIDTH';\nexport const SET_INITED = 'SET_INITED';\nexport const SET_PROGRESS = 'SET_PROGRESS';\nexport const SET_API_UNREACHABLE = 'SET_API_UNREACHABLE';\n","import Continue from '../../components/App/Show/Player/MediaElement/Continue.vue';\n\nimport registry from '../registry';\n\nObject.assign(MediaElementPlayer.prototype, {\n async buildcontinue(player, controls, layers) {\n const store = this.options.store;\n let {state, getters, dispatch} = store;\n if (state.time <= 60) {\n player.currentTime = 0;\n return;\n }\n const time = state.time; \n const play = player.play;\n let lock = true;\n player.play = () => {\n if (!lock) {\n play.apply(player);\n }\n }\n player.pause();\n player.continueLayer = document.createElement('div');\n player.continueLayer.className = `${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}continue`;\n const continueContainer = document.createElement('div');\n player.continueLayer.appendChild(continueContainer);\n const playLayer = layers.querySelector(`.${this.options.classPrefix}overlay-play`);\n\n layers.insertBefore(player.continueLayer, playLayer);\n // playLayer.style.display = 'none';\n // let toggle = false;\n function hideAndPlay() {\n lock = false;\n player.play();\n player.continueLayer.style.display = 'none';\n }\n function restartWatch() {\n if (!player) return;\n player.currentTime = 0;\n hideAndPlay();\n }\n function continueWatch() {\n player.currentTime = time - 5;\n hideAndPlay();\n }\n registry.buildVue({\n el: continueContainer,\n render: (h) => h(Continue, {\n on: {\n continueWatch,\n restartWatch,\n },\n props: {\n time,\n },\n }),\n });\n player.continueLayer.style.zIndex = 2;\n playLayer.style.display = 'none';\n },\n})","import Tracks from '../../components/App/Show/Player/MediaElement/Tracks.vue';\n\nimport registry from '../registry';\n\nObject.assign(MediaElementPlayer.prototype, {\n async buildadvancedtracks(player, controls, layers) {\n player.tracksButton = document.createElement('div');\n\t\tplayer.tracksButton.className = `${this.options.classPrefix}button ${this.options.classPrefix}captions-button`;\n\t\tplayer.tracksButton.innerHTML =\n\t\t\t``;\n\t\tthis.addControlElement(player.tracksButton, 'tracks');\n player.tracksLayer = document.createElement('div');\n player.tracksLayer.className = `${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}tracks`;\n const tracksContainer = document.createElement('div');\n player.tracksLayer.appendChild(tracksContainer);\n const playLayer = layers.querySelector(`.${this.options.classPrefix}overlay-play`);\n // playLayer.style.display = 'none';\n\n layers.insertBefore(player.tracksLayer, playLayer);\n player.tracksLayer.style.width = '100%';\n player.tracksLayer.style.height = '100%';\n let toggle = false;\n const t = () => {\n if (toggle) {\n player.tracksLayer.style.display = 'none';\n } else {\n player.tracksLayer.style.display = '';\n }\n toggle = !toggle;\n }\n const show = () => {\n player.tracksLayer.style.display = '';\n toggle = true;\n }\n const close = () => {\n player.tracksLayer.style.display = 'none';\n toggle = false;\n }\n const v = registry.buildVue({\n el: tracksContainer,\n render: (h) => h(Tracks, {\n props: {\n player: player,\n },\n on: {\n close,\n show,\n }\n }),\n });\n player.tracksLayer.style.display = 'none';\n player.tracksLayer.style.zIndex = 2;\n player.tracksButton.addEventListener('click', t);\n\n },\n})","import Captions from '../../components/App/Show/Player/MediaElement/Tracks/Captions.vue';\n\nimport registry from '../registry';\n\nObject.assign(MediaElementPlayer.prototype, {\n async buildcaptions(player, controls, layers) {\n\t\tplayer.captionsLayer = document.createElement('div');\n\t\tplayer.captionsLayer.className = `${this.options.classPrefix}captions-layer ${this.options.classPrefix}layer`;\n const captionsContainer = document.createElement('div');\n player.captionsLayer.appendChild(captionsContainer);\n\t\tlayers.insertBefore(player.captionsLayer, layers.firstChild);\n player.captionsLayer.style.width = '100%';\n player.captionsLayer.style.height = '100%';\n player.captionsLayer.addEventListener('click', function() {\n player.pause();\n });\n registry.buildVue({\n el: captionsContainer,\n render: (h) => h(Captions),\n });\n },\n})","const debug = require('debug')('webtor:lib:captions');\nimport throttle from 'lodash/throttle';\nconst debugFetch = function(url) {\n debug('fetch caption url=%o', url);\n return fetch(url);\n}\nconst retryFetch = require('fetch-retry')(debugFetch, {\n retries: 5,\n retryDelay: function(attempt, error, response) {\n return Math.pow(2, attempt) * 1000;\n },\n retryOn: function(attempt, error, response) {\n if (error !== null || response.status >= 500) {\n debug('got captions error retry count=%o', attempt);\n return true;\n }\n },\n});\nasync function getHLSFragments(srcUrl) {\n const res = await(retryFetch(srcUrl));\n const src = await res.text();\n const parentUrl = srcUrl.substring(0, srcUrl.lastIndexOf( \"/\" ) + 1);\n const fragments = [];\n const lines = src.split(\"\\n\");\n let current = 0;\n let num = 0;\n let fragment = {};\n let ended = false;\n for (const l of lines) {\n const m = l.match('#EXTINF:([0-9\\.]+),');\n if (l == '#EXT-X-ENDLIST') {\n ended = true;\n }\n if (m) {\n fragment.num = num;\n fragment.length = parseFloat(m[1]);\n num++;\n }\n if (l.match('^[^#]')) {\n fragment.name = l;\n fragment.src = parentUrl + fragment.name;\n }\n if (fragment.name !== undefined) {\n fragments.push(fragment);\n fragment.content = function(f) {\n let prom = null;\n return function() {\n if (prom === null) {\n prom = new Promise(async function(resolve, reject) {\n const res = await(retryFetch(f.src));\n const src = await res.text();\n resolve(src);\n });\n }\n return prom;\n }\n }(fragment);\n fragment = {start: current};\n }\n }\n return {fragments, ended};\n}\n\nfunction convertSMPTEtoSeconds(SMPTE) {\n\n\tif (typeof SMPTE !== 'string') {\n\t\tthrow new TypeError('Argument must be a string value');\n\t}\n\n\tSMPTE = SMPTE.replace(',', '.');\n\n\tconst decimalLen = ~SMPTE.indexOf('.') ? SMPTE.split('.')[1].length : 0;\n\n\tlet\n\t\tsecs = 0,\n\t\tmultiplier = 1\n\t;\n\n\tSMPTE = SMPTE.split(':').reverse();\n\n\tfor (let i = 0, total = SMPTE.length; i < total; i++) {\n\t\tmultiplier = 1;\n\t\tif (i > 0) {\n\t\t\tmultiplier = Math.pow(60, i);\n\t\t}\n\t\tsecs += Number(SMPTE[i]) * multiplier;\n\t}\n\treturn Number(secs.toFixed(decimalLen));\n}\n\nfunction parseDFXP(trackText) {\n trackText = $(trackText).filter('tt');\n const\n container = trackText.firstChild,\n lines = container.querySelectorAll('p'),\n styleNode = trackText.getElementById(`${container.attr('style')}`),\n entries = []\n ;\n\n let styles;\n\n if (styleNode.length) {\n styleNode.removeAttribute('id');\n const attributes = styleNode.attributes;\n if (attributes.length) {\n styles = {};\n for (let i = 0, total = attributes.length; i < total; i++) {\n styles[attributes[i].name.split(\":\")[1]] = attributes[i].value;\n }\n }\n }\n\n for (let i = 0, total = lines.length; i < total; i++) {\n let\n style,\n _temp = {\n start: null,\n stop: null,\n style: null,\n text: null\n }\n ;\n\n if (lines.eq(i).attr('begin')) {\n _temp.start = convertSMPTEtoSeconds(lines.eq(i).attr('begin'));\n }\n if (!_temp.start && lines.eq(i - 1).attr('end')) {\n _temp.start = convertSMPTEtoSeconds(lines.eq(i - 1).attr('end'));\n }\n if (lines.eq(i).attr('end')) {\n _temp.stop = convertSMPTEtoSeconds(lines.eq(i).attr('end'));\n }\n if (!_temp.stop && lines.eq(i + 1).attr('begin')) {\n _temp.stop = convertSMPTEtoSeconds(lines.eq(i + 1).attr('begin'));\n }\n\n if (styles) {\n style = '';\n for (let _style in styles) {\n style += `${_style}:${styles[_style]};`;\n }\n }\n if (style) {\n _temp.style = style;\n }\n if (_temp.start === 0) {\n _temp.start = 0.200;\n }\n _temp.text = lines.eq(i).innerHTML.trim().replace(/(\\b(https?|ftp|file):\\/\\/[-A-Z0-9+&@#\\/%?=~_|!:,.;]*[-A-Z0-9+&@#\\/%=~_|])/ig, \"$1\");\n entries.push(_temp);\n }\n return entries;\n}\n\nfunction parseWebVTT(trackText) {\n const\n lines = trackText.split(/\\r?\\n/),\n entries = [],\n pattern = /^((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{1,3})?) --\\> ((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{3})?)(.*)$/\n ;\n let\n timecode,\n text,\n identifier\n ;\n\n for (let i = 0, total = lines.length; i < total; i++) {\n timecode = pattern.exec(lines[i]);\n\n if (timecode && i < lines.length) {\n if ((i - 1) >= 0 && lines[i - 1] !== '') {\n identifier = lines[i - 1];\n }\n i++;\n // grab all the (possibly multi-line) text that follows\n text = lines[i];\n i++;\n while (lines[i] !== '' && i < lines.length) {\n text = `${text}\\n${lines[i]}`;\n i++;\n }\n text = text.trim().replace(/(\\b(https?|ftp|file):\\/\\/[-A-Z0-9+&@#\\/%?=~_|!:,.;]*[-A-Z0-9+&@#\\/%=~_|])/ig, \"$1\");\n entries.push({\n identifier: identifier,\n start: (convertSMPTEtoSeconds(timecode[1]) === 0) ? 0.200 : convertSMPTEtoSeconds(timecode[1]),\n stop: convertSMPTEtoSeconds(timecode[3]),\n text: text,\n settings: timecode[5]\n });\n }\n identifier = '';\n }\n return entries;\n}\n\nfunction parse(str) {\n return typeof str === 'string' && (/` tags first\n const scripts = div.getElementsByTagName('script');\n let i = scripts.length;\n while (i--) {\n scripts[i].remove();\n }\n\n // Loop the elements and remove anything that contains value=\"javascript:\" or an `on*` attribute\n // (`onerror`, `onclick`, etc.)\n const allElements = div.getElementsByTagName('*');\n for (let i = 0, n = allElements.length; i < n; i++) {\n const\n attributesObj = allElements[i].attributes,\n attributes = Array.prototype.slice.call(attributesObj)\n ;\n\n for (let j = 0, total = attributes.length; j < total; j++) {\n if (attributes[j].name.startsWith('on') || attributes[j].value.startsWith('javascript')) {\n allElements[i].remove();\n } else if (attributes[j].name === 'style') {\n allElements[i].removeAttribute(attributes[j].name);\n }\n }\n\n }\n return div.innerHTML;\n}\n\nfunction isDataURI(url) {\n return url.match(/^data:(?:.+?\\/.+?)?(?:;.+?=.+?)*(?:;base64)?,.*$/);\n}\nfunction b64DecodeUnicode(str) {\n // Going backwards: from bytestream, to percent-encoding, to original string.\n return decodeURIComponent(atob(str).split('').map(function(c) {\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);\n }).join(''));\n}\n\nfunction searchTrackPosition(tracks, currentTime) {\n let\n lo = 0,\n hi = tracks.length - 1,\n mid,\n start,\n stop\n ;\n\n while (lo <= hi) {\n mid = ((lo + hi) >> 1);\n start = tracks[mid].start;\n stop = tracks[mid].stop;\n\n if (currentTime >= start && currentTime < stop) {\n return mid;\n } else if (start < currentTime) {\n lo = mid + 1;\n } else if (start > currentTime) {\n hi = mid - 1;\n }\n }\n\n return -1;\n}\n\nclass BasicSource {\n constructor(src) {\n this.entries = parse(src);\n }\n getEntry(time) {\n const i = searchTrackPosition(this.entries, time)\n if (i > -1) return this.entries[i];\n return null;\n }\n}\n\nclass HLSSource {\n constructor(src) {\n this.src = src;\n this.fragments = [];\n this.fetching = false;\n this.ended = false;\n this.entries = [];\n this.entriesByFragment = [];\n this.lastTime = 0;\n this.lastIndex = 0;\n this.lookAhead = 60*5;\n this.getHLSFragments = throttle(getHLSFragments, 5000, {\n trailing: false,\n });\n }\n findFragment(time) {\n for (const f of this.fragments) {\n if (time > f.start && time < f.end) {\n return f;\n }\n }\n }\n async importEntries(f) {\n if (f.num in this.entriesByFragment) return;\n const c = await f.content();\n const entries = parse(c);\n this.entriesByFragment[f.num] = entries;\n if (entries.length == 0) return;\n let temp = [];\n for (const e of this.entriesByFragment) {\n if (e) temp = temp.concat(e);\n }\n this.entries = temp;\n }\n async preload(time) {\n let i;\n for (i = this.lastIndex; i < this.fragments.length && this.lastTime < time + this.lookAhead; i++) {\n await this.importEntries(this.fragments[i]);\n this.lastTime = this.entries.slice(-1)[0].start;\n }\n this.lastIndex = i;\n }\n async loadFragments(time) {\n if (this.lastTime >= time + this.lookAhead) return;\n if (!this.ended) {\n const {fragments, ended} = await this.getHLSFragments(this.src);\n this.fragments = fragments;\n this.ended = ended;\n }\n await this.preload(time);\n }\n async getEntry(time) {\n this.loadFragments(time);\n const i = searchTrackPosition(this.entries, time)\n if (i > -1) return this.entries[i];\n return null;\n }\n}\n\nfunction makeBasicSource(src) {\n return new BasicSource(src);\n}\n\nfunction makeHLSSource(src) {\n return new HLSSource(src);\n}\n\nasync function getCaptionSource(src) {\n if (!src) {\n return null;\n } else if (isDataURI(src)) {\n return makeBasicSource(b64DecodeUnicode(src.split(',')[1]));\n } else if (src.match(/\\.(srt|vtt)/)) {\n const res = await(retryFetch(src));\n const data = await res.text();\n return makeBasicSource(data);\n } else if (src.match(/\\.m3u8/)) {\n return makeHLSSource(src);\n }\n}\n\nexport {getCaptionSource, sanitize};","import AvailabeProgress from '../../components/App/Show/Player/MediaElement/AvailabeProgress.vue';\n\nimport registry from '../registry';\n\nObject.assign(MediaElementPlayer.prototype, {\n async buildavailableprogress(player, controls, layers) {\n const store = this.options.store;\n const slider = player.slider;\n const el = document.createElement('span');\n // el.className = `${this.options.classPrefix}time-available`;\n slider.appendChild(el);\n // player.errorLayer = document.createElement('div');\n // player.errorLayer.className = `${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}error`;\n // const errorContainer = document.createElement('div');\n // player.errorLayer.appendChild(errorContainer);\n // player.errorLayer.style.width = '100%';\n // player.errorLayer.style.height = '100%';\n // player.errorLayer.style.display = 'none';\n // const playLayer = layers.querySelector(`.${this.options.classPrefix}overlay-play`);\n // player.media.addEventListener('error', function(e) {\n // player.errorLayer.style.display = '';\n // });\n // layers.insertBefore(player.errorLayer, playLayer);\n const self = this;\n registry.buildVue({\n el,\n render: (h) => h(AvailabeProgress, {\n props: {\n options: self.options,\n }\n }),\n });\n },\n})","const registry = {};\nexport default registry;","import Vue from 'vue';\nimport VueRouter from 'vue-router';\nVue.use(VueRouter);\nimport {addLangRoutes} from './langRoutes';\nconst routes = addLangRoutes([\n {path: '/', name: 'intro', component: () => import('../components/App/Intro.vue')},\n {path: '/show', name: 'show', component: () => import('../components/App/Show.vue')},\n {path: '/support', name: 'support', component: () => import('../components/App/Support.vue')},\n {path: '/dmca', name: 'dmca', component: () => import('../components/App/DMCA.vue')},\n {path: '/magnet-to-torrent', name: 'magnet2torrent', component: () => import('../components/App/Tools/Magnet2Torrent.vue')},\n {path: '/torrent-to-magnet', name: 'torrent2magnet', component: () => import('../components/App/Tools/Torrent2Magnet.vue')},\n {path: '/torrent-to-ddl', name: 'torrent2ddl', component: () => import('../components/App/Tools/Torrent2DDL.vue')},\n {path: '/empty', name: 'empty', component: () => import('../components/App/Empty.vue')},\n {path: '/:magnet(magnet\\:.*)', name: 'magnet-uri', component: () => import('../components/App/Show.vue')},\n {path: '/:infohash([0-9a-fA-F]{40})', name: 'infohash', component: () => import('../components/App/Show.vue')},\n]);\n\nexport function createRouter({mode}) {\n return new VueRouter({\n mode,\n routes,\n });\n}\n","const md5 = require('md5');\n\nexport function randomId(prefix = '') {\n return md5(prefix + Date.now().toString());\n}\n\nexport function clean(data) {\n return Object.assign({}, data);\n}\n\nexport function cleanState({name, pwd, file, torrent}) {\n return {\n name,\n pwd,\n file,\n torrent: torrent ? torrent.infoHash : null,\n };\n}\n\nexport function cleanPlayerTrack(track) {\n if (!track || !track.src) return track;\n const res = Object.assign({}, track);\n let href = '';\n if (typeof res.src === 'object') {\n href = res.src.href;\n } else {\n href = res.src;\n }\n res.src = href.split(\"?\")[0];\n return res;\n}\n\nexport function processSubtitles(subs) {\n subs = subs.sort((a, b) => {\n a = a.srclang;\n b = b.srclang;\n if (a > b) return 1;\n if (a < b) return -1;\n return 0;\n });\n let same = [];\n for (const i in subs) {\n if (i == 0) continue;\n if (subs[i].label == subs[i - 1].label) {\n if (same.length == 0) {\n same.push(subs[i - 1]);\n }\n same.push(subs[i]);\n } else {\n if (same.length > 0) {\n for (const y in same) {\n const idx = parseInt(y) + 1;\n same[y].label = same[y].label + ' #' + idx;\n }\n }\n same = [];\n }\n }\n return subs;\n}","import {DEFAULT} from './viewModeTypes';\nimport {IDLE} from './playerStatusTypes';\nimport {randomId} from './helpers';\nexport default function({user, deb, i18n, router, ssr, locales}) {\n return {\n ssr,\n inited: false,\n windowWidth: 0,\n name: null,\n controls: true,\n progress: 0,\n features: {\n p2pProgress: true,\n title: true,\n settings: true,\n fullscreen: true,\n subtitles: true,\n continue: true,\n playpause: true,\n currentTime: true,\n timeline: true,\n duration: true,\n volume: true,\n chromecast: true,\n browse: true,\n download: true,\n captions: true,\n embed: true,\n autoSubtitles: true,\n },\n isCached: false,\n lastTime: null,\n zipDownload: false,\n adsInjected: false,\n completedPieces: [],\n width: null,\n height: null,\n imdbId: null,\n autoplay: false,\n firstPlay: true,\n playerControlsShown: true,\n playerFullScreen: false,\n playerNativeFullScreen: false,\n caption: null,\n captionSize: 0,\n externalSubtitles: [],\n externalPoster: '',\n externalTitle: null,\n header: true,\n adblock: false,\n apiUnreachable: false,\n viewMode: DEFAULT,\n theme: null,\n user,\n version: VERSION,\n subtitle: null,\n time: 0,\n mediaInfo: null,\n debug: deb,\n baseURL: 'https://webtor.io',\n sponsorURL: 'https://www.patreon.com/bePatron?u=24145874',\n authURL: '/auth/patreon',\n userID: randomId(),\n downloadID: null,\n torrent: null,\n file: null,\n downloadPath: null,\n pwd: '/',\n fileHistory: null,\n playerStatus: IDLE,\n playerFilePath: null,\n playerSourceUrl: null,\n wrongFormat: false,\n deliveryFailure: false,\n loadState: false,\n deliveryToken: null,\n abused: false,\n stats: {},\n errors: {},\n source: [],\n loadError: false,\n lang: i18n.locale,\n userLang: locales.length > 0 && locales[0].normalized ? locales[0].normalized : i18n.fallbackLocale,\n fallbackLang: i18n.fallbackLocale,\n currentDirFileState: {},\n recentTorrents: {},\n newPosition: null,\n seeder: null,\n attachedTracks: [],\n downloadStats: {},\n downloadType: null,\n };\n};","export const DEFAULT = 'default';\nexport const VIDEO = 'video';\nexport const DOWNLOAD = 'download';\n","import Vue from 'vue';\nimport {SET_TORRENT_SUCCESS, SET_PWD_SUCCESS,\n SET_FILE_SUCCESS, SET_SOURCE, SET_PLAYER_STATUS_SUCCESS,\n SET_PLAYER_FILE_PATH_SUCCESS, SET_TORRENT_FAILURE,\n CLEAR_TORRENT_LOAD_ERROR, SET_STAT_SUCCESS,\n SET_LOAD_STATE, SET_LOAD_STATE_SUCCESS, SET_DELIVERY_FAILURE,\n CLEAR_DELIVERY_FAILURE, SET_DELIVERY_TOKEN, SET_LOAD_STATE_FAILURE,\n SET_DOWNLOAD_ID, SET_LANG, SET_ABUSED, SET_MEDIA_INFO,\n SET_PLAYER_TIME, SET_CURRENT_DIR_FILE_STATES, SET_FILE_STATE,\n SET_RECENT_TORRENTS, SET_RECENT_TORRENT,\n SET_ADBLOCK_ENABLED, SET_VIEW_MODE, SET_THEME,\n SET_EXTERNAL_SUBTITLES, SET_EXTERNAL_POSTER, SET_AUTOPLAY, SET_CAPTION, SET_PLAYER_CONTROLS_SHOWN,\n SET_PLAYER_FULLSCREEN, SET_HEADER, SET_EXTERNAL_TITLE, SET_HEIGHT, SET_WIDTH, SET_IMDBID,\n SET_COMPLETED_PIECES, CHANGE_CAPTION_SIZE, SET_USER_SETTINGS, SET_PLAYER_SOURCE_URL_SUCCESS,\n SET_ADS_INJECTED, SET_PLAYER_NATIVE_FULLSCREEN, SET_EXTERNAL_FEATURES, SET_EXTERNAL_CONTROLS,\n SET_NEW_POSITION, SET_DOWNLOAD_PATH, SET_SEEDER, SET_ZIP_DOWNLOAD,\n SET_ATTACHED_TRACKS, SET_LAST_TIME, SET_FIRST_PLAY, SET_IS_CACHED, SET_NAME,\n SET_DOWNLOAD_STAT, DROP_DOWNLOAD_STAT, SET_DOWNLOAD_TYPE, UPDATE_WINDOW_WIDTH, SET_INITED, SET_PROGRESS,\n SET_USER_LANG, SET_API_UNREACHABLE,\n } from './mutationTypes';\nimport {PLAYING, PAUSE, SEEKING, ENDED, IDLE} from './playerStatusTypes';\nconst debug = require('debug')('webtor:lib:store');\nexport default {\n [SET_INITED](state) {\n state.inited = true;\n },\n [UPDATE_WINDOW_WIDTH](state) {\n debug('update window width=%o', window.innerWidth);\n state.windowWidth = window.innerWidth;\n },\n [SET_NAME](state, val) {\n state.name = val;\n },\n [SET_PROGRESS](state, val) {\n state.progress = val;\n },\n [SET_IS_CACHED](state, val) {\n state.isCached = val;\n },\n [SET_ATTACHED_TRACKS](state, val) {\n state.attachedTracks = val;\n },\n [CHANGE_CAPTION_SIZE](state, val) {\n if (state.captionSize + val < 0) {\n return;\n }\n state.captionSize = state.captionSize + val;\n },\n [SET_ZIP_DOWNLOAD](state, val) {\n state.zipDownload = val;\n },\n [SET_ADS_INJECTED](state, val) {\n state.adsInjected = val;\n },\n [SET_COMPLETED_PIECES](state, val) {\n state.completedPieces = val;\n },\n [SET_WIDTH](state, val) {\n state.width = val;\n },\n [SET_HEIGHT](state, val) {\n state.height = val;\n },\n [SET_IMDBID](state, val) {\n state.imdbId = val;\n },\n [SET_EXTERNAL_SUBTITLES](state, subtitles) {\n state.externalSubtitles = subtitles;\n },\n [SET_HEADER](state, val) {\n state.header = val;\n },\n [SET_EXTERNAL_TITLE](state, val) {\n state.externalTitle = val;\n },\n [SET_EXTERNAL_FEATURES](state, val) {\n const features = {};\n for (const k in state.features) {\n features[k] = state.controls;\n }\n state.features = Object.assign(features, val);\n },\n [SET_EXTERNAL_CONTROLS](state, val) {\n state.controls = val;\n },\n [SET_AUTOPLAY](state, val) {\n state.autoplay = val;\n },\n [SET_CAPTION](state, val) {\n state.caption = val;\n },\n [SET_NEW_POSITION](state, val) {\n state.newPosition = val;\n },\n [SET_PLAYER_CONTROLS_SHOWN](state, val) {\n state.playerControlsShown = val;\n },\n [SET_PLAYER_FULLSCREEN](state, val) {\n state.playerFullScreen = val;\n },\n [SET_PLAYER_NATIVE_FULLSCREEN](state, val) {\n state.playerNativeFullScreen = val;\n },\n [SET_EXTERNAL_POSTER](state, poster) {\n state.externalPoster = poster;\n },\n [SET_VIEW_MODE](state, mode) {\n state.viewMode = mode;\n },\n [SET_THEME](state, theme) {\n state.theme = theme;\n },\n [SET_ADBLOCK_ENABLED](state) {\n state.adblock = true;\n },\n [SET_API_UNREACHABLE](state) {\n state.apiUnreachable = true;\n },\n [SET_LOAD_STATE](state, text) {\n state.loadState = text;\n },\n [SET_ABUSED](state) {\n state.loadState = false;\n state.abused = true;\n },\n [SET_LOAD_STATE_SUCCESS](state) {\n state.loadState = false;\n state.loadError = false;\n },\n [SET_LOAD_STATE_FAILURE](state) {\n state.loadState = false;\n state.loadError = true;\n },\n [SET_MEDIA_INFO](state, data) {\n state.mediaInfo = data;\n },\n [SET_PLAYER_TIME](state, data) {\n state.time = data;\n },\n [SET_FILE_STATE](state, data) {\n Vue.set(state.currentDirFileState, data.file, data);\n },\n [SET_DOWNLOAD_STAT](state, {p, m}) {\n Vue.set(state.downloadStats, p, m);\n },\n [DROP_DOWNLOAD_STAT](state, p) {\n Vue.delete(state.downloadStats, p);\n },\n [SET_TORRENT_SUCCESS](state, torrent) {\n if (state.torrent && torrent\n && torrent.infoHash == state.torrent.infoHash) {\n return;\n }\n state.torrent = torrent;\n state.file = null;\n state.pwd = '/';\n state.source = null;\n state.alterSource = null;\n state.playerStatus = null;\n state.playerFilePath = null;\n state.wrongFormat = false;\n state.loadError = false;\n state.deliveryFailure = false;\n state.stats = false;\n state.errors = {};\n if (state.torrent) {\n state.abused = false;\n }\n state.mediaInfo = null;\n state.playerStatus = IDLE;\n },\n [SET_PWD_SUCCESS](state, pwd) {\n if (state.pwd == pwd) return;\n if (!pwd) {\n state.pwd = '/';\n } else {\n state.pwd = pwd;\n }\n state.file = null;\n state.wrongFormat = false;\n state.deliveryFailure = false;\n state.playerStatus = IDLE;\n },\n [SET_DOWNLOAD_PATH](state, path) {\n state.downloadPath = path;\n },\n [SET_DOWNLOAD_TYPE](state, type) {\n state.downloadType = type;\n },\n [SET_FILE_SUCCESS](state, path) {\n if (state.file == path) return;\n state.file = path;\n state.wrongFormat = false;\n state.deliveryFailure = false;\n state.mediaInfo = null;\n state.caption = null;\n state.playerStatus = IDLE;\n },\n [SET_LANG](state, lang) {\n state.lang = lang;\n },\n [SET_USER_LANG](state, lang) {\n state.userLang = lang;\n },\n [SET_DOWNLOAD_ID](state, id) {\n state.downloadID = id;\n },\n [SET_SOURCE](state, source) {\n // if (state.playerFilePath != state.filePath) {\n // state.playerFilePath = null;\n // }\n state.caption = null;\n state.source = source;\n state.playerFullScreen = false;\n state.playerControlsShown = true;\n },\n [SET_PLAYER_STATUS_SUCCESS](state, status) {\n state.playerStatus = status;\n if (status == SEEKING || status == ENDED) {\n state.lastTime = null;\n }\n },\n [SET_LAST_TIME](state, time) {\n state.lastTime = time;\n },\n [SET_PLAYER_FILE_PATH_SUCCESS](state, path) {\n state.playerFilePath = path;\n },\n [SET_PLAYER_SOURCE_URL_SUCCESS](state, url) {\n state.playerSourceUrl = url;\n },\n [SET_TORRENT_FAILURE](state) {\n state.wrongFormat = true;\n },\n [SET_DELIVERY_FAILURE](state, { header: { path }, message, data }) {\n Vue.set(state.errors, `/${path}`, message);\n state.deliveryFailure = { message, data };\n },\n [CLEAR_TORRENT_LOAD_ERROR](state) {\n state.wrongFormat = false;\n },\n [CLEAR_DELIVERY_FAILURE](state) {\n state.deliveryFailure = false;\n },\n [SET_DELIVERY_TOKEN](state, token) {\n state.deliveryToken = token;\n },\n [SET_STAT_SUCCESS](state, data) {\n state.stats = data;\n },\n [SET_CURRENT_DIR_FILE_STATES](state, states) {\n state.currentDirFileState = states;\n },\n [SET_RECENT_TORRENTS](state, torrents) {\n state.recentTorrents = torrents;\n },\n [SET_USER_SETTINGS](state, settings) {\n if (settings.captionSize) {\n state.captionSize = settings.captionSize;\n }\n if (settings.theme && !state.theme) {\n state.theme = settings.theme;\n }\n },\n [SET_RECENT_TORRENT](state, data) {\n Vue.set(state.recentTorrents, data.infoHash, data);\n },\n [SET_RECENT_TORRENT](state, data) {\n Vue.set(state.recentTorrents, data.infoHash, data);\n },\n [SET_SEEDER](state, seeder) {\n state.seeder = seeder;\n },\n [SET_FIRST_PLAY](state, val) {\n state.firstPlay = val;\n },\n};","export function ls(torrent, pwd, file = null) {\n if (torrent == null) return [];\n let tree = {};\n const addBranch = (tree, parts, file) => {\n if (parts.length == 0) return file;\n const part = parts.shift();\n if (tree[part] == undefined) {\n tree[part] = addBranch({}, parts, file);\n } else {\n tree[part] = addBranch(tree[part], parts, file);\n }\n return tree;\n };\n for (let file of torrent.files) {\n const pathParts = file.path.split('/');\n tree = addBranch(tree, pathParts, file);\n }\n let pwdParts = pwd.substring(1).split('/');\n if (pwdParts[0] == '') pwdParts = [];\n let currentDir = tree;\n for (let pwdPart of pwdParts) {\n currentDir = currentDir[pwdPart];\n }\n const res = [];\n if (!file) {\n res.push({\n name: '.',\n type: 'dir',\n path: '/',\n });\n pwdParts.pop();\n let upPath = '/';\n if (pwdParts.length > 0) {\n upPath = '/' + pwdParts.join('/');\n }\n res.push({\n name: '..',\n type: 'dir',\n path: upPath,\n });\n }\n for (let t in currentDir) {\n if (file && file != t) continue;\n let item = {};\n item.name = t;\n if (pwd == '/') {\n item.path = `/${t}`;\n } else {\n item.path = `${pwd}/${t}`;\n }\n if (currentDir[t].length !== undefined) {\n item.type = 'file';\n item.length = currentDir[t].length;\n } else {\n item.type = 'dir';\n }\n res.push(item);\n }\n return res.sort((a, b) => a.name.localeCompare(b.name));\n};\n","import {VIDEO, DOWNLOAD} from './viewModeTypes';\nimport {ls} from './fileUtils';\nconst pathParse = require('path-parse');\nimport {getCaptionSource} from './caption';\nconst md5 = require('md5');\nimport parseTorrent from 'parse-torrent';\nimport {clean, processSubtitles, randomId} from './helpers';\n\nexport default function ({i18n, sdk, message, config}) {\n return {\n gtagDimensions(state, getters) {\n return {\n 'dimension1': getters.fileExt.replace(/^\\./, '').toLowerCase(), // Content Type\n 'dimension2': getters.deliveryType == 'transcode', // Content Transcoded?\n 'dimension3': getters.mediaType, // Content Format\n 'dimension4': getters.isAutoplay, // Autoplay?\n 'dimension5': state.file, // Content Name\n 'dimension6': state.torrent.infoHash, // Torrent Infohash\n 'dimension8': getters.isAdblock, // Adblock Enabled?\n 'dimension9': getters.isSponsor, // Is Sponsor?\n 'dimension10': getters.filePath, // Content Path\n 'dimension11': getters.isEmbedded, // Content Path\n };\n },\n gtagDownloadDimensions(state, getters) {\n return {\n 'dimension6': state.torrent.infoHash, // Torrent Infohash\n 'dimension8': getters.isAdblock, // Adblock Enabled?\n 'dimension9': getters.isSponsor, // Is Sponsor?\n };\n },\n sdk: () => sdk,\n torrentFile: (state) => ls(state.torrent, state.pwd, state.file)[0],\n title: (state) => 'Webtor.io',\n isEmbedded: (state, getters) => getters.isVideoMode || getters.isDownloadMode,\n iOS() {\n if (typeof window === 'undefined') return false;\n return [\n 'iPad Simulator',\n 'iPhone Simulator',\n 'iPod Simulator',\n 'iPad',\n 'iPhone',\n 'iPod'\n ].includes(window.navigator.platform)\n // iPad on iOS 13 detection\n || (window.navigator.userAgent.includes(\"Mac\") && \"ontouchend\" in document)\n },\n showShare: (state, getters) => !getters.isEmbedded,\n showLogo: (state, getters) => !getters.isEmbedded,\n showDownload: (state, getters) => !getters.isEmbedded,\n showStatus: (state, getters) => !getters.isEmbedded,\n selfHosted: () => config.selfHosted,\n isAutoplay: (state) => state.autoplay,\n isVideoMode: (state) => state.viewMode == VIDEO,\n isDownloadMode: (state) => state.viewMode == DOWNLOAD,\n preroll: (state) => state.preroll,\n isIndia: (state) => state.country == 'IN',\n underPlayerBanner: (state) => state.underPlayerBanner,\n warnBanner: (state) => state.warnBanner,\n shareLink: (state) => {\n return window.location.origin + '/' + state.torrent.infoHash;\n },\n magnetURI: (state) => {\n return parseTorrent.toMagnetURI(state.torrent);\n },\n blogUrl: (state) => {\n const lang = state.lang;\n return `https://blog.webtor.io/${lang}/post/`;\n },\n backersUrl: (state) => {\n const lang = state.lang;\n return `https://blog.webtor.io/${lang}/backers/`;\n },\n technologyUrl: (state) => {\n const lang = state.lang;\n return `https://blog.webtor.io/${lang}/technology/`;\n },\n metadata: (state) => {\n const md = {};\n if (state.userID) {\n md['user-id'] = state.userID;\n }\n return md;\n },\n translations: (state) => i18n.messages,\n ls: (state) => ls(state.torrent, state.pwd),\n currentVideoFiles: (state, getters) => {\n const res = [];\n for (const f of getters.ls) {\n if (sdk.util.getMediaType(f.name) == 'video') {\n res.push(f.name);\n }\n }\n return res;\n },\n currentVideoFilesWithFriendlyNames: (state, getters) => {\n const res = [];\n for (const name of getters.currentVideoFiles) {\n let friendlyName = pathParse(name).name;\n if (friendlyName.match(/s\\d+/i) && friendlyName.match(/e\\d+/i)) {\n const mm = friendlyName.match(/e(\\d+)/i);\n const num = (parseInt(mm[1]) + '').padStart(2, '0');\n friendlyName = i18n.t('common.episode') + ' ' + num;\n }\n res.push({\n name,\n friendlyName,\n });\n }\n return res;\n },\n currentPrimaryVideoFiles: (state, getters) => {\n return getters.currentVideoFiles.filter((v) => !v.match(/sample/i));\n },\n currentInfoHash: (state) => {\n return state.torrent ? state.torrent.infoHash : null;\n },\n isDemo: (state, getters) => {\n return getters.currentInfoHash == '08ada5a7a6183aae1e09d831df6748d566095a10';\n },\n displayAds: (state, getters) => {\n if (getters.isDemo) return false;\n if (config.ads == false) return false;\n if (getters.isSponsor) return false;\n return true;\n },\n displayPopups: (state, getters) => {\n return getters.displayAds;\n },\n displayAdsense: (state, getters) => {\n if (config.adsense == false) return false;\n if (config.ads == false) return false;\n if (getters.isSponsor) return false;\n if (getters.isEmbedded) return false;\n return true;\n },\n displayAdfox: (state, getters) => {\n if (config.ads == false) return false;\n if (getters.isSponsor) return false;\n if (getters.isEmbedded) return false;\n return true;\n },\n displayPrerolls: (state, getters) => {\n return false;\n // return getters.displayAds && getters.mediaType == 'video';\n },\n isAdblock: (state) => {\n return state.adblock;\n },\n isWindows: (state) => {\n return navigator.platform.indexOf('Win') > -1;\n },\n currentDir: (state) => {\n if (state.pwd == '/') return null;\n return state.pwd.split('/').slice(-1).pop();\n },\n deepLevel: (state) => {\n return state.pwd.split('/').length - 1;\n },\n deliveryType: (state) => {\n return sdk.util.getDeliveryType(state.file);\n },\n mediaType: (state) => {\n return sdk.util.getMediaType(state.file);\n },\n fileName: (state) => {\n return pathParse(state.file).name;\n },\n fileExt: (state) => {\n return pathParse(state.file).ext;\n },\n filePath: (state) => {\n if (state.file == null) return state.pwd;\n if (state.pwd == '/') {\n return state.file;\n } else {\n return state.pwd.substr(1) + '/' + state.file;\n }\n },\n downloadFile: (state) => {\n if (!state.downloadPath) return null;\n return pathParse(state.downloadPath).base;\n },\n downloadSize: (state) => {\n let l = 0;\n for (const f of state.torrent.files) {\n if (('/' + f.path).startsWith(state.downloadPath)) {\n l += f.length;\n }\n }\n return l;\n },\n isSponsor: (state) => {\n if (!state.user) return false;\n return state.user && state.user.role && state.user.role != 'NOBODY';\n },\n sources: async (state, getters) => {\n const src = await state.seeder.streamUrl(getters.filePath, clean(getters.metadata));\n // const src = new Url('https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8');\n // const src = new Url('http://localhost:8080/index.m3u8');\n const type = sdk.util.getMimeType(src);\n const title = 'main';\n return [{\n src,\n type,\n title,\n }];\n },\n poster: async (state, getters) => {\n const md = clean(getters.metadata);\n md.invoke = false;\n if (state.externalPoster) {\n return await sdk.ext.streamUrl(state.externalPoster, {}, md);\n }\n for (let f of state.torrent.files) {\n if (sdk.util.getMediaType(f.name) == 'image' && f.name.startsWith(getters.fileName)) {\n return await state.seeder.streamUrl(f.path, md);\n }\n }\n const videos = getters.currentPrimaryVideoFiles;\n if (videos.length == 1) {\n const files = getters.ls;\n for (const f of files) {\n if (sdk.util.getMediaType(f.name) == 'image' && f.name.match(/poster/)) {\n return await state.seeder.streamUrl(f.path, md);\n }\n }\n }\n return null;\n },\n captionSource(state) {\n if (!state.player.subtitle) return null;\n let src = state.player.subtitle.src;\n if (!src) return null;\n if (src.href) src = src.href;\n return getCaptionSource(src);\n },\n openSubtitlesTracks: async (state, getters) => {\n let tracks = [];\n const search = {};\n if (state.imdbId) {\n search['imdb-id'] = state.imdbId;\n }\n const os = await state.seeder.openSubtitles(getters.filePath, Object.assign(clean(getters.metadata), search));\n message.send('open subtitles', os);\n for (const o of os) {\n if (!['srt', 'vtt'].includes(o.format)) continue;\n const lang = sdk.util.getLang(o.srclang)\n tracks.push({\n kind: 'subtitles',\n label: lang.nativeName != \"\" ? lang.nativeName : o.label,\n srclang: o.srclang,\n src: o.src,\n hash: md5(o.hash + o.id),\n });\n }\n tracks = processSubtitles(tracks);\n return tracks;\n },\n async tracks(state, getters) {\n let tracks = [];\n if (state.player.subtitle) {\n tracks = [state.player.subtitle];\n } else {\n tracks = state.attachedTracks;\n }\n let res = [];\n for (const t of tracks) {\n res.push(clean(t));\n }\n for (const t of res) {\n if (state.player.subtitle && t.hash == state.player.subtitle.hash) {\n t.default = true;\n break;\n } else if (t.autoselect) {\n t.default = true;\n break;\n }\n }\n return res;\n },\n hasLogin() {\n return config.patreon;\n },\n apiUrl() {\n return config.sdk.apiUrl;\n }\n };\n};","function normalizeLang(lang) {\n return lang.split('_')[0].toLowerCase();\n}\nfunction getRelevantTrackFromTracks(lang, tracks) {\n lang = normalizeLang(lang);\n for (const t of tracks) {\n if (normalizeLang(t.srclang) == lang) {\n return t;\n }\n }\n return null;\n}\nasync function getRelevantTrackForLang({state, getters}, lang) {\n let track = null;\n track = getRelevantTrackFromTracks(lang, state.attachedTracks);\n if (track) {\n track.source = 'attached';\n }\n if (!track) {\n const tracks = await getters.openSubtitlesTracks;\n if (tracks) {\n track = getRelevantTrackFromTracks(lang, tracks);\n if (track) {\n track.source = 'openSubtitles';\n }\n }\n }\n return track;\n}\nexport default async function getRelevantTrack(store) {\n const {state} = store;\n let track = null;\n track = await getRelevantTrackForLang(store, state.userLang);\n if (!track) {\n track = await getRelevantTrackForLang(store, state.fallbackLang);\n }\n return track;\n}","const debug = require('debug')('webtor:lib:stoplistCheck');\nfunction findKeyword(k, s) {\n return k == s || k.startsWith(s + \" \") || k.endsWith(\" \" + s) || k.includes(\" \" + s + \" \");\n}\n\nfunction findKeywordSpaces(k, s) {\n return findKeyword(k, s) || findKeyword(k, s.replace(/\\s+/g, ''));\n}\n\nfunction findKeywordWithPipes(k, s) {\n const parts = s.split('|');\n for (const p of parts) {\n if (findKeywordSpaces(k, p)) {\n return true;\n }\n }\n return false;\n}\nfunction findKeywordWithPlus(k, s) {\n const parts = s.split('+');\n let found = true;\n for (const p of parts) {\n if (!findKeywordWithPipes(k, p)) {\n found = false;\n }\n }\n return found;\n}\nexport default function(str, stoplist) {\n const k = str.toLowerCase().replace(/[^\\w]/g, ' ').replace(/(\\d+)/g, ' $1 ').replace(/\\s+/g, ' ');\n for (const s of stoplist) {\n if (s == \"\") continue; \n if (findKeywordWithPlus(k, s)) {\n return false;\n }\n }\n return true;\n}","import parseTorrent from 'parse-torrent';\nconst Url = require('url-parse');\nexport default function stringToTorrent(s) {\n if (s.match(/^magnet/) || s.match(/^[a-fA-F0-9]{40}$/)) {\n return parseTorrent(s);\n }\n const u = Url(s, true);\n for (const k in u.query) {\n const t = stringToTorrent(u.query[k]);\n if (t) return t;\n }\n return false;\n}","export default function arrayToText(obj) {\n for (let k in obj) {\n if (Array.isArray(obj[k])) {\n obj[k] = obj[k].join('\\n');\n } else if (typeof obj[k] === 'object') {\n obj[k] = arrayToText(obj[k]);\n }\n }\n return obj;\n};\n","import {SET_TORRENT_SUCCESS, SET_PWD_SUCCESS,\n SET_FILE_SUCCESS, SET_SOURCE, SET_PLAYER_STATUS_SUCCESS,\n SET_TORRENT_FAILURE,\n SET_STAT_SUCCESS,\n SET_LOAD_STATE, SET_LOAD_STATE_SUCCESS,\n SET_LOAD_STATE_FAILURE,\n SET_LANG, SET_ABUSED, SET_MEDIA_INFO,\n SET_PLAYER_TIME, SET_CURRENT_DIR_FILE_STATES, SET_FILE_STATE,\n SET_RECENT_TORRENTS, SET_RECENT_TORRENT,\n SET_ADBLOCK_ENABLED, SET_VIEW_MODE,\n SET_EXTERNAL_SUBTITLES, SET_EXTERNAL_POSTER, SET_AUTOPLAY, SET_CAPTION, \n SET_HEADER, SET_EXTERNAL_TITLE, SET_HEIGHT, SET_WIDTH, SET_IMDBID,\n SET_COMPLETED_PIECES, CHANGE_CAPTION_SIZE, SET_USER_SETTINGS, \n SET_ADS_INJECTED, SET_EXTERNAL_FEATURES,\n SET_NEW_POSITION, SET_SEEDER, SET_ZIP_DOWNLOAD,\n SET_ATTACHED_TRACKS, SET_LAST_TIME, SET_FIRST_PLAY, SET_IS_CACHED, SET_EXTERNAL_CONTROLS,\n SET_DOWNLOAD_PATH, SET_DOWNLOAD_STAT, DROP_DOWNLOAD_STAT, SET_DOWNLOAD_TYPE,\n UPDATE_WINDOW_WIDTH, SET_INITED, SET_PROGRESS, SET_USER_LANG, SET_API_UNREACHABLE,\n } from './mutationTypes';\nimport {PLAYING, PAUSE} from './playerStatusTypes';\nimport {VIDEO, DOWNLOAD} from './viewModeTypes';\nimport {clean, cleanPlayerTrack, cleanState, randomId, processSubtitles} from './helpers';\nimport parseTorrent from 'parse-torrent';\nimport omitEmpty from 'omit-empty';\nimport fileToTorrent from './fileToTorrent';\nimport {getLangRoute} from './../langRoutes';\nimport getRelevantTrack from './../relevantTrack';\nimport stoplistCheck from '../stoplistCheck';\nimport stringToTorrent from './stringToTorrent';\nconst debug = require('debug')('webtor:lib:store');\nconst md5 = require('md5');\nconst Url = require('url-parse');\nconst cloneDeep = require('clone-deep');\nconst loadScript = require('load-script2');\nimport dot from 'dot-object';\nimport arrayToText from './arrayToText';\nimport Vue from 'vue';\nimport state from './state';\nlet logTimePeriod = 15;\nlet statsClient;\nlet adsenseInited = false;\nlet adScriptsInited = false;\nimport debounce from 'lodash/debounce';\nconst sha1 = require('sha1');\nexport default function({router, message, db, sdk, ext, i18n, injectHash, injectCode, config}) {\n return {\n log({}, message) {\n debug(message);\n },\n adblockEnabled: ({ commit }) => {\n // event('Show', 'ADBLOCK_ENABLED');\n commit(SET_ADBLOCK_ENABLED);\n },\n changeCaptionSize: ({ commit, dispatch }, val) => {\n commit(CHANGE_CAPTION_SIZE, val);\n dispatch('updateUserSettings');\n },\n getMediaInfo: async ({ commit, state, getters }) => {\n if (getters.deliveryType == 'webseed') return;\n const md = clean(getters.metadata);\n md.invoke = false;\n const data = await state.seeder.mediaInfo(getters.filePath, md);\n commit(SET_MEDIA_INFO, data);\n },\n async play({ commit, dispatch }) {\n dispatch('stats');\n commit(SET_PLAYER_STATUS_SUCCESS, PLAYING);\n },\n async pause({ commit }) {\n commit(SET_PLAYER_STATUS_SUCCESS, PAUSE);\n },\n async cd({ dispatch, state }, pwd) {\n if (pwd == state.pwd) return;\n dispatch('log', `Change directory path=${pwd}`)\n // event('Show', 'CD', pwd);\n await dispatch('setState', {\n torrent: state.torrent,\n pwd,\n });\n await dispatch('pushState');\n },\n async getCurrentDirFileStates({ commit, state }) {\n const states = await db.getCurrentDirFileStates({\n infoHash: state.torrent.infoHash,\n pwd: state.pwd,\n });\n const statesObj = {};\n for (const s of states) {\n statesObj[s.file] = s;\n }\n commit(SET_CURRENT_DIR_FILE_STATES, statesObj);\n },\n async open({ dispatch, state, commit }, file) {\n dispatch('log', `Open path file=${file}`)\n await dispatch('setState', {\n torrent: state.torrent,\n pwd: state.pwd,\n file,\n autoplay: true,\n });\n\n await dispatch('pushState');\n },\n async hideDownload({commit}) {\n commit(SET_DOWNLOAD_TYPE, null);\n commit(SET_DOWNLOAD_PATH, null);\n },\n async download({ dispatch, state, getters, commit }, path) {\n commit(SET_DOWNLOAD_TYPE, 'file');\n commit(SET_DOWNLOAD_PATH, path);\n },\n async downloadUrl({ state, getters }) {\n let url = null;\n if (state.downloadType == 'zip') {\n url = await state.seeder.zipUrl(state.downloadPath, clean(getters.metadata));\n } else {\n url = await state.seeder.downloadUrl(state.downloadPath, clean(getters.metadata));\n }\n return url;\n },\n async proceedTorrentDownload({ dispatch, state, getters, commit }) {\n const torrent = cloneDeep(state.torrent);\n const buf = parseTorrent.toTorrentFile(torrent);\n // https://stackoverflow.com/a/9834261\n const blob = new Blob([buf.buffer]);\n const url = window.URL.createObjectURL(blob);\n const a = document.createElement('a');\n a.style.display = 'none';\n a.href = url;\n // the filename you want\n a.download = torrent.name + '.torrent';\n document.body.appendChild(a);\n a.click();\n window.URL.revokeObjectURL(url);\n },\n async proceedDownload({ dispatch, state, getters, commit }) {\n // let onMessage = (p, m) => {\n // commit(SET_DOWNLOAD_STAT, {p: p, m});\n // };\n // let onEnd = (p, res) => {\n // // setTimeout(() => {\n // // commit(DROP_DOWNLOAD_STAT, p);\n // // }, 10000);\n // };\n let url = null;\n if (state.downloadType == 'zip') {\n // url = await state.seeder.zipUrlWithProgress(state.downloadPath, onMessage, onEnd, clean(getters.metadata));\n url = await state.seeder.zipUrl(state.downloadPath, clean(getters.metadata));\n dispatch('downloadEvent', 'Content Zip Download');\n } else {\n // url = await state.seeder.downloadUrlWithProgress(state.downloadPath, onMessage, onEnd, clean(getters.metadata));\n url = await state.seeder.downloadUrl(state.downloadPath, clean(getters.metadata));\n dispatch('downloadEvent', 'Content Download');\n }\n dispatch('log', `Download path=${state.downloadPath} type=${state.downloadType} url=${url.href}`)\n dispatch('stats');\n window.location = url.href;\n },\n event({ getters }, { name, payload = {} }) {\n const data = Object.assign({}, getters.gtagDimensions, payload);\n if (Vue.$gtag !== undefined) Vue.$gtag.event(name, data);\n },\n downloadEvent({ getters }, name) {\n const data = Object.assign({}, getters.gtagDownloadDimensions, { 'dimension10': state.downloadPath });\n if (Vue.$gtag !== undefined) Vue.$gtag.event(name, data);\n },\n async zip({ dispatch, state, getters, commit }) {\n if (!state.torrent) return;\n let path = state.pwd;\n if (path == '/') {\n path = '/' + state.torrent.name;\n }\n debug('zip invoked path=%o', path);\n commit(SET_DOWNLOAD_TYPE, 'zip');\n commit(SET_DOWNLOAD_PATH, path);\n },\n async delivery({ commit, state, getters, dispatch }) {\n if (!state.torrent || !state.file) return;\n const filePath = getters.filePath;\n const src = await state.seeder.streamUrl(filePath, clean(getters.metadata));\n dispatch('log', `Deliver content file=${filePath} url=${src}`)\n dispatch('updateSource');\n dispatch('stats');\n },\n async stats({ state, getters, commit }) {\n const filePath = getters.filePath;\n const isCached = await state.seeder.isCached(filePath, clean(getters.metadata));\n commit(SET_IS_CACHED, isCached);\n if (state.features.p2pProgress && !isCached && !statsClient) {\n try {\n statsClient = await state.seeder.stats('', (path, data) => {\n // var t0 = performance.now()\n commit(SET_STAT_SUCCESS, data);\n // var t1 = performance.now()\n // console.log(`Call to SET_STAT_SUCCESS took ${(t1 - t0)} milliseconds count ${data.length}.`)\n }, clean(getters.metadata));\n } catch (e) {\n debug(e);\n statsClient = null;\n }\n }\n },\n async pushTorrent({ getters, dispatch }, torrent) {\n const expire = 60 * 60 * 24 * 30; // 1 month\n dispatch('log', `Push torrent torrentInfo=${torrent.infoHash}`)\n try {\n return await sdk.torrent.touch(torrent, expire, clean(getters.metadata));\n } catch (e) {\n if (e == 'not found') {\n try {\n return await sdk.torrent.push(torrent, expire, clean(getters.metadata));\n } catch (e) {\n debug(e);\n throw e;\n }\n } else {\n debug(e);\n throw e;\n }\n }\n },\n async pushAbuse({ getters }, abuse) {\n return await sdk.abuse.push(abuse, clean(getters.metadata));\n },\n async setState({ commit, state, dispatch, getters }, newState) {\n let { torrent, file, pwd, autoplay } = newState;\n if (!pwd && torrent && torrent.files.length > 0) {\n const pieces = torrent.files[0].path.split('/');\n if (pieces.length > 1) {\n pwd = '/' + pieces[0];\n }\n }\n if (!pwd) pwd = '/';\n const oldState = {\n torrent: state.torrent,\n file: state.file,\n pwd: state.pwd,\n };\n if (JSON.stringify(cleanState(oldState)) ==\n JSON.stringify(cleanState(newState))) return;\n await dispatch('leave');\n // const downloadID = randomId((torrent ? torrent.infoHash : '') + pwd + file);\n if ((torrent && !state.torrent) || (torrent && torrent.infoHash != state.torrent.infoHash)) {\n await db.pushTorrent(torrent);\n }\n commit(SET_TORRENT_SUCCESS, torrent);\n commit(SET_PWD_SUCCESS, pwd);\n commit(SET_FILE_SUCCESS, file);\n // commit(SET_DOWNLOAD_ID, downloadID);\n // commit(SET_AUTOPLAY, oldState.torrent != null);\n if (torrent && !file && (oldState.torrent == null || oldState.torrent.infoHash != torrent.infoHash)) {\n const videos = getters.currentPrimaryVideoFiles;\n if (videos.length > 0) {\n file = videos[0];\n commit(SET_FILE_SUCCESS, file);\n }\n }\n if (torrent && pwd) {\n const data = await db.setRecentTorrent(torrent, pwd);\n commit(SET_RECENT_TORRENT, data);\n\n await dispatch('getCurrentDirFileStates');\n }\n if (torrent && pwd && file) {\n if (getters.isDownloadMode) {\n await dispatch('zip');\n } else {\n const userData = await db.getFileState({ infoHash: torrent.infoHash, pwd, file });\n let time = 0;\n let track = null;\n const tracks = await getters.tracks;\n if (tracks.length > 0) {\n for (const t of tracks) {\n if (t.autoselect) {\n track = t;\n break;\n }\n }\n }\n if (userData && userData.time) time = userData.time;\n if (userData && userData.subtitle && userData.subtitle.src) {\n track = userData.subtitle;\n let u = new Url(track.src);\n const search = {};\n if (state.imdbId) {\n search['imdb-id'] = state.imdbId;\n }\n const query = await sdk.util.makeQuery(Object.assign(clean(getters.metadata), search));\n u.set('query', query);\n track.src = u;\n }\n if (track && track.type == 'ext') {\n let found = false;\n for (const t of tracks) {\n if (t.hash == track.hash) {\n found = true;\n }\n }\n if (!found) track = null;\n }\n await dispatch('player/setSubtitle', track);\n let audio = null;\n if (userData && userData.audio && userData.audio.src) {\n audio = userData.audio;\n let u = new Url(track.src);\n const query = await sdk.util.makeQuery(Object.assign(clean(getters.metadata), {}));\n u.set('query', query);\n audio.src = u;\n }\n await dispatch('player/setAudio', audio);\n commit(SET_AUTOPLAY, autoplay);\n commit(SET_PLAYER_TIME, time);\n dispatch('event', { name: 'Content Show' });\n await dispatch('delivery');\n }\n }\n },\n async fetchMagnet({ dispatch, getters }, magnet) {\n let torrent = null;\n dispatch('log', `Fetch torrent magnet=${magnet}`)\n var { _, infoHash } = parseTorrent(magnet);\n dispatch('log', `Fetching from localdb`)\n torrent = await db.pullTorrent(infoHash);\n if (!torrent || !torrent.pieces || torrent.pieces.length == 0) {\n try {\n dispatch('log', `Fetching from torrent store`)\n torrent = await sdk.torrent.pull(infoHash, clean(getters.metadata));\n } catch (e) {\n debug(e);\n }\n }\n if (!torrent) {\n dispatch('log', `Fetching by magnet uri from peers`)\n // event('Show', 'MAGNET_FETCHING', magnet);\n torrent = await sdk.magnet.fetchTorrent(magnet, clean(getters.metadata));\n // event('Show', 'MAGNET_FETCHED', magnet);\n }\n return torrent;\n },\n async fetchFromURL({ }, url) {\n if (url.match(/^http/)) {\n url = await sdk.ext.url(url);\n }\n return await sdk.torrent.fromUrl(url);\n },\n async processInit({ commit, getters, dispatch }, init) {\n commit(SET_ADS_INJECTED, true);\n message.send('inject', injectCode);\n const check = await message.receiveOnce('check');\n await loadScript('/sandblaster.min.js');\n const sb = sandblaster.detect();\n debug('chacking hashes %o %o', sha1(check), injectHash);\n if ((sha1(check) != injectHash) || sb.sandboxed) {\n router.push({ name: 'empty' }).catch(() => {});\n message.send('forbidden');\n return false;\n }\n loadScript('/iframeResizer.contentWindow.min.js');\n // if (getters.isIndia && !getters.isSponsor) {\n // router.push({ name: 'empty' }).catch(() => {});\n // message.send('forbidden');\n // return\n // }\n if (init.imdbId) {\n commit(SET_IMDBID, init.imdbId);\n }\n if (init.subtitles) {\n commit(SET_EXTERNAL_SUBTITLES, init.subtitles);\n dispatch('updateAttachedTracks');\n }\n if (init.hasOwnProperty('controls')) {\n commit(SET_EXTERNAL_CONTROLS, init.controls);\n }\n if (init.features) {\n commit(SET_EXTERNAL_FEATURES, init.features);\n }\n if (init.poster) {\n commit(SET_EXTERNAL_POSTER, init.poster);\n }\n if (init.title) {\n commit(SET_EXTERNAL_TITLE, init.title);\n }\n if (init.lang) {\n commit(SET_LANG, init.lang);\n i18n.locale = init.lang;\n }\n if (init.userLang) {\n commit(SET_USER_LANG, init.userLang);\n }\n if (init.mode) {\n commit(SET_VIEW_MODE, init.mode);\n }\n\n if (init.i18n) {\n for (const l in init.i18n) {\n const m = dot.dot(arrayToText(init.i18n[l]));\n i18n.mergeLocaleMessage(l, m);\n }\n }\n if (init.header === false) {\n commit(SET_HEADER, false);\n }\n if (init.height) {\n commit(SET_HEIGHT, init.height);\n }\n if (init.width) {\n commit(SET_WIDTH, init.width);\n }\n },\n async fetchTorrent({ state, commit, dispatch, getters }, newTorrent = null) {\n if (statsClient) {\n statsClient.close();\n statsClient = null;\n }\n const r = router.currentRoute;\n let torrent = state.torrent;\n if (typeof newTorrent == 'string') {\n const r = stringToTorrent(newTorrent);\n if (!r) {\n newTorrent = await dispatch('fetchFromURL', newTorrent);\n } else {\n newTorrent = r;\n }\n }\n let source = {};\n message.send('init');\n const init = await message.receiveOnce('init');\n // const init = {\n // magnet: 'magnet:?xt=urn:btih:08ada5a7a6183aae1e09d831df6748d566095a10&dn=Sintel&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com&tr=wss%3A%2F%2Ftracker.fastcast.nz&ws=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2F',\n // lang: 'en',\n // i18n: {\n // en: {\n // common: {\n // share: 'Shhh!',\n // },\n // },\n // },\n // }\n if (init) {\n const r = await dispatch('processInit', init);\n if (r === false) return;\n source = {\n torrentUrl: init.torrentUrl,\n magnet: init.magnet,\n };\n message.receive('play', () => {\n dispatch('play');\n });\n message.receive('pause', () => {\n dispatch('pause');\n });\n message.receive('setPosition', async (val) => {\n await dispatch('setPosition', val);\n await dispatch('setPosition', null);\n });\n message.receive('open', async (val) => {\n await dispatch('setState', {\n torrent: state.torrent,\n pwd: val.pwd,\n file: val.file,\n });\n await dispatch('pushState');\n });\n } else {\n source = {\n torrentUrl: r.query.torrent_url,\n magnet: r.query.magnet,\n downloadId: r.query.downloadId,\n };\n }\n if (JSON.stringify(omitEmpty(source)) == '{}' && !state.torrent && !newTorrent) {\n router.push({ name: 'intro' }).catch(() => {});\n return;\n }\n const magnet = torrent ? parseTorrent.toMagnetURI(torrent) : null;\n const newTorrentMagnet = newTorrent ? parseTorrent.toMagnetURI(newTorrent) : null;\n if ((!source.magnet || source.magnet == magnet)\n && !source.downloadId\n && !source.torrentUrl\n && (!newTorrent || newTorrentMagnet == magnet)) {\n return;\n }\n commit(SET_PROGRESS, 25);\n if (getters.isVideoMode) {\n commit(SET_LOAD_STATE, 'prepare to play');\n } else {\n commit(SET_LOAD_STATE, 'loading torrent');\n }\n try {\n if (newTorrent && (newTorrent.pieces && newTorrent.pieces.length > 0)) {\n torrent = newTorrent;\n } else if (sdk && newTorrent && (!newTorrent.pieces || newTorrent.pieces.length == 0)) {\n torrent = await dispatch('fetchMagnet', newTorrentMagnet);\n } else if (ext && source.downloadId) {\n dispatch('log', `Fetch torrent downloadId=${source.downloadId}`)\n const downloadId = parseInt(source.downloadId);\n debug('request downloadId=%d', downloadId);\n torrent = await ext.fetch(downloadId);\n } else if (sdk && source.torrentUrl) {\n torrent = await dispatch('fetchFromURL', source.torrentUrl);\n } else if (sdk && source.magnet) {\n torrent = await dispatch('fetchMagnet', source.magnet);\n }\n commit(SET_PROGRESS, 50);\n\n debug('Got torrent infoHash=%s', torrent.infoHash);\n if (!await dispatch('checkTorrent', torrent)) {\n commit(SET_ABUSED);\n commit(SET_PROGRESS, 0);\n router.push({ name: 'intro' }).catch(() => {});\n return;\n }\n await dispatch('pushTorrent', torrent);\n commit(SET_PROGRESS, 75);\n\n commit(SET_SEEDER, sdk.seeder.get(torrent.infoHash));\n if (sdk && sdk.params.cache) {\n const cp = await state.seeder.completedPieces();\n debug('Got torrent completed pieces length=%o', cp.length);\n commit(SET_COMPLETED_PIECES, cp);\n }\n commit(SET_LOAD_STATE_SUCCESS);\n let pwd = null\n if (r.query.pwd && !newTorrent) pwd = r.query.pwd;\n if (init && init.pwd) pwd = init.pwd;\n let file = null;\n if (r.query.file && !newTorrent) file = r.query.file;\n if (init && init.file) file = init.file;\n await dispatch('setState', {\n torrent,\n pwd,\n file,\n });\n commit(SET_PROGRESS, 100);\n message.send('torrent fetched', torrent);\n // event('Show', 'TORRENT_FETCHED', torrent.infoHash);\n } catch (e) {\n message.send('torrent error');\n await dispatch('setState', {});\n if (e == 'abused') {\n commit(SET_ABUSED);\n } else {\n commit(SET_LOAD_STATE_FAILURE);\n debug(e);\n }\n commit(SET_PROGRESS, 0);\n }\n\n if (r.query.event == 'player-logo-click') {\n dispatch('event', {name: 'Player Logo Click'});\n }\n await dispatch('pushState');\n },\n async cleanTorrent({commit}) {\n commit(SET_TORRENT_SUCCESS, null);\n commit(SET_PWD_SUCCESS, null);\n commit(SET_FILE_SUCCESS, null);\n commit(SET_SOURCE, null);\n },\n async processFile({ commit, dispatch }, file) {\n if (!file) return;\n try {\n return await fileToTorrent(file);\n } catch (e) {\n console.log(e);\n commit(SET_TORRENT_FAILURE);\n }\n },\n async leave({ commit }) {\n commit(SET_SOURCE, null);\n },\n async nextFile({ state, dispatch, getters }) {\n const files = getters.ls;\n if (files < 2) return;\n let next = null;\n let skip = true;\n for (let f of files) {\n if (sdk.util.getMediaType(f.path) != sdk.util.getMediaType(state.playerFilePath)) {\n continue;\n }\n if (!skip) {\n next = f;\n break;\n }\n if (`/${state.playerFilePath}` == f.path) skip = false;\n }\n if (!next) return;\n await dispatch('open', next.name);\n },\n async pushState({ state }) {\n if (state.torrent) {\n message.send('open', {\n file: state.file,\n pwd: state.pwd,\n });\n try {\n debug('push state=%o', {\n file: state.file,\n pwd: state.pwd,\n });\n await router.push({\n name: 'show', query: omitEmpty({\n file: state.file,\n pwd: state.pwd,\n magnet: parseTorrent.toMagnetURI(state.torrent),\n // mode: state.viewMode,\n // id: state.id,\n })\n });\n } catch (err) {\n console.log(err);\n if (err.name !== 'NavigationDuplicated') {\n throw err;\n }\n }\n } else {\n router.push({ name: 'intro' }).catch(() => {});\n }\n },\n async checkTorrent({}, torrent) {\n for (const f of torrent.files) {\n if (!stoplistCheck(f.path, config.stoplist)) {\n return false;\n }\n }\n return true;\n },\n async updateCaption({ state, getters, commit }) {\n const source = await getters.captionSource;\n if (!source) {\n commit(SET_CAPTION, null);\n return;\n }\n const caption = await source.getEntry(state.time);\n commit(SET_CAPTION, caption);\n },\n async updateTime({ commit, getters, dispatch, state }, { time, file }) {\n commit(SET_PLAYER_TIME, time);\n dispatch('updateCaption');\n dispatch('updateFileState', file);\n if (state.lastTime === null) {\n commit(SET_LAST_TIME, time);\n } else if (time - logTimePeriod - 5 > state.lastTime) {\n commit(SET_LAST_TIME, time);\n state.lastTime = time;\n } else if (time - logTimePeriod > state.lastTime) {\n dispatch('event', { name: 'Content Playtime', payload: { metric1: time - state.lastTime } });\n commit(SET_LAST_TIME, time);\n }\n message.send('current time', time);\n },\n async setDuration({ }, val) {\n message.send('duration', val);\n },\n firstPlay({commit, dispatch}) {\n commit(SET_FIRST_PLAY, false);\n dispatch('event', { name: 'Content Plays' });\n },\n async setPosition({ commit }, val) {\n commit(SET_NEW_POSITION, val);\n },\n // async setTrack({ commit, dispatch, state, getters }, track) {\n // await dispatch('updateSource');\n // await dispatch('updateFileState', state.file);\n // await dispatch('updateCaption');\n // },\n async processAutoSubtitles(store) {\n const track = await getRelevantTrack(store);\n const {dispatch} = store;\n if (track) {\n dispatch('player/setSubtitle', track);\n }\n },\n async updateAttachedTracks({ state, commit, getters }) {\n let tracks = [];\n\n const md = clean(getters.metadata);\n md.invoke = false;\n\n for (const s of state.externalSubtitles) {\n let autoselect = false;\n if (s.autoselect === true) autoselect = true;\n if (s.default === true || s.default === \"\") autoselect = true;\n tracks.push({\n kind: 'subtitles',\n label: s.label,\n srclang: s.srclang,\n src: await sdk.ext.streamUrl(s.src, {}, md),\n hash: md5(s.src + s.label),\n autoselect,\n type: 'ext',\n });\n }\n for (const s of state.hls.subtitles) {\n tracks.push({\n kind: 'subtitles',\n label: s.label,\n srclang: s.srclang,\n hash: md5(s.src),\n src: new Url(s.src),\n autoselect: s.autoselect,\n default: s.default,\n forced: s.forced,\n type: 'hls',\n });\n }\n\n if (state.torrent) {\n for (let f of state.torrent.files) {\n if (sdk.util.getMediaType(f.name) == 'subtitle' && f.name.startsWith(getters.fileName)) {\n const lang = sdk.util.getSubtitleLang(f.name)\n tracks.push({\n kind: 'subtitles',\n label: lang ? lang.nativeName : f.name,\n srclang: lang ? lang.code : 'en',\n src: await state.seeder.streamUrl(f.path, md),\n hash: md5(state.infoHash + f.name),\n });\n }\n }\n }\n tracks = processSubtitles(tracks);\n commit(SET_ATTACHED_TRACKS, tracks);\n },\n async updateSource({ state, getters, commit }) {\n const format = sdk.util.getMediaType(state.file);\n const sources = await getters.sources;\n const tracks = await getters.tracks;\n const poster = await getters.poster;\n const autoplay = getters.isAutoplay;\n const source = {\n format,\n sources,\n tracks,\n autoplay,\n poster,\n };\n debug('setting source=%o', source);\n commit(SET_SOURCE, source);\n },\n async updateFileState({ state, commit }, file = null) {\n if (!file) file = state.file;\n if (!state.file || !state.torrent || !state.pwd || state.file != file) return;\n let data = {\n infoHash: state.torrent.infoHash,\n pwd: state.pwd,\n file: state.file,\n subtitle: cleanPlayerTrack(state.player.subtitle),\n audio: cleanPlayerTrack(state.player.audio),\n time: state.time,\n };\n data = await db.updateFileState(data);\n commit(SET_FILE_STATE, data);\n },\n async init({ dispatch, commit }) {\n await Promise.all([\n dispatch('checkApi'),\n dispatch('getRecentTorrents'),\n dispatch('getUserSettings'),\n dispatch('initRouter'),\n dispatch('initWindowWidth'),\n ]);\n commit(SET_INITED);\n debug('inited');\n },\n updateWindowWidth({commit}) {\n commit(UPDATE_WINDOW_WIDTH);\n },\n async checkApi({commit}) {\n if (!sdk) return;\n try {\n await sdk.checkApi();\n } catch (e) {\n commit(SET_API_UNREACHABLE);\n debug(e);\n }\n },\n async initWindowWidth({commit}) {\n if (typeof window !== \"undefined\") {\n window.addEventListener('resize', debounce(() => {\n commit(UPDATE_WINDOW_WIDTH);\n }, 1000));\n }\n },\n async initAdScripts({getters}) {\n if (adScriptsInited || !getters.displayPopups) return;\n adScriptsInited = true;\n for (const ss of config.adScripts) {\n if (ss.context && ss.context.embed === false && getters.isEmbedded) {\n continue;\n }\n const s = document.createElement('script');\n s.type = 'text/javascript';\n s.setAttribute('data-cfasync', 'false');\n if (ss.src) {\n s.src = ss.src;\n } else if (ss.content) {\n const content = document.createTextNode(ss.content);\n s.appendChild(content);\n }\n document.body.appendChild(s);\n }\n },\n async initAdsense() {\n if (adsenseInited) return;\n adsenseInited = true;\n const s1 = document.createElement('script');\n s1.type = 'text/javascript';\n s1.setAttribute('async', 'true');\n s1.src = 'https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=' + config.adsense.client;\n s1.crossOrigin= 'anonymous';\n document.body.appendChild(s1);\n },\n async placeAdsenseAd({getters, dispatch}, {slot, name, format, style, placeholder}) {\n if (!getters.displayAdsense) return;\n dispatch('initAdsense');\n if (name) {\n slot = config.adsense.slots[name];\n }\n if (!style) style = 'display:block'\n let code = ``;\n let tries = 0;\n var checkExist = setInterval(function() {\n if (tries > 30) {\n clearInterval(checkExist);\n return;\n }\n if (document.getElementById(placeholder) && ('adsbygoogle' in window) && document.getElementById(placeholder).offsetWidth > 0) {\n document.getElementById(placeholder).innerHTML = code;\n (adsbygoogle = window.adsbygoogle || []).push({});\n clearInterval(checkExist);\n return;\n }\n tries++;\n }, 100);\n },\n async initRouter({state, commit, dispatch}) {\n router.beforeEach(async (to, from, next) => {\n // if (to.hash.startsWith('#/')) {\n // router.replace(to.hash.replace('#/', '')).catch(() => {});\n // return;\n // }\n if (typeof window !== \"undefined\") {\n const url = new URL(window.location);\n if ((url.pathname != '/' || url.search != '')) {\n history.replaceState({}, '', '/');\n router.replace(url.pathname + url.search);\n return;\n }\n }\n let page_title = to.name;\n let page_path = to.path;\n if (to.query.magnet) {\n page_path = '/' + parseTorrent(to.query.magnet).infoHash;\n if (to.query.pwd) {\n page_path += to.query.pwd;\n page_title = to.query.pwd;\n }\n if (to.query.file) {\n page_path += '/' + to.query.file;\n page_title = to.query.file;\n }\n }\n if (Vue.$gtag) {\n Vue.$gtag.pageview({\n page_path,\n page_title,\n });\n }\n if (to.query.mode == VIDEO || state.viewMode == VIDEO) {\n commit(SET_VIEW_MODE, VIDEO);\n }\n if (to.query.mode == DOWNLOAD || state.viewMode == DOWNLOAD) {\n commit(SET_VIEW_MODE, DOWNLOAD);\n }\n if (from.params.lang && !to.params.lang) {\n return router.push(getLangRoute(to, from.params.lang)).catch(() => {});\n }\n if (to.params.lang) {\n commit(SET_LANG, to.params.lang);\n i18n.locale = to.params.lang;\n }\n if (to.hash || (to.name && to.name.startsWith('magnet-uri')) || (to.name && to.name.startsWith('infohash'))) {\n let input = '';\n if (to.name && to.name.startsWith('infohash')) {\n input = to.params.infohash;\n } else if (to.name && to.name.startsWith('magnet-uri')) {\n input = decodeURIComponent(to.fullPath.substring(1));\n input = input.match(/magnet\\:.*/)[0];\n } else {\n input = to.hash.substring(1);\n }\n try {\n const data = parseTorrent(input);\n const magnet = parseTorrent.toMagnetURI(data);\n return router.push({\n name: 'show',\n query: {\n magnet,\n },\n }).catch(() => {});\n } catch (e) {\n debug(e);\n }\n }\n return next();\n });\n },\n async getUserSettings({ commit }) {\n if (!db) return;\n const settings = await db.getUserSettings();\n commit(SET_USER_SETTINGS, settings);\n },\n async updateUserSettings({ state }) {\n const settings = {\n captionSize: state.captionSize,\n };\n db.updateUserSettings(settings);\n },\n async getRecentTorrent(_, infoHash) {\n return await db.pullTorrent(infoHash);\n },\n async getRecentTorrents({ commit }) {\n if (!db) return;\n const torrents = await db.getRecentTorrents();\n const res = {};\n for (const t of torrents) {\n res[t.infoHash] = t;\n }\n commit(SET_RECENT_TORRENTS, res);\n },\n async updatePlayerStatus({commit}, status) {\n message.send('player status', status);\n commit(SET_PLAYER_STATUS_SUCCESS, status);\n },\n playerInited() {\n message.send('inited');\n },\n };\n};","function prepareTrack(d) {\n return {\n autoselect: d.autoselect,\n default: d.default,\n forced: d.forced,\n srclang: d.lang,\n label: d.name,\n src: d.url,\n id: d.id,\n };\n}\n\nconst state = () => ({\n audio: [],\n subtitles: [],\n});\n\nconst mutations = {\n setSubtitles(state, subtitles) {\n state.subtitles = subtitles;\n },\n setAudio(state, audio) {\n state.audio = audio;\n },\n};\n\nconst getters = {};\n\nconst actions = {\n async updateSubtitles({ commit, dispatch }, subs) {\n const r = [];\n for (const s of subs) {\n r.push(prepareTrack(s));\n }\n commit('setSubtitles', r);\n dispatch('updateAttachedTracks', {}, {root: true});\n },\n async updateAudio({ commit }, audio) {\n const r = [];\n for (const a of audio) {\n r.push(prepareTrack(a));\n }\n commit('setAudio', r);\n },\n};\n\nexport default {\n namespaced: true,\n strict: true,\n state,\n getters,\n actions,\n mutations\n};","const state = () => ({\n audio: null,\n subtitle: null,\n error: null,\n availableDuration: 0,\n duration: 0,\n dropSubtitles: [],\n});\n\nconst mutations = {\n setSubtitle(state, subtitle) {\n state.subtitle = subtitle;\n },\n setAudio(state, audio) {\n state.audio = audio;\n },\n setError(state, error) {\n state.error = error;\n },\n setAvailableDuration(state, d) {\n state.availableDuration = d;\n },\n setDuration(state, d) {\n state.duration = d;\n },\n dropSubtitles(state, d) {\n state.dropSubtitles = d;\n },\n clearSubtitleDrops(state) {\n state.dropSubtitles = [];\n },\n};\n\nconst getters = {\n seeder: (state, getters, rootState, rootGetters) => rootState.seeder,\n filePath: (state, getters, rootState, rootGetters) => rootGetters.filePath,\n};\n\nconst actions = {\n async dropSubtitles({commit}, s) {\n commit('dropSubtitles', s);\n },\n async clearSubtitleDrops({commit}) {\n commit('clearSubtitleDrops');\n },\n async setSubtitle({commit, dispatch}, s) {\n commit('setSubtitle', s);\n // await dispatch('updateSource', {}, {root: true});\n await dispatch('updateFileState', null, {root: true});\n await dispatch('updateCaption', {}, {root: true});\n },\n async setAudio({commit, dispatch}, a) {\n commit('setAudio', a);\n // await dispatch('updateSource', {}, {root: true});\n await dispatch('updateFileState', null, {root: true});\n },\n async updateAvailableDuration({commit, dispatch}, d) {\n commit('setAvailableDuration', d);\n },\n async updateDuration({commit}, d) {\n commit('setDuration', d);\n },\n async setError({dispatch, state, getters, commit}, e) {\n try {\n const err = await getters.seeder.error(getters.filePath);\n if (err) {\n let e = 'unknown error';\n if (err.includes('probing failed')) {\n e = 'no peers for transcoding';\n } else if (err.includes('context deadline exceeded')) {\n e = 'no peers for transcoding';\n } else {\n e = err.split(': ').pop();\n }\n commit('setError', e);\n }\n } catch (e) {\n console.log(e);\n commit('setError', e.message);\n }\n },\n};\n\nexport default {\n namespaced: true,\n strict: true,\n state,\n getters,\n actions,\n mutations\n};","export default ['en', 'ru'];","import merge from 'deepmerge';\nimport dot from 'dot-object';\nimport arrayToText from './store/arrayToText';\nimport VueI18n from 'vue-i18n';\nimport Vue from 'vue';\nimport locale from 'locale';\nimport langs from './langs';\nconst debug = require('debug')('webtor:i18n');\nconst supported = new locale.Locales(langs);\nconst messages = {};\nfor (let l of langs) {\n messages[l] = dot.dot(arrayToText(\n merge(\n require(`../i18n/common.json`),\n require(`../i18n/${l}.json`),\n )\n ));\n}\nVue.use(VueI18n);\nexport function createI18n(locales) {\n const bestLocale = locales.best(supported);\n const lang = bestLocale.normalized;\n return new VueI18n({\n locale: lang,\n fallbackLocale: 'en',\n messages,\n pluralizationRules: {\n 'ru': function(choice, choicesLength) {\n if (choice === 0) {\n return 0;\n }\n const teen = choice > 10 && choice < 20;\n const endsWithOne = choice % 10 === 1;\n if (choicesLength < 4) {\n return (!teen && endsWithOne) ? 1 : 2;\n }\n if (!teen && endsWithOne) {\n return 1;\n }\n if (!teen && choice % 10 >= 2 && choice % 10 <= 4) {\n return 2;\n }\n return (choicesLength < 4) ? 2 : 3;\n }\n },\n });\n}\n","import Vue from 'vue';\nimport MarkdownIt from 'markdown-it';\nlet inited = false;\nexport default function() {\n if (inited) return;\n inited = true;\n const md = new MarkdownIt();\n Object.defineProperty(Vue.prototype, '$tm', {\n get() {\n return (...args) => {\n return md.renderInline(this.$t(...args));\n };\n },\n });\n};\n","import './scss/custom.scss';\nimport Vue from 'vue';\nimport Vuex from 'vuex';\nimport Meta from 'vue-meta';\nimport Icon from 'vue-awesome/components/Icon.vue';\nVue.component('icon', Icon)\nimport {LayoutPlugin, ButtonPlugin, NavbarPlugin, AlertPlugin, JumbotronPlugin,\n ButtonGroupPlugin, ButtonToolbarPlugin, FormInputPlugin, LinkPlugin, FormTextareaPlugin,\n FormSelectPlugin, FormPlugin, InputGroupPlugin} from 'bootstrap-vue';\nimport {CardPlugin, ListGroupPlugin, ProgressPlugin} from 'bootstrap-vue';\nimport {FormGroupPlugin, FormRadioPlugin} from 'bootstrap-vue';\nimport {ModalPlugin} from 'bootstrap-vue';\nVue.use(Vuex);\nVue.use(Meta);\nVue.use(LinkPlugin);\nVue.use(LayoutPlugin);\nVue.use(ButtonPlugin);\nVue.use(NavbarPlugin);\nVue.use(AlertPlugin);\nVue.use(JumbotronPlugin);\nVue.use(ButtonGroupPlugin);\nVue.use(ButtonToolbarPlugin)\nVue.use(FormInputPlugin);\nVue.use(FormTextareaPlugin);\nVue.use(FormSelectPlugin);\nVue.use(FormPlugin);\nVue.use(CardPlugin);\nVue.use(ListGroupPlugin);\nVue.use(ProgressPlugin);\nVue.use(FormGroupPlugin)\nVue.use(FormRadioPlugin)\nVue.use(InputGroupPlugin)\nVue.use(ModalPlugin)\nimport vClickOutside from 'v-click-outside';\nVue.use(vClickOutside);\n\nimport {createRouter} from './lib/router';\nimport {createStore} from './lib/store';\nimport {createI18n} from './lib/i18n';\nimport markdown from './lib/markdown';\nimport App from './components/App.vue';\nimport registry from './lib/registry';\n\nexport async function createApp({api, db, locales, routerMode, ext, debug, user, sdk, message, config, ssr, injectHash, injectCode}) {\n const router = createRouter({mode: routerMode});\n const i18n = createI18n(locales);\n const store = createStore({router, db, api, i18n, locales, ext, debug, user, sdk, message, config, ssr, injectHash, injectCode});\n store.dispatch('init');\n registry.buildVue = (opts) => {\n return new Vue({\n i18n,\n store,\n router,\n ...opts,\n });\n };\n const app = registry.buildVue({\n render: (h) => h(App),\n })\n markdown();\n return {app, router, store};\n}\n","import Vuex from 'vuex';\n\nimport state from './store/state';\nimport mutations from './store/mutations';\nimport getters from './store/getters';\nimport actions from './store/actions';\nimport hls from './store/modules/hls';\nimport player from './store/modules/player';\n\nexport function createStore({router, i18n, ext, debug: deb, db, user, sdk, message, config, ssr, injectHash, injectCode, locales}) {\n return new Vuex.Store({\n modules: {\n hls,\n player,\n },\n strict: true,\n state: state({user, deb, i18n, ssr, locales}),\n mutations,\n getters: getters({i18n, sdk, message, config}),\n actions: actions({router, message, db, sdk, ext, i18n, injectHash, injectCode, config}),\n });\n};\n","import { openDB, deleteDB, wrap, unwrap } from 'idb';\nconst md5 = require('md5');\nconst debug = require('debug')('webtor:lib:clientDb');\n\nclass Db {\n getDb() {\n if (this.db != undefined) return this.db;\n this.db = openDB('webtor', 3, {\n upgrade(db, oldVersion) {\n if (oldVersion < 1) {\n const fileStore = db.createObjectStore('files', {\n keyPath: 'id',\n });\n db.createObjectStore('torrents', {\n keyPath: 'id',\n });\n fileStore.createIndex('hashAndPwd', 'hashAndPwd');\n }\n if (oldVersion < 2) {\n db.createObjectStore('recentTorrents', {\n keyPath: 'id',\n });\n }\n if (oldVersion < 3) {\n db.createObjectStore('userSettings', {\n keyPath: 'id',\n });\n }\n },\n });\n return this.db;\n }\n makeFileKey(data) {\n return md5(data.infoHash + data.pwd + data.file);\n }\n makeHashAndPwd(data) {\n return md5(data.infoHash + data.pwd);\n }\n async updateFileState(data) {\n const id = this.makeFileKey(data);\n const db = await this.getDb();\n const hashAndPwd = this.makeHashAndPwd(data);\n data.id = id;\n data.hashAndPwd = hashAndPwd;\n data.timestamp = Date.now();\n await db.put('files', data);\n return data;\n }\n\n async getFileState(data) { \n const id = this.makeFileKey(data);\n const db = await this.getDb();\n return await db.get('files', id);\n }\n async getCurrentDirFileStates(data) { \n const hashAndPwd = this.makeHashAndPwd(data);\n const db = await this.getDb();\n return await db.getAllFromIndex('files', 'hashAndPwd', hashAndPwd)\n }\n async pushTorrent(torrent) { \n const db = await this.getDb();\n const id = torrent.infoHash;\n return await db.put('torrents', {id, torrent});\n }\n async pullTorrent(infoHash) { \n const db = await this.getDb();\n const data = await db.get('torrents', infoHash);\n if (data) return data.torrent;\n return null;\n }\n async setRecentTorrent(torrent, pwd) { \n const db = await this.getDb();\n const id = torrent.infoHash;\n const name = torrent.name;\n const infoHash = torrent.infoHash;\n const timestamp = Date.now();\n const data = {id, infoHash, name, pwd, timestamp};\n await db.put('recentTorrents', data);\n return data;\n }\n async getRecentTorrents() { \n const db = await this.getDb();\n return await db.getAll('recentTorrents');\n }\n async updateUserSettings(data) { \n const db = await this.getDb();\n data.id = 1;\n return await db.put('userSettings', data);\n }\n async getUserSettings() {\n const db = await this.getDb();\n const data = await db.get('userSettings', 1);\n if (!data) return {};\n return data;\n }\n}\n\nclass FakeDb {\n async updateUserSettings(data) { }\n async getUserSettings() { return {}; }\n async updateFileState(data) { return {}; }\n async getFileState(data) { return null; }\n async getCurrentDirFileStates(data) { return []; }\n async pushTorrent(data) { }\n async pullTorrent(data) { return null; }\n async setRecentTorrent(data) { return {}; }\n async getRecentTorrents() { return []; }\n}\n\nexport async function createDb() {\n if (!('indexedDB' in window)) {\n debug('This browser doesn\\'t support IndexedDB');\n return new FakeDb();\n }\n const db = new Db();\n try {\n await db.getUserSettings();\n } catch(e) {\n debug(e);\n return new FakeDb();\n }\n return db;\n}","Object.assign(MediaElementPlayer.prototype, {\n async builddownload(player, controls, layers) {\n const store = this.options.store;\n let {getters, dispatch} = store;\n player.downloadButton = document.createElement('div');\n\t\tplayer.downloadButton.className = `${this.options.classPrefix}button ${this.options.classPrefix}download-button`;\n\t\tplayer.downloadButton.innerHTML =\n\t\t\t``;\n\t\tthis.addControlElement(player.downloadButton, 'download');\n const t = (e) => {\n e.stopPropagation();\n e.preventDefault();\n dispatch('download', '/' + getters.filePath);\n }\n player.downloadButton.addEventListener('click', t);\n },\n})","const debug = require('debug')('webtor:lib:message');\nfunction inIframe() {\n try {\n return window.self !== window.top;\n } catch (e) {\n return true;\n }\n}\nconst urlParams = new URLSearchParams(window.location.search);\nconst id = urlParams.get('id');\ndebug('using message id=%o', id);\nconst message = {\n id() {\n return id;\n },\n send(m, data = {}) {\n if (!inIframe) return;\n if (!id) {\n m = 'webtor: ' + m;\n } else {\n m = {\n id,\n name: m,\n data,\n };\n }\n debug('post message=%o data=%o', m, data);\n window.parent.postMessage(m, '*');\n },\n receiveOnce(name) {\n return new Promise((resolve, reject) => {\n const func = (event) => {\n const d = event.data;\n if (!id) {\n window.removeEventListener('message', func);\n resolve();\n }\n if (d.id == id && d.name == name) {\n debug('receive message=%o', d);\n window.removeEventListener('message', func);\n resolve(d.data);\n }\n }\n window.addEventListener('message', func);\n });\n },\n receive(name, callback) {\n window.addEventListener('message', function(event) {\n const d = event.data;\n if (d.id == id && d.name == name) {\n debug('receive message=%o', d);\n callback(d.data);\n }\n });\n }\n}\nexport default message;","import {createApp} from './index';\nimport {createDb} from './lib/clientDb';\nimport {analytics} from './lib/analytics';\nimport {createExt} from './lib/ext';\nimport locale from 'locale';\nimport message from './lib/message';\nimport webtor from '@webtor/platform-sdk-js';\nlet url = (window.location != window.parent.location)\n ? document.referrer\n : document.location.href;\nif (url) url = new URL(url);\nlet token = window.__TOKEN__;\nlet user = window.__USER__;\nlet config = JSON.parse(Buffer.from(window.__CONFIG__, 'base64').toString('utf-8'));\nlet injectCode = window.__INJECT_CODE__;\nlet injectHash = window.__INJECT_HASH__;\nif (window.__INITIAL_STATE__ && window.__INITIAL_STATE__.user) {\n user = window.__INITIAL_STATE__.user;\n}\n\nconst sdk = webtor(Object.assign({\n async getToken() {\n if (!token) return null;\n const res = await fetch('/token/', {\n headers: {\n token,\n },\n });\n token = await res.text();\n return token;\n },\n}, config.sdk));\nif (config.ga) {\n analytics(Object.assign({\n appVersion: require('../../package.json').version,\n }, config.ga));\n}\nconst ext = createExt();\nconst routerMode = null;\nconst lang = window.navigator.userLanguage || window.navigator.language;\nconst locales = new locale.Locales(lang);\nlet debug = false;\ntry {\n debug = localStorage && !!localStorage.debug;\n} catch (e) {\n console.log(e);\n}\n(async () => {\n const db = await createDb();\n const {app, router, store} = await createApp({locales,\n routerMode, ext, debug, db, user, sdk, message, url, config, ssr: false, injectCode, injectHash});\n if (window.__INITIAL_STATE__) {\n window.__INITIAL_STATE__.ssr = false;\n store.replaceState(window.__INITIAL_STATE__);\n }\n router.onReady(async() => {\n app.$mount('#app');\n store.dispatch('updateWindowWidth');\n });\n})()\n","import parseTorrent from 'parse-torrent';\nexport default function fileToTorrent(file) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.addEventListener('load', (e) => {\n const arr = new Uint8Array(e.target.result);\n const buffer = new Buffer(arr);\n try {\n resolve(parseTorrent(buffer));\n } catch(e) {\n reject(e);\n }\n });\n reader.addEventListener('error', (err) => {\n reject(err);\n });\n reader.readAsArrayBuffer(file);\n });\n};\n","import Settings from '../../components/App/Show/Player/MediaElement/Settings.vue';\n\nimport registry from '../registry';\n\nObject.assign(MediaElementPlayer.prototype, {\n async buildsettings(player, controls, layers) {\n const store = this.options.store;\n let {state, getters, dispatch} = store;\n // if (getters.deliveryType !== 'webseed') {\n // await dispatch('getMediaInfo');\n // }\n player.settingsButton = document.createElement('div');\n\t\tplayer.settingsButton.className = `${this.options.classPrefix}button ${this.options.classPrefix}settings-button`;\n\t\tplayer.settingsButton.innerHTML =\n\t\t\t``;\n\t\tthis.addControlElement(player.settingsButton, 'settings');\n player.settingsLayer = document.createElement('div');\n player.settingsLayer.className = `${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}settings`;\n const settingsContainer = document.createElement('div');\n player.settingsLayer.appendChild(settingsContainer);\n const playLayer = layers.querySelector(`.${this.options.classPrefix}overlay-play`);\n // playLayer.style.display = 'none';\n\n layers.insertBefore(player.settingsLayer, playLayer);\n player.settingsLayer.style.width = '100%';\n player.settingsLayer.style.height = '100%';\n // player.settingsLayer.click = function(e) {\n // console.log(e);\n // e.preventDefault();\n // return false;\n // }\n let toggle = false;\n const t = () => {\n if (toggle) {\n player.settingsLayer.style.display = 'none';\n } else {\n player.settingsLayer.style.display = '';\n }\n toggle = !toggle;\n }\n registry.buildVue({\n el: settingsContainer,\n render: (h) => h(Settings, {on: {\n close: t,\n }}),\n });\n player.settingsLayer.style.display = 'none';\n player.settingsLayer.style.zIndex = 2;\n player.settingsButton.addEventListener('click', t);\n },\n})","export const PLAY = 'PLAY';\nexport const PLAYING = 'PLAYING';\nexport const PAUSE = 'PAUSE';\nexport const ENDED = 'ENDED';\nexport const SEEKING = 'SEEKING';\nexport const SEEKED = 'SEEKED';\nexport const IDLE = 'IDLE';\n","const nameSuffix = '_with_lang';\nexport function getLangRoute(current, lang = null) {\n const params = Object.assign({}, current.params);\n let name = current.name;\n if (lang) {\n params.lang = lang;\n name = current.meta.lang ? current.name : current.name + nameSuffix;\n\n } else {\n delete params['lang'];\n name = current.meta.lang ? current.name.replace(nameSuffix, '') : current.name;\n }\n return {\n name,\n params,\n query: current.query,\n hash: current.hash,\n };\n}\nexport function addLangRoutes(routes) {\n const routesWithLang = routes.map((r) => {\n return {\n ...r,\n path: `/:lang${r.path}`,\n name: r.name + nameSuffix,\n meta: {\n lang: true,\n },\n pathToRegexpOptions: {strict: true},\n };\n });\n return routes.concat(routesWithLang);\n}\n","export function checkAdBlock() {\n return new Promise((resolve, reject) => {\n let adBlockEnabled = false;\n let testAd = document.createElement('div');\n testAd.innerHTML = ' ';\n testAd.className = 'adsbox';\n document.body.appendChild(testAd);\n setTimeout(function() {\n if (testAd.offsetHeight === 0) {\n adBlockEnabled = true;\n }\n testAd.remove();\n resolve(adBlockEnabled);\n }, 100);\n });\n};\n","import {getLangRoute} from './langRoutes';\nexport function getLangLinks(translations, route, router, baseURL, lang) {\n const res = [];\n for (const key in translations) {\n const r = getLangRoute(route, key);\n const href = baseURL + router.resolve(r).href.replace('#', '');\n res.push({rel: 'alternate', hreflang: key, href})\n if (key == lang) {\n res.push({rel: 'canonical', hreflang: key, href})\n }\n }\n return res;\n}","import Error from '../../components/App/Show/Player/MediaElement/Error.vue';\n\nimport registry from '../registry';\n\nObject.assign(MediaElementPlayer.prototype, {\n async builderror(player, controls, layers) {\n const store = this.options.store;\n player.errorLayer = document.createElement('div');\n player.errorLayer.className = `${this.options.classPrefix}layer ${this.options.classPrefix}overlay ${this.options.classPrefix}error`;\n const errorContainer = document.createElement('div');\n player.errorLayer.appendChild(errorContainer);\n player.errorLayer.style.width = '100%';\n player.errorLayer.style.height = '100%';\n player.errorLayer.style.display = 'none';\n const playLayer = layers.querySelector(`.${this.options.classPrefix}overlay-play`);\n player.media.addEventListener('error', function(e) {\n player.errorLayer.style.display = '';\n });\n layers.insertBefore(player.errorLayer, playLayer);\n registry.buildVue({\n el: errorContainer,\n render: (h) => h(Error),\n });\n },\n})","export default function(pieces, piecesLength, progressLength) {\n const segments = [];\n let curSegment = null; \n let prevPiece = null; \n for (const p of pieces) {\n if (prevPiece != null) {\n if ((p.position - 1) != prevPiece.position) {\n if (curSegment != null) {\n segments.push(curSegment);\n }\n curSegment = {start: p.position, end: p.position + 1};\n } else {\n if (curSegment != null) {\n curSegment.end = p.position + 1;\n }\n }\n } else {\n curSegment = {start: p.position, end: p.position + 1};\n }\n prevPiece = p;\n }\n if (curSegment != null) {\n segments.push(curSegment);\n }\n for (const i in segments) {\n segments[i] = {\n start: segments[i].start / piecesLength * progressLength,\n end: segments[i].end / piecesLength * progressLength,\n };\n }\n return segments;\n}"],"sourceRoot":""} \ No newline at end of file diff --git a/ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js.map.gz b/ui/dist/async_main_c1202e2b.c8a5d568b3002b296cb0.bundle.js.map.gz new file mode 100644 index 0000000000000000000000000000000000000000..2edab46ec733858d383e2397a6504dfe47482a24 GIT binary patch literal 58781 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 literal 0 HcmV?d00001 diff --git a/ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.js b/ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.js deleted file mode 100644 index 91b65a4..0000000 --- a/ui/dist/async_main_c1202e2b.dc63956c75681b023819.bundle.js +++ /dev/null @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{"0Vpd":function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return o}));var a=n("uUTq"),r=n.n(a);const s=n("NOtv")("webtor:lib:ext");class i{init(){return new Promise((e,t)=>{if(window.__webtorInjected)return e();s("wait for initialization"),window.addEventListener("message",t=>{if(t.source==window)return t.data.webtorInjected?e():void 0})})}async fetch(t){return await this.init(),s("request downloadId=%d",t),new Promise((n,a)=>{window.addEventListener("message",t=>{if(t.source==window&&t.data.torrent){const i=new Uint8Array(t.data.torrent.data),o=new e(i.byteLength),l=new Uint8Array(i);for(let e=0;e