From 87e4de77bba780bd57b813bd28112982c030cc78 Mon Sep 17 00:00:00 2001 From: catborise Date: Sat, 7 Nov 2026 17:23:34 +0300 Subject: [PATCH] chore(deps): patch and minor updates of pinned and vendored libraries psycopg 3.3.8, ruff 0.17.4; Chart.js 4.6.1, Ace 1.45.2 (its XML mode and worker are unchanged) and Bootstrap Icons 1.13.2 (font and stylesheet). django-bootstrap5 26.4 and coverage 7.17.2 need Python 3.11 and stay at 26.3 and 7.16.2 while Python 3.10 is supported. No known vulnerability was fixed by them (pip-audit clean before and after). --- conf/requirements.txt | 2 +- dev/requirements.txt | 2 +- static/css/bootstrap-icons.min.css | 6 +++--- static/fonts/bootstrap-icons.woff | Bin 164360 -> 180288 bytes static/fonts/bootstrap-icons.woff2 | Bin 121340 -> 134012 bytes static/js/ace/ace.js | 2 +- static/js/chart.umd.min.js | 8 ++++---- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/conf/requirements.txt b/conf/requirements.txt index 8fa9638e..c6b75a01 100644 --- a/conf/requirements.txt +++ b/conf/requirements.txt @@ -16,7 +16,7 @@ libvirt-python>=9.0.0 lxml>=6.1 openpyxl==3.1.5 paramiko==5.1.0 -psycopg[binary]==3.3.6 +psycopg[binary]==3.3.8 pycdlib==1.22.0 python-engineio==4.15.1 python-socketio==5.18.1 diff --git a/dev/requirements.txt b/dev/requirements.txt index 6f1c42ae..24b14698 100644 --- a/dev/requirements.txt +++ b/dev/requirements.txt @@ -8,6 +8,6 @@ django-debug-toolbar-template-profiler==2.1.0 pip-audit==2.10.1 # the tests read cloud-init's YAML PyYAML==6.0.3 -ruff==0.17.0 +ruff==0.17.4 # tracebacks of failures in manage.py test --parallel tblib==3.2.2 diff --git a/static/css/bootstrap-icons.min.css b/static/css/bootstrap-icons.min.css index e6eab87a..0116c14f 100755 --- a/static/css/bootstrap-icons.min.css +++ b/static/css/bootstrap-icons.min.css @@ -1,5 +1,5 @@ /*! - * Bootstrap Icons v1.10.5 (https://icons.getbootstrap.com/) - * Copyright 2019-2023 The Bootstrap Authors + * Bootstrap Icons v1.13.2 (https://icons.getbootstrap.com/) + * Copyright 2019-2024 The Bootstrap Authors * Licensed under MIT (https://github.com/twbs/icons/blob/main/LICENSE) - */@font-face{font-display:block;font-family:bootstrap-icons;src:url("../fonts/bootstrap-icons.woff2?1fa40e8900654d2863d011707b9fb6f2") format("woff2"),url("../fonts/bootstrap-icons.woff?1fa40e8900654d2863d011707b9fb6f2") format("woff")}.bi::before,[class*=" bi-"]::before,[class^=bi-]::before{display:inline-block;font-family:bootstrap-icons!important;font-style:normal;font-weight:400!important;font-variant:normal;text-transform:none;line-height:1;vertical-align:-.125em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bi-123::before{content:"\f67f"}.bi-alarm-fill::before{content:"\f101"}.bi-alarm::before{content:"\f102"}.bi-align-bottom::before{content:"\f103"}.bi-align-center::before{content:"\f104"}.bi-align-end::before{content:"\f105"}.bi-align-middle::before{content:"\f106"}.bi-align-start::before{content:"\f107"}.bi-align-top::before{content:"\f108"}.bi-alt::before{content:"\f109"}.bi-app-indicator::before{content:"\f10a"}.bi-app::before{content:"\f10b"}.bi-archive-fill::before{content:"\f10c"}.bi-archive::before{content:"\f10d"}.bi-arrow-90deg-down::before{content:"\f10e"}.bi-arrow-90deg-left::before{content:"\f10f"}.bi-arrow-90deg-right::before{content:"\f110"}.bi-arrow-90deg-up::before{content:"\f111"}.bi-arrow-bar-down::before{content:"\f112"}.bi-arrow-bar-left::before{content:"\f113"}.bi-arrow-bar-right::before{content:"\f114"}.bi-arrow-bar-up::before{content:"\f115"}.bi-arrow-clockwise::before{content:"\f116"}.bi-arrow-counterclockwise::before{content:"\f117"}.bi-arrow-down-circle-fill::before{content:"\f118"}.bi-arrow-down-circle::before{content:"\f119"}.bi-arrow-down-left-circle-fill::before{content:"\f11a"}.bi-arrow-down-left-circle::before{content:"\f11b"}.bi-arrow-down-left-square-fill::before{content:"\f11c"}.bi-arrow-down-left-square::before{content:"\f11d"}.bi-arrow-down-left::before{content:"\f11e"}.bi-arrow-down-right-circle-fill::before{content:"\f11f"}.bi-arrow-down-right-circle::before{content:"\f120"}.bi-arrow-down-right-square-fill::before{content:"\f121"}.bi-arrow-down-right-square::before{content:"\f122"}.bi-arrow-down-right::before{content:"\f123"}.bi-arrow-down-short::before{content:"\f124"}.bi-arrow-down-square-fill::before{content:"\f125"}.bi-arrow-down-square::before{content:"\f126"}.bi-arrow-down-up::before{content:"\f127"}.bi-arrow-down::before{content:"\f128"}.bi-arrow-left-circle-fill::before{content:"\f129"}.bi-arrow-left-circle::before{content:"\f12a"}.bi-arrow-left-right::before{content:"\f12b"}.bi-arrow-left-short::before{content:"\f12c"}.bi-arrow-left-square-fill::before{content:"\f12d"}.bi-arrow-left-square::before{content:"\f12e"}.bi-arrow-left::before{content:"\f12f"}.bi-arrow-repeat::before{content:"\f130"}.bi-arrow-return-left::before{content:"\f131"}.bi-arrow-return-right::before{content:"\f132"}.bi-arrow-right-circle-fill::before{content:"\f133"}.bi-arrow-right-circle::before{content:"\f134"}.bi-arrow-right-short::before{content:"\f135"}.bi-arrow-right-square-fill::before{content:"\f136"}.bi-arrow-right-square::before{content:"\f137"}.bi-arrow-right::before{content:"\f138"}.bi-arrow-up-circle-fill::before{content:"\f139"}.bi-arrow-up-circle::before{content:"\f13a"}.bi-arrow-up-left-circle-fill::before{content:"\f13b"}.bi-arrow-up-left-circle::before{content:"\f13c"}.bi-arrow-up-left-square-fill::before{content:"\f13d"}.bi-arrow-up-left-square::before{content:"\f13e"}.bi-arrow-up-left::before{content:"\f13f"}.bi-arrow-up-right-circle-fill::before{content:"\f140"}.bi-arrow-up-right-circle::before{content:"\f141"}.bi-arrow-up-right-square-fill::before{content:"\f142"}.bi-arrow-up-right-square::before{content:"\f143"}.bi-arrow-up-right::before{content:"\f144"}.bi-arrow-up-short::before{content:"\f145"}.bi-arrow-up-square-fill::before{content:"\f146"}.bi-arrow-up-square::before{content:"\f147"}.bi-arrow-up::before{content:"\f148"}.bi-arrows-angle-contract::before{content:"\f149"}.bi-arrows-angle-expand::before{content:"\f14a"}.bi-arrows-collapse::before{content:"\f14b"}.bi-arrows-expand::before{content:"\f14c"}.bi-arrows-fullscreen::before{content:"\f14d"}.bi-arrows-move::before{content:"\f14e"}.bi-aspect-ratio-fill::before{content:"\f14f"}.bi-aspect-ratio::before{content:"\f150"}.bi-asterisk::before{content:"\f151"}.bi-at::before{content:"\f152"}.bi-award-fill::before{content:"\f153"}.bi-award::before{content:"\f154"}.bi-back::before{content:"\f155"}.bi-backspace-fill::before{content:"\f156"}.bi-backspace-reverse-fill::before{content:"\f157"}.bi-backspace-reverse::before{content:"\f158"}.bi-backspace::before{content:"\f159"}.bi-badge-3d-fill::before{content:"\f15a"}.bi-badge-3d::before{content:"\f15b"}.bi-badge-4k-fill::before{content:"\f15c"}.bi-badge-4k::before{content:"\f15d"}.bi-badge-8k-fill::before{content:"\f15e"}.bi-badge-8k::before{content:"\f15f"}.bi-badge-ad-fill::before{content:"\f160"}.bi-badge-ad::before{content:"\f161"}.bi-badge-ar-fill::before{content:"\f162"}.bi-badge-ar::before{content:"\f163"}.bi-badge-cc-fill::before{content:"\f164"}.bi-badge-cc::before{content:"\f165"}.bi-badge-hd-fill::before{content:"\f166"}.bi-badge-hd::before{content:"\f167"}.bi-badge-tm-fill::before{content:"\f168"}.bi-badge-tm::before{content:"\f169"}.bi-badge-vo-fill::before{content:"\f16a"}.bi-badge-vo::before{content:"\f16b"}.bi-badge-vr-fill::before{content:"\f16c"}.bi-badge-vr::before{content:"\f16d"}.bi-badge-wc-fill::before{content:"\f16e"}.bi-badge-wc::before{content:"\f16f"}.bi-bag-check-fill::before{content:"\f170"}.bi-bag-check::before{content:"\f171"}.bi-bag-dash-fill::before{content:"\f172"}.bi-bag-dash::before{content:"\f173"}.bi-bag-fill::before{content:"\f174"}.bi-bag-plus-fill::before{content:"\f175"}.bi-bag-plus::before{content:"\f176"}.bi-bag-x-fill::before{content:"\f177"}.bi-bag-x::before{content:"\f178"}.bi-bag::before{content:"\f179"}.bi-bar-chart-fill::before{content:"\f17a"}.bi-bar-chart-line-fill::before{content:"\f17b"}.bi-bar-chart-line::before{content:"\f17c"}.bi-bar-chart-steps::before{content:"\f17d"}.bi-bar-chart::before{content:"\f17e"}.bi-basket-fill::before{content:"\f17f"}.bi-basket::before{content:"\f180"}.bi-basket2-fill::before{content:"\f181"}.bi-basket2::before{content:"\f182"}.bi-basket3-fill::before{content:"\f183"}.bi-basket3::before{content:"\f184"}.bi-battery-charging::before{content:"\f185"}.bi-battery-full::before{content:"\f186"}.bi-battery-half::before{content:"\f187"}.bi-battery::before{content:"\f188"}.bi-bell-fill::before{content:"\f189"}.bi-bell::before{content:"\f18a"}.bi-bezier::before{content:"\f18b"}.bi-bezier2::before{content:"\f18c"}.bi-bicycle::before{content:"\f18d"}.bi-binoculars-fill::before{content:"\f18e"}.bi-binoculars::before{content:"\f18f"}.bi-blockquote-left::before{content:"\f190"}.bi-blockquote-right::before{content:"\f191"}.bi-book-fill::before{content:"\f192"}.bi-book-half::before{content:"\f193"}.bi-book::before{content:"\f194"}.bi-bookmark-check-fill::before{content:"\f195"}.bi-bookmark-check::before{content:"\f196"}.bi-bookmark-dash-fill::before{content:"\f197"}.bi-bookmark-dash::before{content:"\f198"}.bi-bookmark-fill::before{content:"\f199"}.bi-bookmark-heart-fill::before{content:"\f19a"}.bi-bookmark-heart::before{content:"\f19b"}.bi-bookmark-plus-fill::before{content:"\f19c"}.bi-bookmark-plus::before{content:"\f19d"}.bi-bookmark-star-fill::before{content:"\f19e"}.bi-bookmark-star::before{content:"\f19f"}.bi-bookmark-x-fill::before{content:"\f1a0"}.bi-bookmark-x::before{content:"\f1a1"}.bi-bookmark::before{content:"\f1a2"}.bi-bookmarks-fill::before{content:"\f1a3"}.bi-bookmarks::before{content:"\f1a4"}.bi-bookshelf::before{content:"\f1a5"}.bi-bootstrap-fill::before{content:"\f1a6"}.bi-bootstrap-reboot::before{content:"\f1a7"}.bi-bootstrap::before{content:"\f1a8"}.bi-border-all::before{content:"\f1a9"}.bi-border-bottom::before{content:"\f1aa"}.bi-border-center::before{content:"\f1ab"}.bi-border-inner::before{content:"\f1ac"}.bi-border-left::before{content:"\f1ad"}.bi-border-middle::before{content:"\f1ae"}.bi-border-outer::before{content:"\f1af"}.bi-border-right::before{content:"\f1b0"}.bi-border-style::before{content:"\f1b1"}.bi-border-top::before{content:"\f1b2"}.bi-border-width::before{content:"\f1b3"}.bi-border::before{content:"\f1b4"}.bi-bounding-box-circles::before{content:"\f1b5"}.bi-bounding-box::before{content:"\f1b6"}.bi-box-arrow-down-left::before{content:"\f1b7"}.bi-box-arrow-down-right::before{content:"\f1b8"}.bi-box-arrow-down::before{content:"\f1b9"}.bi-box-arrow-in-down-left::before{content:"\f1ba"}.bi-box-arrow-in-down-right::before{content:"\f1bb"}.bi-box-arrow-in-down::before{content:"\f1bc"}.bi-box-arrow-in-left::before{content:"\f1bd"}.bi-box-arrow-in-right::before{content:"\f1be"}.bi-box-arrow-in-up-left::before{content:"\f1bf"}.bi-box-arrow-in-up-right::before{content:"\f1c0"}.bi-box-arrow-in-up::before{content:"\f1c1"}.bi-box-arrow-left::before{content:"\f1c2"}.bi-box-arrow-right::before{content:"\f1c3"}.bi-box-arrow-up-left::before{content:"\f1c4"}.bi-box-arrow-up-right::before{content:"\f1c5"}.bi-box-arrow-up::before{content:"\f1c6"}.bi-box-seam::before{content:"\f1c7"}.bi-box::before{content:"\f1c8"}.bi-braces::before{content:"\f1c9"}.bi-bricks::before{content:"\f1ca"}.bi-briefcase-fill::before{content:"\f1cb"}.bi-briefcase::before{content:"\f1cc"}.bi-brightness-alt-high-fill::before{content:"\f1cd"}.bi-brightness-alt-high::before{content:"\f1ce"}.bi-brightness-alt-low-fill::before{content:"\f1cf"}.bi-brightness-alt-low::before{content:"\f1d0"}.bi-brightness-high-fill::before{content:"\f1d1"}.bi-brightness-high::before{content:"\f1d2"}.bi-brightness-low-fill::before{content:"\f1d3"}.bi-brightness-low::before{content:"\f1d4"}.bi-broadcast-pin::before{content:"\f1d5"}.bi-broadcast::before{content:"\f1d6"}.bi-brush-fill::before{content:"\f1d7"}.bi-brush::before{content:"\f1d8"}.bi-bucket-fill::before{content:"\f1d9"}.bi-bucket::before{content:"\f1da"}.bi-bug-fill::before{content:"\f1db"}.bi-bug::before{content:"\f1dc"}.bi-building::before{content:"\f1dd"}.bi-bullseye::before{content:"\f1de"}.bi-calculator-fill::before{content:"\f1df"}.bi-calculator::before{content:"\f1e0"}.bi-calendar-check-fill::before{content:"\f1e1"}.bi-calendar-check::before{content:"\f1e2"}.bi-calendar-date-fill::before{content:"\f1e3"}.bi-calendar-date::before{content:"\f1e4"}.bi-calendar-day-fill::before{content:"\f1e5"}.bi-calendar-day::before{content:"\f1e6"}.bi-calendar-event-fill::before{content:"\f1e7"}.bi-calendar-event::before{content:"\f1e8"}.bi-calendar-fill::before{content:"\f1e9"}.bi-calendar-minus-fill::before{content:"\f1ea"}.bi-calendar-minus::before{content:"\f1eb"}.bi-calendar-month-fill::before{content:"\f1ec"}.bi-calendar-month::before{content:"\f1ed"}.bi-calendar-plus-fill::before{content:"\f1ee"}.bi-calendar-plus::before{content:"\f1ef"}.bi-calendar-range-fill::before{content:"\f1f0"}.bi-calendar-range::before{content:"\f1f1"}.bi-calendar-week-fill::before{content:"\f1f2"}.bi-calendar-week::before{content:"\f1f3"}.bi-calendar-x-fill::before{content:"\f1f4"}.bi-calendar-x::before{content:"\f1f5"}.bi-calendar::before{content:"\f1f6"}.bi-calendar2-check-fill::before{content:"\f1f7"}.bi-calendar2-check::before{content:"\f1f8"}.bi-calendar2-date-fill::before{content:"\f1f9"}.bi-calendar2-date::before{content:"\f1fa"}.bi-calendar2-day-fill::before{content:"\f1fb"}.bi-calendar2-day::before{content:"\f1fc"}.bi-calendar2-event-fill::before{content:"\f1fd"}.bi-calendar2-event::before{content:"\f1fe"}.bi-calendar2-fill::before{content:"\f1ff"}.bi-calendar2-minus-fill::before{content:"\f200"}.bi-calendar2-minus::before{content:"\f201"}.bi-calendar2-month-fill::before{content:"\f202"}.bi-calendar2-month::before{content:"\f203"}.bi-calendar2-plus-fill::before{content:"\f204"}.bi-calendar2-plus::before{content:"\f205"}.bi-calendar2-range-fill::before{content:"\f206"}.bi-calendar2-range::before{content:"\f207"}.bi-calendar2-week-fill::before{content:"\f208"}.bi-calendar2-week::before{content:"\f209"}.bi-calendar2-x-fill::before{content:"\f20a"}.bi-calendar2-x::before{content:"\f20b"}.bi-calendar2::before{content:"\f20c"}.bi-calendar3-event-fill::before{content:"\f20d"}.bi-calendar3-event::before{content:"\f20e"}.bi-calendar3-fill::before{content:"\f20f"}.bi-calendar3-range-fill::before{content:"\f210"}.bi-calendar3-range::before{content:"\f211"}.bi-calendar3-week-fill::before{content:"\f212"}.bi-calendar3-week::before{content:"\f213"}.bi-calendar3::before{content:"\f214"}.bi-calendar4-event::before{content:"\f215"}.bi-calendar4-range::before{content:"\f216"}.bi-calendar4-week::before{content:"\f217"}.bi-calendar4::before{content:"\f218"}.bi-camera-fill::before{content:"\f219"}.bi-camera-reels-fill::before{content:"\f21a"}.bi-camera-reels::before{content:"\f21b"}.bi-camera-video-fill::before{content:"\f21c"}.bi-camera-video-off-fill::before{content:"\f21d"}.bi-camera-video-off::before{content:"\f21e"}.bi-camera-video::before{content:"\f21f"}.bi-camera::before{content:"\f220"}.bi-camera2::before{content:"\f221"}.bi-capslock-fill::before{content:"\f222"}.bi-capslock::before{content:"\f223"}.bi-card-checklist::before{content:"\f224"}.bi-card-heading::before{content:"\f225"}.bi-card-image::before{content:"\f226"}.bi-card-list::before{content:"\f227"}.bi-card-text::before{content:"\f228"}.bi-caret-down-fill::before{content:"\f229"}.bi-caret-down-square-fill::before{content:"\f22a"}.bi-caret-down-square::before{content:"\f22b"}.bi-caret-down::before{content:"\f22c"}.bi-caret-left-fill::before{content:"\f22d"}.bi-caret-left-square-fill::before{content:"\f22e"}.bi-caret-left-square::before{content:"\f22f"}.bi-caret-left::before{content:"\f230"}.bi-caret-right-fill::before{content:"\f231"}.bi-caret-right-square-fill::before{content:"\f232"}.bi-caret-right-square::before{content:"\f233"}.bi-caret-right::before{content:"\f234"}.bi-caret-up-fill::before{content:"\f235"}.bi-caret-up-square-fill::before{content:"\f236"}.bi-caret-up-square::before{content:"\f237"}.bi-caret-up::before{content:"\f238"}.bi-cart-check-fill::before{content:"\f239"}.bi-cart-check::before{content:"\f23a"}.bi-cart-dash-fill::before{content:"\f23b"}.bi-cart-dash::before{content:"\f23c"}.bi-cart-fill::before{content:"\f23d"}.bi-cart-plus-fill::before{content:"\f23e"}.bi-cart-plus::before{content:"\f23f"}.bi-cart-x-fill::before{content:"\f240"}.bi-cart-x::before{content:"\f241"}.bi-cart::before{content:"\f242"}.bi-cart2::before{content:"\f243"}.bi-cart3::before{content:"\f244"}.bi-cart4::before{content:"\f245"}.bi-cash-stack::before{content:"\f246"}.bi-cash::before{content:"\f247"}.bi-cast::before{content:"\f248"}.bi-chat-dots-fill::before{content:"\f249"}.bi-chat-dots::before{content:"\f24a"}.bi-chat-fill::before{content:"\f24b"}.bi-chat-left-dots-fill::before{content:"\f24c"}.bi-chat-left-dots::before{content:"\f24d"}.bi-chat-left-fill::before{content:"\f24e"}.bi-chat-left-quote-fill::before{content:"\f24f"}.bi-chat-left-quote::before{content:"\f250"}.bi-chat-left-text-fill::before{content:"\f251"}.bi-chat-left-text::before{content:"\f252"}.bi-chat-left::before{content:"\f253"}.bi-chat-quote-fill::before{content:"\f254"}.bi-chat-quote::before{content:"\f255"}.bi-chat-right-dots-fill::before{content:"\f256"}.bi-chat-right-dots::before{content:"\f257"}.bi-chat-right-fill::before{content:"\f258"}.bi-chat-right-quote-fill::before{content:"\f259"}.bi-chat-right-quote::before{content:"\f25a"}.bi-chat-right-text-fill::before{content:"\f25b"}.bi-chat-right-text::before{content:"\f25c"}.bi-chat-right::before{content:"\f25d"}.bi-chat-square-dots-fill::before{content:"\f25e"}.bi-chat-square-dots::before{content:"\f25f"}.bi-chat-square-fill::before{content:"\f260"}.bi-chat-square-quote-fill::before{content:"\f261"}.bi-chat-square-quote::before{content:"\f262"}.bi-chat-square-text-fill::before{content:"\f263"}.bi-chat-square-text::before{content:"\f264"}.bi-chat-square::before{content:"\f265"}.bi-chat-text-fill::before{content:"\f266"}.bi-chat-text::before{content:"\f267"}.bi-chat::before{content:"\f268"}.bi-check-all::before{content:"\f269"}.bi-check-circle-fill::before{content:"\f26a"}.bi-check-circle::before{content:"\f26b"}.bi-check-square-fill::before{content:"\f26c"}.bi-check-square::before{content:"\f26d"}.bi-check::before{content:"\f26e"}.bi-check2-all::before{content:"\f26f"}.bi-check2-circle::before{content:"\f270"}.bi-check2-square::before{content:"\f271"}.bi-check2::before{content:"\f272"}.bi-chevron-bar-contract::before{content:"\f273"}.bi-chevron-bar-down::before{content:"\f274"}.bi-chevron-bar-expand::before{content:"\f275"}.bi-chevron-bar-left::before{content:"\f276"}.bi-chevron-bar-right::before{content:"\f277"}.bi-chevron-bar-up::before{content:"\f278"}.bi-chevron-compact-down::before{content:"\f279"}.bi-chevron-compact-left::before{content:"\f27a"}.bi-chevron-compact-right::before{content:"\f27b"}.bi-chevron-compact-up::before{content:"\f27c"}.bi-chevron-contract::before{content:"\f27d"}.bi-chevron-double-down::before{content:"\f27e"}.bi-chevron-double-left::before{content:"\f27f"}.bi-chevron-double-right::before{content:"\f280"}.bi-chevron-double-up::before{content:"\f281"}.bi-chevron-down::before{content:"\f282"}.bi-chevron-expand::before{content:"\f283"}.bi-chevron-left::before{content:"\f284"}.bi-chevron-right::before{content:"\f285"}.bi-chevron-up::before{content:"\f286"}.bi-circle-fill::before{content:"\f287"}.bi-circle-half::before{content:"\f288"}.bi-circle-square::before{content:"\f289"}.bi-circle::before{content:"\f28a"}.bi-clipboard-check::before{content:"\f28b"}.bi-clipboard-data::before{content:"\f28c"}.bi-clipboard-minus::before{content:"\f28d"}.bi-clipboard-plus::before{content:"\f28e"}.bi-clipboard-x::before{content:"\f28f"}.bi-clipboard::before{content:"\f290"}.bi-clock-fill::before{content:"\f291"}.bi-clock-history::before{content:"\f292"}.bi-clock::before{content:"\f293"}.bi-cloud-arrow-down-fill::before{content:"\f294"}.bi-cloud-arrow-down::before{content:"\f295"}.bi-cloud-arrow-up-fill::before{content:"\f296"}.bi-cloud-arrow-up::before{content:"\f297"}.bi-cloud-check-fill::before{content:"\f298"}.bi-cloud-check::before{content:"\f299"}.bi-cloud-download-fill::before{content:"\f29a"}.bi-cloud-download::before{content:"\f29b"}.bi-cloud-drizzle-fill::before{content:"\f29c"}.bi-cloud-drizzle::before{content:"\f29d"}.bi-cloud-fill::before{content:"\f29e"}.bi-cloud-fog-fill::before{content:"\f29f"}.bi-cloud-fog::before{content:"\f2a0"}.bi-cloud-fog2-fill::before{content:"\f2a1"}.bi-cloud-fog2::before{content:"\f2a2"}.bi-cloud-hail-fill::before{content:"\f2a3"}.bi-cloud-hail::before{content:"\f2a4"}.bi-cloud-haze-fill::before{content:"\f2a6"}.bi-cloud-haze::before{content:"\f2a7"}.bi-cloud-haze2-fill::before{content:"\f2a8"}.bi-cloud-lightning-fill::before{content:"\f2a9"}.bi-cloud-lightning-rain-fill::before{content:"\f2aa"}.bi-cloud-lightning-rain::before{content:"\f2ab"}.bi-cloud-lightning::before{content:"\f2ac"}.bi-cloud-minus-fill::before{content:"\f2ad"}.bi-cloud-minus::before{content:"\f2ae"}.bi-cloud-moon-fill::before{content:"\f2af"}.bi-cloud-moon::before{content:"\f2b0"}.bi-cloud-plus-fill::before{content:"\f2b1"}.bi-cloud-plus::before{content:"\f2b2"}.bi-cloud-rain-fill::before{content:"\f2b3"}.bi-cloud-rain-heavy-fill::before{content:"\f2b4"}.bi-cloud-rain-heavy::before{content:"\f2b5"}.bi-cloud-rain::before{content:"\f2b6"}.bi-cloud-slash-fill::before{content:"\f2b7"}.bi-cloud-slash::before{content:"\f2b8"}.bi-cloud-sleet-fill::before{content:"\f2b9"}.bi-cloud-sleet::before{content:"\f2ba"}.bi-cloud-snow-fill::before{content:"\f2bb"}.bi-cloud-snow::before{content:"\f2bc"}.bi-cloud-sun-fill::before{content:"\f2bd"}.bi-cloud-sun::before{content:"\f2be"}.bi-cloud-upload-fill::before{content:"\f2bf"}.bi-cloud-upload::before{content:"\f2c0"}.bi-cloud::before{content:"\f2c1"}.bi-clouds-fill::before{content:"\f2c2"}.bi-clouds::before{content:"\f2c3"}.bi-cloudy-fill::before{content:"\f2c4"}.bi-cloudy::before{content:"\f2c5"}.bi-code-slash::before{content:"\f2c6"}.bi-code-square::before{content:"\f2c7"}.bi-code::before{content:"\f2c8"}.bi-collection-fill::before{content:"\f2c9"}.bi-collection-play-fill::before{content:"\f2ca"}.bi-collection-play::before{content:"\f2cb"}.bi-collection::before{content:"\f2cc"}.bi-columns-gap::before{content:"\f2cd"}.bi-columns::before{content:"\f2ce"}.bi-command::before{content:"\f2cf"}.bi-compass-fill::before{content:"\f2d0"}.bi-compass::before{content:"\f2d1"}.bi-cone-striped::before{content:"\f2d2"}.bi-cone::before{content:"\f2d3"}.bi-controller::before{content:"\f2d4"}.bi-cpu-fill::before{content:"\f2d5"}.bi-cpu::before{content:"\f2d6"}.bi-credit-card-2-back-fill::before{content:"\f2d7"}.bi-credit-card-2-back::before{content:"\f2d8"}.bi-credit-card-2-front-fill::before{content:"\f2d9"}.bi-credit-card-2-front::before{content:"\f2da"}.bi-credit-card-fill::before{content:"\f2db"}.bi-credit-card::before{content:"\f2dc"}.bi-crop::before{content:"\f2dd"}.bi-cup-fill::before{content:"\f2de"}.bi-cup-straw::before{content:"\f2df"}.bi-cup::before{content:"\f2e0"}.bi-cursor-fill::before{content:"\f2e1"}.bi-cursor-text::before{content:"\f2e2"}.bi-cursor::before{content:"\f2e3"}.bi-dash-circle-dotted::before{content:"\f2e4"}.bi-dash-circle-fill::before{content:"\f2e5"}.bi-dash-circle::before{content:"\f2e6"}.bi-dash-square-dotted::before{content:"\f2e7"}.bi-dash-square-fill::before{content:"\f2e8"}.bi-dash-square::before{content:"\f2e9"}.bi-dash::before{content:"\f2ea"}.bi-diagram-2-fill::before{content:"\f2eb"}.bi-diagram-2::before{content:"\f2ec"}.bi-diagram-3-fill::before{content:"\f2ed"}.bi-diagram-3::before{content:"\f2ee"}.bi-diamond-fill::before{content:"\f2ef"}.bi-diamond-half::before{content:"\f2f0"}.bi-diamond::before{content:"\f2f1"}.bi-dice-1-fill::before{content:"\f2f2"}.bi-dice-1::before{content:"\f2f3"}.bi-dice-2-fill::before{content:"\f2f4"}.bi-dice-2::before{content:"\f2f5"}.bi-dice-3-fill::before{content:"\f2f6"}.bi-dice-3::before{content:"\f2f7"}.bi-dice-4-fill::before{content:"\f2f8"}.bi-dice-4::before{content:"\f2f9"}.bi-dice-5-fill::before{content:"\f2fa"}.bi-dice-5::before{content:"\f2fb"}.bi-dice-6-fill::before{content:"\f2fc"}.bi-dice-6::before{content:"\f2fd"}.bi-disc-fill::before{content:"\f2fe"}.bi-disc::before{content:"\f2ff"}.bi-discord::before{content:"\f300"}.bi-display-fill::before{content:"\f301"}.bi-display::before{content:"\f302"}.bi-distribute-horizontal::before{content:"\f303"}.bi-distribute-vertical::before{content:"\f304"}.bi-door-closed-fill::before{content:"\f305"}.bi-door-closed::before{content:"\f306"}.bi-door-open-fill::before{content:"\f307"}.bi-door-open::before{content:"\f308"}.bi-dot::before{content:"\f309"}.bi-download::before{content:"\f30a"}.bi-droplet-fill::before{content:"\f30b"}.bi-droplet-half::before{content:"\f30c"}.bi-droplet::before{content:"\f30d"}.bi-earbuds::before{content:"\f30e"}.bi-easel-fill::before{content:"\f30f"}.bi-easel::before{content:"\f310"}.bi-egg-fill::before{content:"\f311"}.bi-egg-fried::before{content:"\f312"}.bi-egg::before{content:"\f313"}.bi-eject-fill::before{content:"\f314"}.bi-eject::before{content:"\f315"}.bi-emoji-angry-fill::before{content:"\f316"}.bi-emoji-angry::before{content:"\f317"}.bi-emoji-dizzy-fill::before{content:"\f318"}.bi-emoji-dizzy::before{content:"\f319"}.bi-emoji-expressionless-fill::before{content:"\f31a"}.bi-emoji-expressionless::before{content:"\f31b"}.bi-emoji-frown-fill::before{content:"\f31c"}.bi-emoji-frown::before{content:"\f31d"}.bi-emoji-heart-eyes-fill::before{content:"\f31e"}.bi-emoji-heart-eyes::before{content:"\f31f"}.bi-emoji-laughing-fill::before{content:"\f320"}.bi-emoji-laughing::before{content:"\f321"}.bi-emoji-neutral-fill::before{content:"\f322"}.bi-emoji-neutral::before{content:"\f323"}.bi-emoji-smile-fill::before{content:"\f324"}.bi-emoji-smile-upside-down-fill::before{content:"\f325"}.bi-emoji-smile-upside-down::before{content:"\f326"}.bi-emoji-smile::before{content:"\f327"}.bi-emoji-sunglasses-fill::before{content:"\f328"}.bi-emoji-sunglasses::before{content:"\f329"}.bi-emoji-wink-fill::before{content:"\f32a"}.bi-emoji-wink::before{content:"\f32b"}.bi-envelope-fill::before{content:"\f32c"}.bi-envelope-open-fill::before{content:"\f32d"}.bi-envelope-open::before{content:"\f32e"}.bi-envelope::before{content:"\f32f"}.bi-eraser-fill::before{content:"\f330"}.bi-eraser::before{content:"\f331"}.bi-exclamation-circle-fill::before{content:"\f332"}.bi-exclamation-circle::before{content:"\f333"}.bi-exclamation-diamond-fill::before{content:"\f334"}.bi-exclamation-diamond::before{content:"\f335"}.bi-exclamation-octagon-fill::before{content:"\f336"}.bi-exclamation-octagon::before{content:"\f337"}.bi-exclamation-square-fill::before{content:"\f338"}.bi-exclamation-square::before{content:"\f339"}.bi-exclamation-triangle-fill::before{content:"\f33a"}.bi-exclamation-triangle::before{content:"\f33b"}.bi-exclamation::before{content:"\f33c"}.bi-exclude::before{content:"\f33d"}.bi-eye-fill::before{content:"\f33e"}.bi-eye-slash-fill::before{content:"\f33f"}.bi-eye-slash::before{content:"\f340"}.bi-eye::before{content:"\f341"}.bi-eyedropper::before{content:"\f342"}.bi-eyeglasses::before{content:"\f343"}.bi-facebook::before{content:"\f344"}.bi-file-arrow-down-fill::before{content:"\f345"}.bi-file-arrow-down::before{content:"\f346"}.bi-file-arrow-up-fill::before{content:"\f347"}.bi-file-arrow-up::before{content:"\f348"}.bi-file-bar-graph-fill::before{content:"\f349"}.bi-file-bar-graph::before{content:"\f34a"}.bi-file-binary-fill::before{content:"\f34b"}.bi-file-binary::before{content:"\f34c"}.bi-file-break-fill::before{content:"\f34d"}.bi-file-break::before{content:"\f34e"}.bi-file-check-fill::before{content:"\f34f"}.bi-file-check::before{content:"\f350"}.bi-file-code-fill::before{content:"\f351"}.bi-file-code::before{content:"\f352"}.bi-file-diff-fill::before{content:"\f353"}.bi-file-diff::before{content:"\f354"}.bi-file-earmark-arrow-down-fill::before{content:"\f355"}.bi-file-earmark-arrow-down::before{content:"\f356"}.bi-file-earmark-arrow-up-fill::before{content:"\f357"}.bi-file-earmark-arrow-up::before{content:"\f358"}.bi-file-earmark-bar-graph-fill::before{content:"\f359"}.bi-file-earmark-bar-graph::before{content:"\f35a"}.bi-file-earmark-binary-fill::before{content:"\f35b"}.bi-file-earmark-binary::before{content:"\f35c"}.bi-file-earmark-break-fill::before{content:"\f35d"}.bi-file-earmark-break::before{content:"\f35e"}.bi-file-earmark-check-fill::before{content:"\f35f"}.bi-file-earmark-check::before{content:"\f360"}.bi-file-earmark-code-fill::before{content:"\f361"}.bi-file-earmark-code::before{content:"\f362"}.bi-file-earmark-diff-fill::before{content:"\f363"}.bi-file-earmark-diff::before{content:"\f364"}.bi-file-earmark-easel-fill::before{content:"\f365"}.bi-file-earmark-easel::before{content:"\f366"}.bi-file-earmark-excel-fill::before{content:"\f367"}.bi-file-earmark-excel::before{content:"\f368"}.bi-file-earmark-fill::before{content:"\f369"}.bi-file-earmark-font-fill::before{content:"\f36a"}.bi-file-earmark-font::before{content:"\f36b"}.bi-file-earmark-image-fill::before{content:"\f36c"}.bi-file-earmark-image::before{content:"\f36d"}.bi-file-earmark-lock-fill::before{content:"\f36e"}.bi-file-earmark-lock::before{content:"\f36f"}.bi-file-earmark-lock2-fill::before{content:"\f370"}.bi-file-earmark-lock2::before{content:"\f371"}.bi-file-earmark-medical-fill::before{content:"\f372"}.bi-file-earmark-medical::before{content:"\f373"}.bi-file-earmark-minus-fill::before{content:"\f374"}.bi-file-earmark-minus::before{content:"\f375"}.bi-file-earmark-music-fill::before{content:"\f376"}.bi-file-earmark-music::before{content:"\f377"}.bi-file-earmark-person-fill::before{content:"\f378"}.bi-file-earmark-person::before{content:"\f379"}.bi-file-earmark-play-fill::before{content:"\f37a"}.bi-file-earmark-play::before{content:"\f37b"}.bi-file-earmark-plus-fill::before{content:"\f37c"}.bi-file-earmark-plus::before{content:"\f37d"}.bi-file-earmark-post-fill::before{content:"\f37e"}.bi-file-earmark-post::before{content:"\f37f"}.bi-file-earmark-ppt-fill::before{content:"\f380"}.bi-file-earmark-ppt::before{content:"\f381"}.bi-file-earmark-richtext-fill::before{content:"\f382"}.bi-file-earmark-richtext::before{content:"\f383"}.bi-file-earmark-ruled-fill::before{content:"\f384"}.bi-file-earmark-ruled::before{content:"\f385"}.bi-file-earmark-slides-fill::before{content:"\f386"}.bi-file-earmark-slides::before{content:"\f387"}.bi-file-earmark-spreadsheet-fill::before{content:"\f388"}.bi-file-earmark-spreadsheet::before{content:"\f389"}.bi-file-earmark-text-fill::before{content:"\f38a"}.bi-file-earmark-text::before{content:"\f38b"}.bi-file-earmark-word-fill::before{content:"\f38c"}.bi-file-earmark-word::before{content:"\f38d"}.bi-file-earmark-x-fill::before{content:"\f38e"}.bi-file-earmark-x::before{content:"\f38f"}.bi-file-earmark-zip-fill::before{content:"\f390"}.bi-file-earmark-zip::before{content:"\f391"}.bi-file-earmark::before{content:"\f392"}.bi-file-easel-fill::before{content:"\f393"}.bi-file-easel::before{content:"\f394"}.bi-file-excel-fill::before{content:"\f395"}.bi-file-excel::before{content:"\f396"}.bi-file-fill::before{content:"\f397"}.bi-file-font-fill::before{content:"\f398"}.bi-file-font::before{content:"\f399"}.bi-file-image-fill::before{content:"\f39a"}.bi-file-image::before{content:"\f39b"}.bi-file-lock-fill::before{content:"\f39c"}.bi-file-lock::before{content:"\f39d"}.bi-file-lock2-fill::before{content:"\f39e"}.bi-file-lock2::before{content:"\f39f"}.bi-file-medical-fill::before{content:"\f3a0"}.bi-file-medical::before{content:"\f3a1"}.bi-file-minus-fill::before{content:"\f3a2"}.bi-file-minus::before{content:"\f3a3"}.bi-file-music-fill::before{content:"\f3a4"}.bi-file-music::before{content:"\f3a5"}.bi-file-person-fill::before{content:"\f3a6"}.bi-file-person::before{content:"\f3a7"}.bi-file-play-fill::before{content:"\f3a8"}.bi-file-play::before{content:"\f3a9"}.bi-file-plus-fill::before{content:"\f3aa"}.bi-file-plus::before{content:"\f3ab"}.bi-file-post-fill::before{content:"\f3ac"}.bi-file-post::before{content:"\f3ad"}.bi-file-ppt-fill::before{content:"\f3ae"}.bi-file-ppt::before{content:"\f3af"}.bi-file-richtext-fill::before{content:"\f3b0"}.bi-file-richtext::before{content:"\f3b1"}.bi-file-ruled-fill::before{content:"\f3b2"}.bi-file-ruled::before{content:"\f3b3"}.bi-file-slides-fill::before{content:"\f3b4"}.bi-file-slides::before{content:"\f3b5"}.bi-file-spreadsheet-fill::before{content:"\f3b6"}.bi-file-spreadsheet::before{content:"\f3b7"}.bi-file-text-fill::before{content:"\f3b8"}.bi-file-text::before{content:"\f3b9"}.bi-file-word-fill::before{content:"\f3ba"}.bi-file-word::before{content:"\f3bb"}.bi-file-x-fill::before{content:"\f3bc"}.bi-file-x::before{content:"\f3bd"}.bi-file-zip-fill::before{content:"\f3be"}.bi-file-zip::before{content:"\f3bf"}.bi-file::before{content:"\f3c0"}.bi-files-alt::before{content:"\f3c1"}.bi-files::before{content:"\f3c2"}.bi-film::before{content:"\f3c3"}.bi-filter-circle-fill::before{content:"\f3c4"}.bi-filter-circle::before{content:"\f3c5"}.bi-filter-left::before{content:"\f3c6"}.bi-filter-right::before{content:"\f3c7"}.bi-filter-square-fill::before{content:"\f3c8"}.bi-filter-square::before{content:"\f3c9"}.bi-filter::before{content:"\f3ca"}.bi-flag-fill::before{content:"\f3cb"}.bi-flag::before{content:"\f3cc"}.bi-flower1::before{content:"\f3cd"}.bi-flower2::before{content:"\f3ce"}.bi-flower3::before{content:"\f3cf"}.bi-folder-check::before{content:"\f3d0"}.bi-folder-fill::before{content:"\f3d1"}.bi-folder-minus::before{content:"\f3d2"}.bi-folder-plus::before{content:"\f3d3"}.bi-folder-symlink-fill::before{content:"\f3d4"}.bi-folder-symlink::before{content:"\f3d5"}.bi-folder-x::before{content:"\f3d6"}.bi-folder::before{content:"\f3d7"}.bi-folder2-open::before{content:"\f3d8"}.bi-folder2::before{content:"\f3d9"}.bi-fonts::before{content:"\f3da"}.bi-forward-fill::before{content:"\f3db"}.bi-forward::before{content:"\f3dc"}.bi-front::before{content:"\f3dd"}.bi-fullscreen-exit::before{content:"\f3de"}.bi-fullscreen::before{content:"\f3df"}.bi-funnel-fill::before{content:"\f3e0"}.bi-funnel::before{content:"\f3e1"}.bi-gear-fill::before{content:"\f3e2"}.bi-gear-wide-connected::before{content:"\f3e3"}.bi-gear-wide::before{content:"\f3e4"}.bi-gear::before{content:"\f3e5"}.bi-gem::before{content:"\f3e6"}.bi-geo-alt-fill::before{content:"\f3e7"}.bi-geo-alt::before{content:"\f3e8"}.bi-geo-fill::before{content:"\f3e9"}.bi-geo::before{content:"\f3ea"}.bi-gift-fill::before{content:"\f3eb"}.bi-gift::before{content:"\f3ec"}.bi-github::before{content:"\f3ed"}.bi-globe::before{content:"\f3ee"}.bi-globe2::before{content:"\f3ef"}.bi-google::before{content:"\f3f0"}.bi-graph-down::before{content:"\f3f1"}.bi-graph-up::before{content:"\f3f2"}.bi-grid-1x2-fill::before{content:"\f3f3"}.bi-grid-1x2::before{content:"\f3f4"}.bi-grid-3x2-gap-fill::before{content:"\f3f5"}.bi-grid-3x2-gap::before{content:"\f3f6"}.bi-grid-3x2::before{content:"\f3f7"}.bi-grid-3x3-gap-fill::before{content:"\f3f8"}.bi-grid-3x3-gap::before{content:"\f3f9"}.bi-grid-3x3::before{content:"\f3fa"}.bi-grid-fill::before{content:"\f3fb"}.bi-grid::before{content:"\f3fc"}.bi-grip-horizontal::before{content:"\f3fd"}.bi-grip-vertical::before{content:"\f3fe"}.bi-hammer::before{content:"\f3ff"}.bi-hand-index-fill::before{content:"\f400"}.bi-hand-index-thumb-fill::before{content:"\f401"}.bi-hand-index-thumb::before{content:"\f402"}.bi-hand-index::before{content:"\f403"}.bi-hand-thumbs-down-fill::before{content:"\f404"}.bi-hand-thumbs-down::before{content:"\f405"}.bi-hand-thumbs-up-fill::before{content:"\f406"}.bi-hand-thumbs-up::before{content:"\f407"}.bi-handbag-fill::before{content:"\f408"}.bi-handbag::before{content:"\f409"}.bi-hash::before{content:"\f40a"}.bi-hdd-fill::before{content:"\f40b"}.bi-hdd-network-fill::before{content:"\f40c"}.bi-hdd-network::before{content:"\f40d"}.bi-hdd-rack-fill::before{content:"\f40e"}.bi-hdd-rack::before{content:"\f40f"}.bi-hdd-stack-fill::before{content:"\f410"}.bi-hdd-stack::before{content:"\f411"}.bi-hdd::before{content:"\f412"}.bi-headphones::before{content:"\f413"}.bi-headset::before{content:"\f414"}.bi-heart-fill::before{content:"\f415"}.bi-heart-half::before{content:"\f416"}.bi-heart::before{content:"\f417"}.bi-heptagon-fill::before{content:"\f418"}.bi-heptagon-half::before{content:"\f419"}.bi-heptagon::before{content:"\f41a"}.bi-hexagon-fill::before{content:"\f41b"}.bi-hexagon-half::before{content:"\f41c"}.bi-hexagon::before{content:"\f41d"}.bi-hourglass-bottom::before{content:"\f41e"}.bi-hourglass-split::before{content:"\f41f"}.bi-hourglass-top::before{content:"\f420"}.bi-hourglass::before{content:"\f421"}.bi-house-door-fill::before{content:"\f422"}.bi-house-door::before{content:"\f423"}.bi-house-fill::before{content:"\f424"}.bi-house::before{content:"\f425"}.bi-hr::before{content:"\f426"}.bi-hurricane::before{content:"\f427"}.bi-image-alt::before{content:"\f428"}.bi-image-fill::before{content:"\f429"}.bi-image::before{content:"\f42a"}.bi-images::before{content:"\f42b"}.bi-inbox-fill::before{content:"\f42c"}.bi-inbox::before{content:"\f42d"}.bi-inboxes-fill::before{content:"\f42e"}.bi-inboxes::before{content:"\f42f"}.bi-info-circle-fill::before{content:"\f430"}.bi-info-circle::before{content:"\f431"}.bi-info-square-fill::before{content:"\f432"}.bi-info-square::before{content:"\f433"}.bi-info::before{content:"\f434"}.bi-input-cursor-text::before{content:"\f435"}.bi-input-cursor::before{content:"\f436"}.bi-instagram::before{content:"\f437"}.bi-intersect::before{content:"\f438"}.bi-journal-album::before{content:"\f439"}.bi-journal-arrow-down::before{content:"\f43a"}.bi-journal-arrow-up::before{content:"\f43b"}.bi-journal-bookmark-fill::before{content:"\f43c"}.bi-journal-bookmark::before{content:"\f43d"}.bi-journal-check::before{content:"\f43e"}.bi-journal-code::before{content:"\f43f"}.bi-journal-medical::before{content:"\f440"}.bi-journal-minus::before{content:"\f441"}.bi-journal-plus::before{content:"\f442"}.bi-journal-richtext::before{content:"\f443"}.bi-journal-text::before{content:"\f444"}.bi-journal-x::before{content:"\f445"}.bi-journal::before{content:"\f446"}.bi-journals::before{content:"\f447"}.bi-joystick::before{content:"\f448"}.bi-justify-left::before{content:"\f449"}.bi-justify-right::before{content:"\f44a"}.bi-justify::before{content:"\f44b"}.bi-kanban-fill::before{content:"\f44c"}.bi-kanban::before{content:"\f44d"}.bi-key-fill::before{content:"\f44e"}.bi-key::before{content:"\f44f"}.bi-keyboard-fill::before{content:"\f450"}.bi-keyboard::before{content:"\f451"}.bi-ladder::before{content:"\f452"}.bi-lamp-fill::before{content:"\f453"}.bi-lamp::before{content:"\f454"}.bi-laptop-fill::before{content:"\f455"}.bi-laptop::before{content:"\f456"}.bi-layer-backward::before{content:"\f457"}.bi-layer-forward::before{content:"\f458"}.bi-layers-fill::before{content:"\f459"}.bi-layers-half::before{content:"\f45a"}.bi-layers::before{content:"\f45b"}.bi-layout-sidebar-inset-reverse::before{content:"\f45c"}.bi-layout-sidebar-inset::before{content:"\f45d"}.bi-layout-sidebar-reverse::before{content:"\f45e"}.bi-layout-sidebar::before{content:"\f45f"}.bi-layout-split::before{content:"\f460"}.bi-layout-text-sidebar-reverse::before{content:"\f461"}.bi-layout-text-sidebar::before{content:"\f462"}.bi-layout-text-window-reverse::before{content:"\f463"}.bi-layout-text-window::before{content:"\f464"}.bi-layout-three-columns::before{content:"\f465"}.bi-layout-wtf::before{content:"\f466"}.bi-life-preserver::before{content:"\f467"}.bi-lightbulb-fill::before{content:"\f468"}.bi-lightbulb-off-fill::before{content:"\f469"}.bi-lightbulb-off::before{content:"\f46a"}.bi-lightbulb::before{content:"\f46b"}.bi-lightning-charge-fill::before{content:"\f46c"}.bi-lightning-charge::before{content:"\f46d"}.bi-lightning-fill::before{content:"\f46e"}.bi-lightning::before{content:"\f46f"}.bi-link-45deg::before{content:"\f470"}.bi-link::before{content:"\f471"}.bi-linkedin::before{content:"\f472"}.bi-list-check::before{content:"\f473"}.bi-list-nested::before{content:"\f474"}.bi-list-ol::before{content:"\f475"}.bi-list-stars::before{content:"\f476"}.bi-list-task::before{content:"\f477"}.bi-list-ul::before{content:"\f478"}.bi-list::before{content:"\f479"}.bi-lock-fill::before{content:"\f47a"}.bi-lock::before{content:"\f47b"}.bi-mailbox::before{content:"\f47c"}.bi-mailbox2::before{content:"\f47d"}.bi-map-fill::before{content:"\f47e"}.bi-map::before{content:"\f47f"}.bi-markdown-fill::before{content:"\f480"}.bi-markdown::before{content:"\f481"}.bi-mask::before{content:"\f482"}.bi-megaphone-fill::before{content:"\f483"}.bi-megaphone::before{content:"\f484"}.bi-menu-app-fill::before{content:"\f485"}.bi-menu-app::before{content:"\f486"}.bi-menu-button-fill::before{content:"\f487"}.bi-menu-button-wide-fill::before{content:"\f488"}.bi-menu-button-wide::before{content:"\f489"}.bi-menu-button::before{content:"\f48a"}.bi-menu-down::before{content:"\f48b"}.bi-menu-up::before{content:"\f48c"}.bi-mic-fill::before{content:"\f48d"}.bi-mic-mute-fill::before{content:"\f48e"}.bi-mic-mute::before{content:"\f48f"}.bi-mic::before{content:"\f490"}.bi-minecart-loaded::before{content:"\f491"}.bi-minecart::before{content:"\f492"}.bi-moisture::before{content:"\f493"}.bi-moon-fill::before{content:"\f494"}.bi-moon-stars-fill::before{content:"\f495"}.bi-moon-stars::before{content:"\f496"}.bi-moon::before{content:"\f497"}.bi-mouse-fill::before{content:"\f498"}.bi-mouse::before{content:"\f499"}.bi-mouse2-fill::before{content:"\f49a"}.bi-mouse2::before{content:"\f49b"}.bi-mouse3-fill::before{content:"\f49c"}.bi-mouse3::before{content:"\f49d"}.bi-music-note-beamed::before{content:"\f49e"}.bi-music-note-list::before{content:"\f49f"}.bi-music-note::before{content:"\f4a0"}.bi-music-player-fill::before{content:"\f4a1"}.bi-music-player::before{content:"\f4a2"}.bi-newspaper::before{content:"\f4a3"}.bi-node-minus-fill::before{content:"\f4a4"}.bi-node-minus::before{content:"\f4a5"}.bi-node-plus-fill::before{content:"\f4a6"}.bi-node-plus::before{content:"\f4a7"}.bi-nut-fill::before{content:"\f4a8"}.bi-nut::before{content:"\f4a9"}.bi-octagon-fill::before{content:"\f4aa"}.bi-octagon-half::before{content:"\f4ab"}.bi-octagon::before{content:"\f4ac"}.bi-option::before{content:"\f4ad"}.bi-outlet::before{content:"\f4ae"}.bi-paint-bucket::before{content:"\f4af"}.bi-palette-fill::before{content:"\f4b0"}.bi-palette::before{content:"\f4b1"}.bi-palette2::before{content:"\f4b2"}.bi-paperclip::before{content:"\f4b3"}.bi-paragraph::before{content:"\f4b4"}.bi-patch-check-fill::before{content:"\f4b5"}.bi-patch-check::before{content:"\f4b6"}.bi-patch-exclamation-fill::before{content:"\f4b7"}.bi-patch-exclamation::before{content:"\f4b8"}.bi-patch-minus-fill::before{content:"\f4b9"}.bi-patch-minus::before{content:"\f4ba"}.bi-patch-plus-fill::before{content:"\f4bb"}.bi-patch-plus::before{content:"\f4bc"}.bi-patch-question-fill::before{content:"\f4bd"}.bi-patch-question::before{content:"\f4be"}.bi-pause-btn-fill::before{content:"\f4bf"}.bi-pause-btn::before{content:"\f4c0"}.bi-pause-circle-fill::before{content:"\f4c1"}.bi-pause-circle::before{content:"\f4c2"}.bi-pause-fill::before{content:"\f4c3"}.bi-pause::before{content:"\f4c4"}.bi-peace-fill::before{content:"\f4c5"}.bi-peace::before{content:"\f4c6"}.bi-pen-fill::before{content:"\f4c7"}.bi-pen::before{content:"\f4c8"}.bi-pencil-fill::before{content:"\f4c9"}.bi-pencil-square::before{content:"\f4ca"}.bi-pencil::before{content:"\f4cb"}.bi-pentagon-fill::before{content:"\f4cc"}.bi-pentagon-half::before{content:"\f4cd"}.bi-pentagon::before{content:"\f4ce"}.bi-people-fill::before{content:"\f4cf"}.bi-people::before{content:"\f4d0"}.bi-percent::before{content:"\f4d1"}.bi-person-badge-fill::before{content:"\f4d2"}.bi-person-badge::before{content:"\f4d3"}.bi-person-bounding-box::before{content:"\f4d4"}.bi-person-check-fill::before{content:"\f4d5"}.bi-person-check::before{content:"\f4d6"}.bi-person-circle::before{content:"\f4d7"}.bi-person-dash-fill::before{content:"\f4d8"}.bi-person-dash::before{content:"\f4d9"}.bi-person-fill::before{content:"\f4da"}.bi-person-lines-fill::before{content:"\f4db"}.bi-person-plus-fill::before{content:"\f4dc"}.bi-person-plus::before{content:"\f4dd"}.bi-person-square::before{content:"\f4de"}.bi-person-x-fill::before{content:"\f4df"}.bi-person-x::before{content:"\f4e0"}.bi-person::before{content:"\f4e1"}.bi-phone-fill::before{content:"\f4e2"}.bi-phone-landscape-fill::before{content:"\f4e3"}.bi-phone-landscape::before{content:"\f4e4"}.bi-phone-vibrate-fill::before{content:"\f4e5"}.bi-phone-vibrate::before{content:"\f4e6"}.bi-phone::before{content:"\f4e7"}.bi-pie-chart-fill::before{content:"\f4e8"}.bi-pie-chart::before{content:"\f4e9"}.bi-pin-angle-fill::before{content:"\f4ea"}.bi-pin-angle::before{content:"\f4eb"}.bi-pin-fill::before{content:"\f4ec"}.bi-pin::before{content:"\f4ed"}.bi-pip-fill::before{content:"\f4ee"}.bi-pip::before{content:"\f4ef"}.bi-play-btn-fill::before{content:"\f4f0"}.bi-play-btn::before{content:"\f4f1"}.bi-play-circle-fill::before{content:"\f4f2"}.bi-play-circle::before{content:"\f4f3"}.bi-play-fill::before{content:"\f4f4"}.bi-play::before{content:"\f4f5"}.bi-plug-fill::before{content:"\f4f6"}.bi-plug::before{content:"\f4f7"}.bi-plus-circle-dotted::before{content:"\f4f8"}.bi-plus-circle-fill::before{content:"\f4f9"}.bi-plus-circle::before{content:"\f4fa"}.bi-plus-square-dotted::before{content:"\f4fb"}.bi-plus-square-fill::before{content:"\f4fc"}.bi-plus-square::before{content:"\f4fd"}.bi-plus::before{content:"\f4fe"}.bi-power::before{content:"\f4ff"}.bi-printer-fill::before{content:"\f500"}.bi-printer::before{content:"\f501"}.bi-puzzle-fill::before{content:"\f502"}.bi-puzzle::before{content:"\f503"}.bi-question-circle-fill::before{content:"\f504"}.bi-question-circle::before{content:"\f505"}.bi-question-diamond-fill::before{content:"\f506"}.bi-question-diamond::before{content:"\f507"}.bi-question-octagon-fill::before{content:"\f508"}.bi-question-octagon::before{content:"\f509"}.bi-question-square-fill::before{content:"\f50a"}.bi-question-square::before{content:"\f50b"}.bi-question::before{content:"\f50c"}.bi-rainbow::before{content:"\f50d"}.bi-receipt-cutoff::before{content:"\f50e"}.bi-receipt::before{content:"\f50f"}.bi-reception-0::before{content:"\f510"}.bi-reception-1::before{content:"\f511"}.bi-reception-2::before{content:"\f512"}.bi-reception-3::before{content:"\f513"}.bi-reception-4::before{content:"\f514"}.bi-record-btn-fill::before{content:"\f515"}.bi-record-btn::before{content:"\f516"}.bi-record-circle-fill::before{content:"\f517"}.bi-record-circle::before{content:"\f518"}.bi-record-fill::before{content:"\f519"}.bi-record::before{content:"\f51a"}.bi-record2-fill::before{content:"\f51b"}.bi-record2::before{content:"\f51c"}.bi-reply-all-fill::before{content:"\f51d"}.bi-reply-all::before{content:"\f51e"}.bi-reply-fill::before{content:"\f51f"}.bi-reply::before{content:"\f520"}.bi-rss-fill::before{content:"\f521"}.bi-rss::before{content:"\f522"}.bi-rulers::before{content:"\f523"}.bi-save-fill::before{content:"\f524"}.bi-save::before{content:"\f525"}.bi-save2-fill::before{content:"\f526"}.bi-save2::before{content:"\f527"}.bi-scissors::before{content:"\f528"}.bi-screwdriver::before{content:"\f529"}.bi-search::before{content:"\f52a"}.bi-segmented-nav::before{content:"\f52b"}.bi-server::before{content:"\f52c"}.bi-share-fill::before{content:"\f52d"}.bi-share::before{content:"\f52e"}.bi-shield-check::before{content:"\f52f"}.bi-shield-exclamation::before{content:"\f530"}.bi-shield-fill-check::before{content:"\f531"}.bi-shield-fill-exclamation::before{content:"\f532"}.bi-shield-fill-minus::before{content:"\f533"}.bi-shield-fill-plus::before{content:"\f534"}.bi-shield-fill-x::before{content:"\f535"}.bi-shield-fill::before{content:"\f536"}.bi-shield-lock-fill::before{content:"\f537"}.bi-shield-lock::before{content:"\f538"}.bi-shield-minus::before{content:"\f539"}.bi-shield-plus::before{content:"\f53a"}.bi-shield-shaded::before{content:"\f53b"}.bi-shield-slash-fill::before{content:"\f53c"}.bi-shield-slash::before{content:"\f53d"}.bi-shield-x::before{content:"\f53e"}.bi-shield::before{content:"\f53f"}.bi-shift-fill::before{content:"\f540"}.bi-shift::before{content:"\f541"}.bi-shop-window::before{content:"\f542"}.bi-shop::before{content:"\f543"}.bi-shuffle::before{content:"\f544"}.bi-signpost-2-fill::before{content:"\f545"}.bi-signpost-2::before{content:"\f546"}.bi-signpost-fill::before{content:"\f547"}.bi-signpost-split-fill::before{content:"\f548"}.bi-signpost-split::before{content:"\f549"}.bi-signpost::before{content:"\f54a"}.bi-sim-fill::before{content:"\f54b"}.bi-sim::before{content:"\f54c"}.bi-skip-backward-btn-fill::before{content:"\f54d"}.bi-skip-backward-btn::before{content:"\f54e"}.bi-skip-backward-circle-fill::before{content:"\f54f"}.bi-skip-backward-circle::before{content:"\f550"}.bi-skip-backward-fill::before{content:"\f551"}.bi-skip-backward::before{content:"\f552"}.bi-skip-end-btn-fill::before{content:"\f553"}.bi-skip-end-btn::before{content:"\f554"}.bi-skip-end-circle-fill::before{content:"\f555"}.bi-skip-end-circle::before{content:"\f556"}.bi-skip-end-fill::before{content:"\f557"}.bi-skip-end::before{content:"\f558"}.bi-skip-forward-btn-fill::before{content:"\f559"}.bi-skip-forward-btn::before{content:"\f55a"}.bi-skip-forward-circle-fill::before{content:"\f55b"}.bi-skip-forward-circle::before{content:"\f55c"}.bi-skip-forward-fill::before{content:"\f55d"}.bi-skip-forward::before{content:"\f55e"}.bi-skip-start-btn-fill::before{content:"\f55f"}.bi-skip-start-btn::before{content:"\f560"}.bi-skip-start-circle-fill::before{content:"\f561"}.bi-skip-start-circle::before{content:"\f562"}.bi-skip-start-fill::before{content:"\f563"}.bi-skip-start::before{content:"\f564"}.bi-slack::before{content:"\f565"}.bi-slash-circle-fill::before{content:"\f566"}.bi-slash-circle::before{content:"\f567"}.bi-slash-square-fill::before{content:"\f568"}.bi-slash-square::before{content:"\f569"}.bi-slash::before{content:"\f56a"}.bi-sliders::before{content:"\f56b"}.bi-smartwatch::before{content:"\f56c"}.bi-snow::before{content:"\f56d"}.bi-snow2::before{content:"\f56e"}.bi-snow3::before{content:"\f56f"}.bi-sort-alpha-down-alt::before{content:"\f570"}.bi-sort-alpha-down::before{content:"\f571"}.bi-sort-alpha-up-alt::before{content:"\f572"}.bi-sort-alpha-up::before{content:"\f573"}.bi-sort-down-alt::before{content:"\f574"}.bi-sort-down::before{content:"\f575"}.bi-sort-numeric-down-alt::before{content:"\f576"}.bi-sort-numeric-down::before{content:"\f577"}.bi-sort-numeric-up-alt::before{content:"\f578"}.bi-sort-numeric-up::before{content:"\f579"}.bi-sort-up-alt::before{content:"\f57a"}.bi-sort-up::before{content:"\f57b"}.bi-soundwave::before{content:"\f57c"}.bi-speaker-fill::before{content:"\f57d"}.bi-speaker::before{content:"\f57e"}.bi-speedometer::before{content:"\f57f"}.bi-speedometer2::before{content:"\f580"}.bi-spellcheck::before{content:"\f581"}.bi-square-fill::before{content:"\f582"}.bi-square-half::before{content:"\f583"}.bi-square::before{content:"\f584"}.bi-stack::before{content:"\f585"}.bi-star-fill::before{content:"\f586"}.bi-star-half::before{content:"\f587"}.bi-star::before{content:"\f588"}.bi-stars::before{content:"\f589"}.bi-stickies-fill::before{content:"\f58a"}.bi-stickies::before{content:"\f58b"}.bi-sticky-fill::before{content:"\f58c"}.bi-sticky::before{content:"\f58d"}.bi-stop-btn-fill::before{content:"\f58e"}.bi-stop-btn::before{content:"\f58f"}.bi-stop-circle-fill::before{content:"\f590"}.bi-stop-circle::before{content:"\f591"}.bi-stop-fill::before{content:"\f592"}.bi-stop::before{content:"\f593"}.bi-stoplights-fill::before{content:"\f594"}.bi-stoplights::before{content:"\f595"}.bi-stopwatch-fill::before{content:"\f596"}.bi-stopwatch::before{content:"\f597"}.bi-subtract::before{content:"\f598"}.bi-suit-club-fill::before{content:"\f599"}.bi-suit-club::before{content:"\f59a"}.bi-suit-diamond-fill::before{content:"\f59b"}.bi-suit-diamond::before{content:"\f59c"}.bi-suit-heart-fill::before{content:"\f59d"}.bi-suit-heart::before{content:"\f59e"}.bi-suit-spade-fill::before{content:"\f59f"}.bi-suit-spade::before{content:"\f5a0"}.bi-sun-fill::before{content:"\f5a1"}.bi-sun::before{content:"\f5a2"}.bi-sunglasses::before{content:"\f5a3"}.bi-sunrise-fill::before{content:"\f5a4"}.bi-sunrise::before{content:"\f5a5"}.bi-sunset-fill::before{content:"\f5a6"}.bi-sunset::before{content:"\f5a7"}.bi-symmetry-horizontal::before{content:"\f5a8"}.bi-symmetry-vertical::before{content:"\f5a9"}.bi-table::before{content:"\f5aa"}.bi-tablet-fill::before{content:"\f5ab"}.bi-tablet-landscape-fill::before{content:"\f5ac"}.bi-tablet-landscape::before{content:"\f5ad"}.bi-tablet::before{content:"\f5ae"}.bi-tag-fill::before{content:"\f5af"}.bi-tag::before{content:"\f5b0"}.bi-tags-fill::before{content:"\f5b1"}.bi-tags::before{content:"\f5b2"}.bi-telegram::before{content:"\f5b3"}.bi-telephone-fill::before{content:"\f5b4"}.bi-telephone-forward-fill::before{content:"\f5b5"}.bi-telephone-forward::before{content:"\f5b6"}.bi-telephone-inbound-fill::before{content:"\f5b7"}.bi-telephone-inbound::before{content:"\f5b8"}.bi-telephone-minus-fill::before{content:"\f5b9"}.bi-telephone-minus::before{content:"\f5ba"}.bi-telephone-outbound-fill::before{content:"\f5bb"}.bi-telephone-outbound::before{content:"\f5bc"}.bi-telephone-plus-fill::before{content:"\f5bd"}.bi-telephone-plus::before{content:"\f5be"}.bi-telephone-x-fill::before{content:"\f5bf"}.bi-telephone-x::before{content:"\f5c0"}.bi-telephone::before{content:"\f5c1"}.bi-terminal-fill::before{content:"\f5c2"}.bi-terminal::before{content:"\f5c3"}.bi-text-center::before{content:"\f5c4"}.bi-text-indent-left::before{content:"\f5c5"}.bi-text-indent-right::before{content:"\f5c6"}.bi-text-left::before{content:"\f5c7"}.bi-text-paragraph::before{content:"\f5c8"}.bi-text-right::before{content:"\f5c9"}.bi-textarea-resize::before{content:"\f5ca"}.bi-textarea-t::before{content:"\f5cb"}.bi-textarea::before{content:"\f5cc"}.bi-thermometer-half::before{content:"\f5cd"}.bi-thermometer-high::before{content:"\f5ce"}.bi-thermometer-low::before{content:"\f5cf"}.bi-thermometer-snow::before{content:"\f5d0"}.bi-thermometer-sun::before{content:"\f5d1"}.bi-thermometer::before{content:"\f5d2"}.bi-three-dots-vertical::before{content:"\f5d3"}.bi-three-dots::before{content:"\f5d4"}.bi-toggle-off::before{content:"\f5d5"}.bi-toggle-on::before{content:"\f5d6"}.bi-toggle2-off::before{content:"\f5d7"}.bi-toggle2-on::before{content:"\f5d8"}.bi-toggles::before{content:"\f5d9"}.bi-toggles2::before{content:"\f5da"}.bi-tools::before{content:"\f5db"}.bi-tornado::before{content:"\f5dc"}.bi-trash-fill::before{content:"\f5dd"}.bi-trash::before{content:"\f5de"}.bi-trash2-fill::before{content:"\f5df"}.bi-trash2::before{content:"\f5e0"}.bi-tree-fill::before{content:"\f5e1"}.bi-tree::before{content:"\f5e2"}.bi-triangle-fill::before{content:"\f5e3"}.bi-triangle-half::before{content:"\f5e4"}.bi-triangle::before{content:"\f5e5"}.bi-trophy-fill::before{content:"\f5e6"}.bi-trophy::before{content:"\f5e7"}.bi-tropical-storm::before{content:"\f5e8"}.bi-truck-flatbed::before{content:"\f5e9"}.bi-truck::before{content:"\f5ea"}.bi-tsunami::before{content:"\f5eb"}.bi-tv-fill::before{content:"\f5ec"}.bi-tv::before{content:"\f5ed"}.bi-twitch::before{content:"\f5ee"}.bi-twitter::before{content:"\f5ef"}.bi-type-bold::before{content:"\f5f0"}.bi-type-h1::before{content:"\f5f1"}.bi-type-h2::before{content:"\f5f2"}.bi-type-h3::before{content:"\f5f3"}.bi-type-italic::before{content:"\f5f4"}.bi-type-strikethrough::before{content:"\f5f5"}.bi-type-underline::before{content:"\f5f6"}.bi-type::before{content:"\f5f7"}.bi-ui-checks-grid::before{content:"\f5f8"}.bi-ui-checks::before{content:"\f5f9"}.bi-ui-radios-grid::before{content:"\f5fa"}.bi-ui-radios::before{content:"\f5fb"}.bi-umbrella-fill::before{content:"\f5fc"}.bi-umbrella::before{content:"\f5fd"}.bi-union::before{content:"\f5fe"}.bi-unlock-fill::before{content:"\f5ff"}.bi-unlock::before{content:"\f600"}.bi-upc-scan::before{content:"\f601"}.bi-upc::before{content:"\f602"}.bi-upload::before{content:"\f603"}.bi-vector-pen::before{content:"\f604"}.bi-view-list::before{content:"\f605"}.bi-view-stacked::before{content:"\f606"}.bi-vinyl-fill::before{content:"\f607"}.bi-vinyl::before{content:"\f608"}.bi-voicemail::before{content:"\f609"}.bi-volume-down-fill::before{content:"\f60a"}.bi-volume-down::before{content:"\f60b"}.bi-volume-mute-fill::before{content:"\f60c"}.bi-volume-mute::before{content:"\f60d"}.bi-volume-off-fill::before{content:"\f60e"}.bi-volume-off::before{content:"\f60f"}.bi-volume-up-fill::before{content:"\f610"}.bi-volume-up::before{content:"\f611"}.bi-vr::before{content:"\f612"}.bi-wallet-fill::before{content:"\f613"}.bi-wallet::before{content:"\f614"}.bi-wallet2::before{content:"\f615"}.bi-watch::before{content:"\f616"}.bi-water::before{content:"\f617"}.bi-whatsapp::before{content:"\f618"}.bi-wifi-1::before{content:"\f619"}.bi-wifi-2::before{content:"\f61a"}.bi-wifi-off::before{content:"\f61b"}.bi-wifi::before{content:"\f61c"}.bi-wind::before{content:"\f61d"}.bi-window-dock::before{content:"\f61e"}.bi-window-sidebar::before{content:"\f61f"}.bi-window::before{content:"\f620"}.bi-wrench::before{content:"\f621"}.bi-x-circle-fill::before{content:"\f622"}.bi-x-circle::before{content:"\f623"}.bi-x-diamond-fill::before{content:"\f624"}.bi-x-diamond::before{content:"\f625"}.bi-x-octagon-fill::before{content:"\f626"}.bi-x-octagon::before{content:"\f627"}.bi-x-square-fill::before{content:"\f628"}.bi-x-square::before{content:"\f629"}.bi-x::before{content:"\f62a"}.bi-youtube::before{content:"\f62b"}.bi-zoom-in::before{content:"\f62c"}.bi-zoom-out::before{content:"\f62d"}.bi-bank::before{content:"\f62e"}.bi-bank2::before{content:"\f62f"}.bi-bell-slash-fill::before{content:"\f630"}.bi-bell-slash::before{content:"\f631"}.bi-cash-coin::before{content:"\f632"}.bi-check-lg::before{content:"\f633"}.bi-coin::before{content:"\f634"}.bi-currency-bitcoin::before{content:"\f635"}.bi-currency-dollar::before{content:"\f636"}.bi-currency-euro::before{content:"\f637"}.bi-currency-exchange::before{content:"\f638"}.bi-currency-pound::before{content:"\f639"}.bi-currency-yen::before{content:"\f63a"}.bi-dash-lg::before{content:"\f63b"}.bi-exclamation-lg::before{content:"\f63c"}.bi-file-earmark-pdf-fill::before{content:"\f63d"}.bi-file-earmark-pdf::before{content:"\f63e"}.bi-file-pdf-fill::before{content:"\f63f"}.bi-file-pdf::before{content:"\f640"}.bi-gender-ambiguous::before{content:"\f641"}.bi-gender-female::before{content:"\f642"}.bi-gender-male::before{content:"\f643"}.bi-gender-trans::before{content:"\f644"}.bi-headset-vr::before{content:"\f645"}.bi-info-lg::before{content:"\f646"}.bi-mastodon::before{content:"\f647"}.bi-messenger::before{content:"\f648"}.bi-piggy-bank-fill::before{content:"\f649"}.bi-piggy-bank::before{content:"\f64a"}.bi-pin-map-fill::before{content:"\f64b"}.bi-pin-map::before{content:"\f64c"}.bi-plus-lg::before{content:"\f64d"}.bi-question-lg::before{content:"\f64e"}.bi-recycle::before{content:"\f64f"}.bi-reddit::before{content:"\f650"}.bi-safe-fill::before{content:"\f651"}.bi-safe2-fill::before{content:"\f652"}.bi-safe2::before{content:"\f653"}.bi-sd-card-fill::before{content:"\f654"}.bi-sd-card::before{content:"\f655"}.bi-skype::before{content:"\f656"}.bi-slash-lg::before{content:"\f657"}.bi-translate::before{content:"\f658"}.bi-x-lg::before{content:"\f659"}.bi-safe::before{content:"\f65a"}.bi-apple::before{content:"\f65b"}.bi-microsoft::before{content:"\f65d"}.bi-windows::before{content:"\f65e"}.bi-behance::before{content:"\f65c"}.bi-dribbble::before{content:"\f65f"}.bi-line::before{content:"\f660"}.bi-medium::before{content:"\f661"}.bi-paypal::before{content:"\f662"}.bi-pinterest::before{content:"\f663"}.bi-signal::before{content:"\f664"}.bi-snapchat::before{content:"\f665"}.bi-spotify::before{content:"\f666"}.bi-stack-overflow::before{content:"\f667"}.bi-strava::before{content:"\f668"}.bi-wordpress::before{content:"\f669"}.bi-vimeo::before{content:"\f66a"}.bi-activity::before{content:"\f66b"}.bi-easel2-fill::before{content:"\f66c"}.bi-easel2::before{content:"\f66d"}.bi-easel3-fill::before{content:"\f66e"}.bi-easel3::before{content:"\f66f"}.bi-fan::before{content:"\f670"}.bi-fingerprint::before{content:"\f671"}.bi-graph-down-arrow::before{content:"\f672"}.bi-graph-up-arrow::before{content:"\f673"}.bi-hypnotize::before{content:"\f674"}.bi-magic::before{content:"\f675"}.bi-person-rolodex::before{content:"\f676"}.bi-person-video::before{content:"\f677"}.bi-person-video2::before{content:"\f678"}.bi-person-video3::before{content:"\f679"}.bi-person-workspace::before{content:"\f67a"}.bi-radioactive::before{content:"\f67b"}.bi-webcam-fill::before{content:"\f67c"}.bi-webcam::before{content:"\f67d"}.bi-yin-yang::before{content:"\f67e"}.bi-bandaid-fill::before{content:"\f680"}.bi-bandaid::before{content:"\f681"}.bi-bluetooth::before{content:"\f682"}.bi-body-text::before{content:"\f683"}.bi-boombox::before{content:"\f684"}.bi-boxes::before{content:"\f685"}.bi-dpad-fill::before{content:"\f686"}.bi-dpad::before{content:"\f687"}.bi-ear-fill::before{content:"\f688"}.bi-ear::before{content:"\f689"}.bi-envelope-check-fill::before{content:"\f68b"}.bi-envelope-check::before{content:"\f68c"}.bi-envelope-dash-fill::before{content:"\f68e"}.bi-envelope-dash::before{content:"\f68f"}.bi-envelope-exclamation-fill::before{content:"\f691"}.bi-envelope-exclamation::before{content:"\f692"}.bi-envelope-plus-fill::before{content:"\f693"}.bi-envelope-plus::before{content:"\f694"}.bi-envelope-slash-fill::before{content:"\f696"}.bi-envelope-slash::before{content:"\f697"}.bi-envelope-x-fill::before{content:"\f699"}.bi-envelope-x::before{content:"\f69a"}.bi-explicit-fill::before{content:"\f69b"}.bi-explicit::before{content:"\f69c"}.bi-git::before{content:"\f69d"}.bi-infinity::before{content:"\f69e"}.bi-list-columns-reverse::before{content:"\f69f"}.bi-list-columns::before{content:"\f6a0"}.bi-meta::before{content:"\f6a1"}.bi-nintendo-switch::before{content:"\f6a4"}.bi-pc-display-horizontal::before{content:"\f6a5"}.bi-pc-display::before{content:"\f6a6"}.bi-pc-horizontal::before{content:"\f6a7"}.bi-pc::before{content:"\f6a8"}.bi-playstation::before{content:"\f6a9"}.bi-plus-slash-minus::before{content:"\f6aa"}.bi-projector-fill::before{content:"\f6ab"}.bi-projector::before{content:"\f6ac"}.bi-qr-code-scan::before{content:"\f6ad"}.bi-qr-code::before{content:"\f6ae"}.bi-quora::before{content:"\f6af"}.bi-quote::before{content:"\f6b0"}.bi-robot::before{content:"\f6b1"}.bi-send-check-fill::before{content:"\f6b2"}.bi-send-check::before{content:"\f6b3"}.bi-send-dash-fill::before{content:"\f6b4"}.bi-send-dash::before{content:"\f6b5"}.bi-send-exclamation-fill::before{content:"\f6b7"}.bi-send-exclamation::before{content:"\f6b8"}.bi-send-fill::before{content:"\f6b9"}.bi-send-plus-fill::before{content:"\f6ba"}.bi-send-plus::before{content:"\f6bb"}.bi-send-slash-fill::before{content:"\f6bc"}.bi-send-slash::before{content:"\f6bd"}.bi-send-x-fill::before{content:"\f6be"}.bi-send-x::before{content:"\f6bf"}.bi-send::before{content:"\f6c0"}.bi-steam::before{content:"\f6c1"}.bi-terminal-dash::before{content:"\f6c3"}.bi-terminal-plus::before{content:"\f6c4"}.bi-terminal-split::before{content:"\f6c5"}.bi-ticket-detailed-fill::before{content:"\f6c6"}.bi-ticket-detailed::before{content:"\f6c7"}.bi-ticket-fill::before{content:"\f6c8"}.bi-ticket-perforated-fill::before{content:"\f6c9"}.bi-ticket-perforated::before{content:"\f6ca"}.bi-ticket::before{content:"\f6cb"}.bi-tiktok::before{content:"\f6cc"}.bi-window-dash::before{content:"\f6cd"}.bi-window-desktop::before{content:"\f6ce"}.bi-window-fullscreen::before{content:"\f6cf"}.bi-window-plus::before{content:"\f6d0"}.bi-window-split::before{content:"\f6d1"}.bi-window-stack::before{content:"\f6d2"}.bi-window-x::before{content:"\f6d3"}.bi-xbox::before{content:"\f6d4"}.bi-ethernet::before{content:"\f6d5"}.bi-hdmi-fill::before{content:"\f6d6"}.bi-hdmi::before{content:"\f6d7"}.bi-usb-c-fill::before{content:"\f6d8"}.bi-usb-c::before{content:"\f6d9"}.bi-usb-fill::before{content:"\f6da"}.bi-usb-plug-fill::before{content:"\f6db"}.bi-usb-plug::before{content:"\f6dc"}.bi-usb-symbol::before{content:"\f6dd"}.bi-usb::before{content:"\f6de"}.bi-boombox-fill::before{content:"\f6df"}.bi-displayport::before{content:"\f6e1"}.bi-gpu-card::before{content:"\f6e2"}.bi-memory::before{content:"\f6e3"}.bi-modem-fill::before{content:"\f6e4"}.bi-modem::before{content:"\f6e5"}.bi-motherboard-fill::before{content:"\f6e6"}.bi-motherboard::before{content:"\f6e7"}.bi-optical-audio-fill::before{content:"\f6e8"}.bi-optical-audio::before{content:"\f6e9"}.bi-pci-card::before{content:"\f6ea"}.bi-router-fill::before{content:"\f6eb"}.bi-router::before{content:"\f6ec"}.bi-thunderbolt-fill::before{content:"\f6ef"}.bi-thunderbolt::before{content:"\f6f0"}.bi-usb-drive-fill::before{content:"\f6f1"}.bi-usb-drive::before{content:"\f6f2"}.bi-usb-micro-fill::before{content:"\f6f3"}.bi-usb-micro::before{content:"\f6f4"}.bi-usb-mini-fill::before{content:"\f6f5"}.bi-usb-mini::before{content:"\f6f6"}.bi-cloud-haze2::before{content:"\f6f7"}.bi-device-hdd-fill::before{content:"\f6f8"}.bi-device-hdd::before{content:"\f6f9"}.bi-device-ssd-fill::before{content:"\f6fa"}.bi-device-ssd::before{content:"\f6fb"}.bi-displayport-fill::before{content:"\f6fc"}.bi-mortarboard-fill::before{content:"\f6fd"}.bi-mortarboard::before{content:"\f6fe"}.bi-terminal-x::before{content:"\f6ff"}.bi-arrow-through-heart-fill::before{content:"\f700"}.bi-arrow-through-heart::before{content:"\f701"}.bi-badge-sd-fill::before{content:"\f702"}.bi-badge-sd::before{content:"\f703"}.bi-bag-heart-fill::before{content:"\f704"}.bi-bag-heart::before{content:"\f705"}.bi-balloon-fill::before{content:"\f706"}.bi-balloon-heart-fill::before{content:"\f707"}.bi-balloon-heart::before{content:"\f708"}.bi-balloon::before{content:"\f709"}.bi-box2-fill::before{content:"\f70a"}.bi-box2-heart-fill::before{content:"\f70b"}.bi-box2-heart::before{content:"\f70c"}.bi-box2::before{content:"\f70d"}.bi-braces-asterisk::before{content:"\f70e"}.bi-calendar-heart-fill::before{content:"\f70f"}.bi-calendar-heart::before{content:"\f710"}.bi-calendar2-heart-fill::before{content:"\f711"}.bi-calendar2-heart::before{content:"\f712"}.bi-chat-heart-fill::before{content:"\f713"}.bi-chat-heart::before{content:"\f714"}.bi-chat-left-heart-fill::before{content:"\f715"}.bi-chat-left-heart::before{content:"\f716"}.bi-chat-right-heart-fill::before{content:"\f717"}.bi-chat-right-heart::before{content:"\f718"}.bi-chat-square-heart-fill::before{content:"\f719"}.bi-chat-square-heart::before{content:"\f71a"}.bi-clipboard-check-fill::before{content:"\f71b"}.bi-clipboard-data-fill::before{content:"\f71c"}.bi-clipboard-fill::before{content:"\f71d"}.bi-clipboard-heart-fill::before{content:"\f71e"}.bi-clipboard-heart::before{content:"\f71f"}.bi-clipboard-minus-fill::before{content:"\f720"}.bi-clipboard-plus-fill::before{content:"\f721"}.bi-clipboard-pulse::before{content:"\f722"}.bi-clipboard-x-fill::before{content:"\f723"}.bi-clipboard2-check-fill::before{content:"\f724"}.bi-clipboard2-check::before{content:"\f725"}.bi-clipboard2-data-fill::before{content:"\f726"}.bi-clipboard2-data::before{content:"\f727"}.bi-clipboard2-fill::before{content:"\f728"}.bi-clipboard2-heart-fill::before{content:"\f729"}.bi-clipboard2-heart::before{content:"\f72a"}.bi-clipboard2-minus-fill::before{content:"\f72b"}.bi-clipboard2-minus::before{content:"\f72c"}.bi-clipboard2-plus-fill::before{content:"\f72d"}.bi-clipboard2-plus::before{content:"\f72e"}.bi-clipboard2-pulse-fill::before{content:"\f72f"}.bi-clipboard2-pulse::before{content:"\f730"}.bi-clipboard2-x-fill::before{content:"\f731"}.bi-clipboard2-x::before{content:"\f732"}.bi-clipboard2::before{content:"\f733"}.bi-emoji-kiss-fill::before{content:"\f734"}.bi-emoji-kiss::before{content:"\f735"}.bi-envelope-heart-fill::before{content:"\f736"}.bi-envelope-heart::before{content:"\f737"}.bi-envelope-open-heart-fill::before{content:"\f738"}.bi-envelope-open-heart::before{content:"\f739"}.bi-envelope-paper-fill::before{content:"\f73a"}.bi-envelope-paper-heart-fill::before{content:"\f73b"}.bi-envelope-paper-heart::before{content:"\f73c"}.bi-envelope-paper::before{content:"\f73d"}.bi-filetype-aac::before{content:"\f73e"}.bi-filetype-ai::before{content:"\f73f"}.bi-filetype-bmp::before{content:"\f740"}.bi-filetype-cs::before{content:"\f741"}.bi-filetype-css::before{content:"\f742"}.bi-filetype-csv::before{content:"\f743"}.bi-filetype-doc::before{content:"\f744"}.bi-filetype-docx::before{content:"\f745"}.bi-filetype-exe::before{content:"\f746"}.bi-filetype-gif::before{content:"\f747"}.bi-filetype-heic::before{content:"\f748"}.bi-filetype-html::before{content:"\f749"}.bi-filetype-java::before{content:"\f74a"}.bi-filetype-jpg::before{content:"\f74b"}.bi-filetype-js::before{content:"\f74c"}.bi-filetype-jsx::before{content:"\f74d"}.bi-filetype-key::before{content:"\f74e"}.bi-filetype-m4p::before{content:"\f74f"}.bi-filetype-md::before{content:"\f750"}.bi-filetype-mdx::before{content:"\f751"}.bi-filetype-mov::before{content:"\f752"}.bi-filetype-mp3::before{content:"\f753"}.bi-filetype-mp4::before{content:"\f754"}.bi-filetype-otf::before{content:"\f755"}.bi-filetype-pdf::before{content:"\f756"}.bi-filetype-php::before{content:"\f757"}.bi-filetype-png::before{content:"\f758"}.bi-filetype-ppt::before{content:"\f75a"}.bi-filetype-psd::before{content:"\f75b"}.bi-filetype-py::before{content:"\f75c"}.bi-filetype-raw::before{content:"\f75d"}.bi-filetype-rb::before{content:"\f75e"}.bi-filetype-sass::before{content:"\f75f"}.bi-filetype-scss::before{content:"\f760"}.bi-filetype-sh::before{content:"\f761"}.bi-filetype-svg::before{content:"\f762"}.bi-filetype-tiff::before{content:"\f763"}.bi-filetype-tsx::before{content:"\f764"}.bi-filetype-ttf::before{content:"\f765"}.bi-filetype-txt::before{content:"\f766"}.bi-filetype-wav::before{content:"\f767"}.bi-filetype-woff::before{content:"\f768"}.bi-filetype-xls::before{content:"\f76a"}.bi-filetype-xml::before{content:"\f76b"}.bi-filetype-yml::before{content:"\f76c"}.bi-heart-arrow::before{content:"\f76d"}.bi-heart-pulse-fill::before{content:"\f76e"}.bi-heart-pulse::before{content:"\f76f"}.bi-heartbreak-fill::before{content:"\f770"}.bi-heartbreak::before{content:"\f771"}.bi-hearts::before{content:"\f772"}.bi-hospital-fill::before{content:"\f773"}.bi-hospital::before{content:"\f774"}.bi-house-heart-fill::before{content:"\f775"}.bi-house-heart::before{content:"\f776"}.bi-incognito::before{content:"\f777"}.bi-magnet-fill::before{content:"\f778"}.bi-magnet::before{content:"\f779"}.bi-person-heart::before{content:"\f77a"}.bi-person-hearts::before{content:"\f77b"}.bi-phone-flip::before{content:"\f77c"}.bi-plugin::before{content:"\f77d"}.bi-postage-fill::before{content:"\f77e"}.bi-postage-heart-fill::before{content:"\f77f"}.bi-postage-heart::before{content:"\f780"}.bi-postage::before{content:"\f781"}.bi-postcard-fill::before{content:"\f782"}.bi-postcard-heart-fill::before{content:"\f783"}.bi-postcard-heart::before{content:"\f784"}.bi-postcard::before{content:"\f785"}.bi-search-heart-fill::before{content:"\f786"}.bi-search-heart::before{content:"\f787"}.bi-sliders2-vertical::before{content:"\f788"}.bi-sliders2::before{content:"\f789"}.bi-trash3-fill::before{content:"\f78a"}.bi-trash3::before{content:"\f78b"}.bi-valentine::before{content:"\f78c"}.bi-valentine2::before{content:"\f78d"}.bi-wrench-adjustable-circle-fill::before{content:"\f78e"}.bi-wrench-adjustable-circle::before{content:"\f78f"}.bi-wrench-adjustable::before{content:"\f790"}.bi-filetype-json::before{content:"\f791"}.bi-filetype-pptx::before{content:"\f792"}.bi-filetype-xlsx::before{content:"\f793"}.bi-1-circle-fill::before{content:"\f796"}.bi-1-circle::before{content:"\f797"}.bi-1-square-fill::before{content:"\f798"}.bi-1-square::before{content:"\f799"}.bi-2-circle-fill::before{content:"\f79c"}.bi-2-circle::before{content:"\f79d"}.bi-2-square-fill::before{content:"\f79e"}.bi-2-square::before{content:"\f79f"}.bi-3-circle-fill::before{content:"\f7a2"}.bi-3-circle::before{content:"\f7a3"}.bi-3-square-fill::before{content:"\f7a4"}.bi-3-square::before{content:"\f7a5"}.bi-4-circle-fill::before{content:"\f7a8"}.bi-4-circle::before{content:"\f7a9"}.bi-4-square-fill::before{content:"\f7aa"}.bi-4-square::before{content:"\f7ab"}.bi-5-circle-fill::before{content:"\f7ae"}.bi-5-circle::before{content:"\f7af"}.bi-5-square-fill::before{content:"\f7b0"}.bi-5-square::before{content:"\f7b1"}.bi-6-circle-fill::before{content:"\f7b4"}.bi-6-circle::before{content:"\f7b5"}.bi-6-square-fill::before{content:"\f7b6"}.bi-6-square::before{content:"\f7b7"}.bi-7-circle-fill::before{content:"\f7ba"}.bi-7-circle::before{content:"\f7bb"}.bi-7-square-fill::before{content:"\f7bc"}.bi-7-square::before{content:"\f7bd"}.bi-8-circle-fill::before{content:"\f7c0"}.bi-8-circle::before{content:"\f7c1"}.bi-8-square-fill::before{content:"\f7c2"}.bi-8-square::before{content:"\f7c3"}.bi-9-circle-fill::before{content:"\f7c6"}.bi-9-circle::before{content:"\f7c7"}.bi-9-square-fill::before{content:"\f7c8"}.bi-9-square::before{content:"\f7c9"}.bi-airplane-engines-fill::before{content:"\f7ca"}.bi-airplane-engines::before{content:"\f7cb"}.bi-airplane-fill::before{content:"\f7cc"}.bi-airplane::before{content:"\f7cd"}.bi-alexa::before{content:"\f7ce"}.bi-alipay::before{content:"\f7cf"}.bi-android::before{content:"\f7d0"}.bi-android2::before{content:"\f7d1"}.bi-box-fill::before{content:"\f7d2"}.bi-box-seam-fill::before{content:"\f7d3"}.bi-browser-chrome::before{content:"\f7d4"}.bi-browser-edge::before{content:"\f7d5"}.bi-browser-firefox::before{content:"\f7d6"}.bi-browser-safari::before{content:"\f7d7"}.bi-c-circle-fill::before{content:"\f7da"}.bi-c-circle::before{content:"\f7db"}.bi-c-square-fill::before{content:"\f7dc"}.bi-c-square::before{content:"\f7dd"}.bi-capsule-pill::before{content:"\f7de"}.bi-capsule::before{content:"\f7df"}.bi-car-front-fill::before{content:"\f7e0"}.bi-car-front::before{content:"\f7e1"}.bi-cassette-fill::before{content:"\f7e2"}.bi-cassette::before{content:"\f7e3"}.bi-cc-circle-fill::before{content:"\f7e6"}.bi-cc-circle::before{content:"\f7e7"}.bi-cc-square-fill::before{content:"\f7e8"}.bi-cc-square::before{content:"\f7e9"}.bi-cup-hot-fill::before{content:"\f7ea"}.bi-cup-hot::before{content:"\f7eb"}.bi-currency-rupee::before{content:"\f7ec"}.bi-dropbox::before{content:"\f7ed"}.bi-escape::before{content:"\f7ee"}.bi-fast-forward-btn-fill::before{content:"\f7ef"}.bi-fast-forward-btn::before{content:"\f7f0"}.bi-fast-forward-circle-fill::before{content:"\f7f1"}.bi-fast-forward-circle::before{content:"\f7f2"}.bi-fast-forward-fill::before{content:"\f7f3"}.bi-fast-forward::before{content:"\f7f4"}.bi-filetype-sql::before{content:"\f7f5"}.bi-fire::before{content:"\f7f6"}.bi-google-play::before{content:"\f7f7"}.bi-h-circle-fill::before{content:"\f7fa"}.bi-h-circle::before{content:"\f7fb"}.bi-h-square-fill::before{content:"\f7fc"}.bi-h-square::before{content:"\f7fd"}.bi-indent::before{content:"\f7fe"}.bi-lungs-fill::before{content:"\f7ff"}.bi-lungs::before{content:"\f800"}.bi-microsoft-teams::before{content:"\f801"}.bi-p-circle-fill::before{content:"\f804"}.bi-p-circle::before{content:"\f805"}.bi-p-square-fill::before{content:"\f806"}.bi-p-square::before{content:"\f807"}.bi-pass-fill::before{content:"\f808"}.bi-pass::before{content:"\f809"}.bi-prescription::before{content:"\f80a"}.bi-prescription2::before{content:"\f80b"}.bi-r-circle-fill::before{content:"\f80e"}.bi-r-circle::before{content:"\f80f"}.bi-r-square-fill::before{content:"\f810"}.bi-r-square::before{content:"\f811"}.bi-repeat-1::before{content:"\f812"}.bi-repeat::before{content:"\f813"}.bi-rewind-btn-fill::before{content:"\f814"}.bi-rewind-btn::before{content:"\f815"}.bi-rewind-circle-fill::before{content:"\f816"}.bi-rewind-circle::before{content:"\f817"}.bi-rewind-fill::before{content:"\f818"}.bi-rewind::before{content:"\f819"}.bi-train-freight-front-fill::before{content:"\f81a"}.bi-train-freight-front::before{content:"\f81b"}.bi-train-front-fill::before{content:"\f81c"}.bi-train-front::before{content:"\f81d"}.bi-train-lightrail-front-fill::before{content:"\f81e"}.bi-train-lightrail-front::before{content:"\f81f"}.bi-truck-front-fill::before{content:"\f820"}.bi-truck-front::before{content:"\f821"}.bi-ubuntu::before{content:"\f822"}.bi-unindent::before{content:"\f823"}.bi-unity::before{content:"\f824"}.bi-universal-access-circle::before{content:"\f825"}.bi-universal-access::before{content:"\f826"}.bi-virus::before{content:"\f827"}.bi-virus2::before{content:"\f828"}.bi-wechat::before{content:"\f829"}.bi-yelp::before{content:"\f82a"}.bi-sign-stop-fill::before{content:"\f82b"}.bi-sign-stop-lights-fill::before{content:"\f82c"}.bi-sign-stop-lights::before{content:"\f82d"}.bi-sign-stop::before{content:"\f82e"}.bi-sign-turn-left-fill::before{content:"\f82f"}.bi-sign-turn-left::before{content:"\f830"}.bi-sign-turn-right-fill::before{content:"\f831"}.bi-sign-turn-right::before{content:"\f832"}.bi-sign-turn-slight-left-fill::before{content:"\f833"}.bi-sign-turn-slight-left::before{content:"\f834"}.bi-sign-turn-slight-right-fill::before{content:"\f835"}.bi-sign-turn-slight-right::before{content:"\f836"}.bi-sign-yield-fill::before{content:"\f837"}.bi-sign-yield::before{content:"\f838"}.bi-ev-station-fill::before{content:"\f839"}.bi-ev-station::before{content:"\f83a"}.bi-fuel-pump-diesel-fill::before{content:"\f83b"}.bi-fuel-pump-diesel::before{content:"\f83c"}.bi-fuel-pump-fill::before{content:"\f83d"}.bi-fuel-pump::before{content:"\f83e"}.bi-0-circle-fill::before{content:"\f83f"}.bi-0-circle::before{content:"\f840"}.bi-0-square-fill::before{content:"\f841"}.bi-0-square::before{content:"\f842"}.bi-rocket-fill::before{content:"\f843"}.bi-rocket-takeoff-fill::before{content:"\f844"}.bi-rocket-takeoff::before{content:"\f845"}.bi-rocket::before{content:"\f846"}.bi-stripe::before{content:"\f847"}.bi-subscript::before{content:"\f848"}.bi-superscript::before{content:"\f849"}.bi-trello::before{content:"\f84a"}.bi-envelope-at-fill::before{content:"\f84b"}.bi-envelope-at::before{content:"\f84c"}.bi-regex::before{content:"\f84d"}.bi-text-wrap::before{content:"\f84e"}.bi-sign-dead-end-fill::before{content:"\f84f"}.bi-sign-dead-end::before{content:"\f850"}.bi-sign-do-not-enter-fill::before{content:"\f851"}.bi-sign-do-not-enter::before{content:"\f852"}.bi-sign-intersection-fill::before{content:"\f853"}.bi-sign-intersection-side-fill::before{content:"\f854"}.bi-sign-intersection-side::before{content:"\f855"}.bi-sign-intersection-t-fill::before{content:"\f856"}.bi-sign-intersection-t::before{content:"\f857"}.bi-sign-intersection-y-fill::before{content:"\f858"}.bi-sign-intersection-y::before{content:"\f859"}.bi-sign-intersection::before{content:"\f85a"}.bi-sign-merge-left-fill::before{content:"\f85b"}.bi-sign-merge-left::before{content:"\f85c"}.bi-sign-merge-right-fill::before{content:"\f85d"}.bi-sign-merge-right::before{content:"\f85e"}.bi-sign-no-left-turn-fill::before{content:"\f85f"}.bi-sign-no-left-turn::before{content:"\f860"}.bi-sign-no-parking-fill::before{content:"\f861"}.bi-sign-no-parking::before{content:"\f862"}.bi-sign-no-right-turn-fill::before{content:"\f863"}.bi-sign-no-right-turn::before{content:"\f864"}.bi-sign-railroad-fill::before{content:"\f865"}.bi-sign-railroad::before{content:"\f866"}.bi-building-add::before{content:"\f867"}.bi-building-check::before{content:"\f868"}.bi-building-dash::before{content:"\f869"}.bi-building-down::before{content:"\f86a"}.bi-building-exclamation::before{content:"\f86b"}.bi-building-fill-add::before{content:"\f86c"}.bi-building-fill-check::before{content:"\f86d"}.bi-building-fill-dash::before{content:"\f86e"}.bi-building-fill-down::before{content:"\f86f"}.bi-building-fill-exclamation::before{content:"\f870"}.bi-building-fill-gear::before{content:"\f871"}.bi-building-fill-lock::before{content:"\f872"}.bi-building-fill-slash::before{content:"\f873"}.bi-building-fill-up::before{content:"\f874"}.bi-building-fill-x::before{content:"\f875"}.bi-building-fill::before{content:"\f876"}.bi-building-gear::before{content:"\f877"}.bi-building-lock::before{content:"\f878"}.bi-building-slash::before{content:"\f879"}.bi-building-up::before{content:"\f87a"}.bi-building-x::before{content:"\f87b"}.bi-buildings-fill::before{content:"\f87c"}.bi-buildings::before{content:"\f87d"}.bi-bus-front-fill::before{content:"\f87e"}.bi-bus-front::before{content:"\f87f"}.bi-ev-front-fill::before{content:"\f880"}.bi-ev-front::before{content:"\f881"}.bi-globe-americas::before{content:"\f882"}.bi-globe-asia-australia::before{content:"\f883"}.bi-globe-central-south-asia::before{content:"\f884"}.bi-globe-europe-africa::before{content:"\f885"}.bi-house-add-fill::before{content:"\f886"}.bi-house-add::before{content:"\f887"}.bi-house-check-fill::before{content:"\f888"}.bi-house-check::before{content:"\f889"}.bi-house-dash-fill::before{content:"\f88a"}.bi-house-dash::before{content:"\f88b"}.bi-house-down-fill::before{content:"\f88c"}.bi-house-down::before{content:"\f88d"}.bi-house-exclamation-fill::before{content:"\f88e"}.bi-house-exclamation::before{content:"\f88f"}.bi-house-gear-fill::before{content:"\f890"}.bi-house-gear::before{content:"\f891"}.bi-house-lock-fill::before{content:"\f892"}.bi-house-lock::before{content:"\f893"}.bi-house-slash-fill::before{content:"\f894"}.bi-house-slash::before{content:"\f895"}.bi-house-up-fill::before{content:"\f896"}.bi-house-up::before{content:"\f897"}.bi-house-x-fill::before{content:"\f898"}.bi-house-x::before{content:"\f899"}.bi-person-add::before{content:"\f89a"}.bi-person-down::before{content:"\f89b"}.bi-person-exclamation::before{content:"\f89c"}.bi-person-fill-add::before{content:"\f89d"}.bi-person-fill-check::before{content:"\f89e"}.bi-person-fill-dash::before{content:"\f89f"}.bi-person-fill-down::before{content:"\f8a0"}.bi-person-fill-exclamation::before{content:"\f8a1"}.bi-person-fill-gear::before{content:"\f8a2"}.bi-person-fill-lock::before{content:"\f8a3"}.bi-person-fill-slash::before{content:"\f8a4"}.bi-person-fill-up::before{content:"\f8a5"}.bi-person-fill-x::before{content:"\f8a6"}.bi-person-gear::before{content:"\f8a7"}.bi-person-lock::before{content:"\f8a8"}.bi-person-slash::before{content:"\f8a9"}.bi-person-up::before{content:"\f8aa"}.bi-scooter::before{content:"\f8ab"}.bi-taxi-front-fill::before{content:"\f8ac"}.bi-taxi-front::before{content:"\f8ad"}.bi-amd::before{content:"\f8ae"}.bi-database-add::before{content:"\f8af"}.bi-database-check::before{content:"\f8b0"}.bi-database-dash::before{content:"\f8b1"}.bi-database-down::before{content:"\f8b2"}.bi-database-exclamation::before{content:"\f8b3"}.bi-database-fill-add::before{content:"\f8b4"}.bi-database-fill-check::before{content:"\f8b5"}.bi-database-fill-dash::before{content:"\f8b6"}.bi-database-fill-down::before{content:"\f8b7"}.bi-database-fill-exclamation::before{content:"\f8b8"}.bi-database-fill-gear::before{content:"\f8b9"}.bi-database-fill-lock::before{content:"\f8ba"}.bi-database-fill-slash::before{content:"\f8bb"}.bi-database-fill-up::before{content:"\f8bc"}.bi-database-fill-x::before{content:"\f8bd"}.bi-database-fill::before{content:"\f8be"}.bi-database-gear::before{content:"\f8bf"}.bi-database-lock::before{content:"\f8c0"}.bi-database-slash::before{content:"\f8c1"}.bi-database-up::before{content:"\f8c2"}.bi-database-x::before{content:"\f8c3"}.bi-database::before{content:"\f8c4"}.bi-houses-fill::before{content:"\f8c5"}.bi-houses::before{content:"\f8c6"}.bi-nvidia::before{content:"\f8c7"}.bi-person-vcard-fill::before{content:"\f8c8"}.bi-person-vcard::before{content:"\f8c9"}.bi-sina-weibo::before{content:"\f8ca"}.bi-tencent-qq::before{content:"\f8cb"}.bi-wikipedia::before{content:"\f8cc"} \ No newline at end of file + */@font-face{font-display:block;font-family:bootstrap-icons;src:url("../fonts/bootstrap-icons.woff2?e34853135f9e39acf64315236852cd5a") format("woff2"),url("../fonts/bootstrap-icons.woff?e34853135f9e39acf64315236852cd5a") format("woff")}.bi::before,[class*=" bi-"]::before,[class^=bi-]::before{display:inline-block;font-family:bootstrap-icons!important;font-style:normal;font-weight:400!important;font-variant:normal;text-transform:none;line-height:1;vertical-align:-.125em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bi-123::before{content:"\f67f"}.bi-alarm-fill::before{content:"\f101"}.bi-alarm::before{content:"\f102"}.bi-align-bottom::before{content:"\f103"}.bi-align-center::before{content:"\f104"}.bi-align-end::before{content:"\f105"}.bi-align-middle::before{content:"\f106"}.bi-align-start::before{content:"\f107"}.bi-align-top::before{content:"\f108"}.bi-alt::before{content:"\f109"}.bi-app-indicator::before{content:"\f10a"}.bi-app::before{content:"\f10b"}.bi-archive-fill::before{content:"\f10c"}.bi-archive::before{content:"\f10d"}.bi-arrow-90deg-down::before{content:"\f10e"}.bi-arrow-90deg-left::before{content:"\f10f"}.bi-arrow-90deg-right::before{content:"\f110"}.bi-arrow-90deg-up::before{content:"\f111"}.bi-arrow-bar-down::before{content:"\f112"}.bi-arrow-bar-left::before{content:"\f113"}.bi-arrow-bar-right::before{content:"\f114"}.bi-arrow-bar-up::before{content:"\f115"}.bi-arrow-clockwise::before{content:"\f116"}.bi-arrow-counterclockwise::before{content:"\f117"}.bi-arrow-down-circle-fill::before{content:"\f118"}.bi-arrow-down-circle::before{content:"\f119"}.bi-arrow-down-left-circle-fill::before{content:"\f11a"}.bi-arrow-down-left-circle::before{content:"\f11b"}.bi-arrow-down-left-square-fill::before{content:"\f11c"}.bi-arrow-down-left-square::before{content:"\f11d"}.bi-arrow-down-left::before{content:"\f11e"}.bi-arrow-down-right-circle-fill::before{content:"\f11f"}.bi-arrow-down-right-circle::before{content:"\f120"}.bi-arrow-down-right-square-fill::before{content:"\f121"}.bi-arrow-down-right-square::before{content:"\f122"}.bi-arrow-down-right::before{content:"\f123"}.bi-arrow-down-short::before{content:"\f124"}.bi-arrow-down-square-fill::before{content:"\f125"}.bi-arrow-down-square::before{content:"\f126"}.bi-arrow-down-up::before{content:"\f127"}.bi-arrow-down::before{content:"\f128"}.bi-arrow-left-circle-fill::before{content:"\f129"}.bi-arrow-left-circle::before{content:"\f12a"}.bi-arrow-left-right::before{content:"\f12b"}.bi-arrow-left-short::before{content:"\f12c"}.bi-arrow-left-square-fill::before{content:"\f12d"}.bi-arrow-left-square::before{content:"\f12e"}.bi-arrow-left::before{content:"\f12f"}.bi-arrow-repeat::before{content:"\f130"}.bi-arrow-return-left::before{content:"\f131"}.bi-arrow-return-right::before{content:"\f132"}.bi-arrow-right-circle-fill::before{content:"\f133"}.bi-arrow-right-circle::before{content:"\f134"}.bi-arrow-right-short::before{content:"\f135"}.bi-arrow-right-square-fill::before{content:"\f136"}.bi-arrow-right-square::before{content:"\f137"}.bi-arrow-right::before{content:"\f138"}.bi-arrow-up-circle-fill::before{content:"\f139"}.bi-arrow-up-circle::before{content:"\f13a"}.bi-arrow-up-left-circle-fill::before{content:"\f13b"}.bi-arrow-up-left-circle::before{content:"\f13c"}.bi-arrow-up-left-square-fill::before{content:"\f13d"}.bi-arrow-up-left-square::before{content:"\f13e"}.bi-arrow-up-left::before{content:"\f13f"}.bi-arrow-up-right-circle-fill::before{content:"\f140"}.bi-arrow-up-right-circle::before{content:"\f141"}.bi-arrow-up-right-square-fill::before{content:"\f142"}.bi-arrow-up-right-square::before{content:"\f143"}.bi-arrow-up-right::before{content:"\f144"}.bi-arrow-up-short::before{content:"\f145"}.bi-arrow-up-square-fill::before{content:"\f146"}.bi-arrow-up-square::before{content:"\f147"}.bi-arrow-up::before{content:"\f148"}.bi-arrows-angle-contract::before{content:"\f149"}.bi-arrows-angle-expand::before{content:"\f14a"}.bi-arrows-collapse::before{content:"\f14b"}.bi-arrows-expand::before{content:"\f14c"}.bi-arrows-fullscreen::before{content:"\f14d"}.bi-arrows-move::before{content:"\f14e"}.bi-aspect-ratio-fill::before{content:"\f14f"}.bi-aspect-ratio::before{content:"\f150"}.bi-asterisk::before{content:"\f151"}.bi-at::before{content:"\f152"}.bi-award-fill::before{content:"\f153"}.bi-award::before{content:"\f154"}.bi-back::before{content:"\f155"}.bi-backspace-fill::before{content:"\f156"}.bi-backspace-reverse-fill::before{content:"\f157"}.bi-backspace-reverse::before{content:"\f158"}.bi-backspace::before{content:"\f159"}.bi-badge-3d-fill::before{content:"\f15a"}.bi-badge-3d::before{content:"\f15b"}.bi-badge-4k-fill::before{content:"\f15c"}.bi-badge-4k::before{content:"\f15d"}.bi-badge-8k-fill::before{content:"\f15e"}.bi-badge-8k::before{content:"\f15f"}.bi-badge-ad-fill::before{content:"\f160"}.bi-badge-ad::before{content:"\f161"}.bi-badge-ar-fill::before{content:"\f162"}.bi-badge-ar::before{content:"\f163"}.bi-badge-cc-fill::before{content:"\f164"}.bi-badge-cc::before{content:"\f165"}.bi-badge-hd-fill::before{content:"\f166"}.bi-badge-hd::before{content:"\f167"}.bi-badge-tm-fill::before{content:"\f168"}.bi-badge-tm::before{content:"\f169"}.bi-badge-vo-fill::before{content:"\f16a"}.bi-badge-vo::before{content:"\f16b"}.bi-badge-vr-fill::before{content:"\f16c"}.bi-badge-vr::before{content:"\f16d"}.bi-badge-wc-fill::before{content:"\f16e"}.bi-badge-wc::before{content:"\f16f"}.bi-bag-check-fill::before{content:"\f170"}.bi-bag-check::before{content:"\f171"}.bi-bag-dash-fill::before{content:"\f172"}.bi-bag-dash::before{content:"\f173"}.bi-bag-fill::before{content:"\f174"}.bi-bag-plus-fill::before{content:"\f175"}.bi-bag-plus::before{content:"\f176"}.bi-bag-x-fill::before{content:"\f177"}.bi-bag-x::before{content:"\f178"}.bi-bag::before{content:"\f179"}.bi-bar-chart-fill::before{content:"\f17a"}.bi-bar-chart-line-fill::before{content:"\f17b"}.bi-bar-chart-line::before{content:"\f17c"}.bi-bar-chart-steps::before{content:"\f17d"}.bi-bar-chart::before{content:"\f17e"}.bi-basket-fill::before{content:"\f17f"}.bi-basket::before{content:"\f180"}.bi-basket2-fill::before{content:"\f181"}.bi-basket2::before{content:"\f182"}.bi-basket3-fill::before{content:"\f183"}.bi-basket3::before{content:"\f184"}.bi-battery-charging::before{content:"\f185"}.bi-battery-full::before{content:"\f186"}.bi-battery-half::before{content:"\f187"}.bi-battery::before{content:"\f188"}.bi-bell-fill::before{content:"\f189"}.bi-bell::before{content:"\f18a"}.bi-bezier::before{content:"\f18b"}.bi-bezier2::before{content:"\f18c"}.bi-bicycle::before{content:"\f18d"}.bi-binoculars-fill::before{content:"\f18e"}.bi-binoculars::before{content:"\f18f"}.bi-blockquote-left::before{content:"\f190"}.bi-blockquote-right::before{content:"\f191"}.bi-book-fill::before{content:"\f192"}.bi-book-half::before{content:"\f193"}.bi-book::before{content:"\f194"}.bi-bookmark-check-fill::before{content:"\f195"}.bi-bookmark-check::before{content:"\f196"}.bi-bookmark-dash-fill::before{content:"\f197"}.bi-bookmark-dash::before{content:"\f198"}.bi-bookmark-fill::before{content:"\f199"}.bi-bookmark-heart-fill::before{content:"\f19a"}.bi-bookmark-heart::before{content:"\f19b"}.bi-bookmark-plus-fill::before{content:"\f19c"}.bi-bookmark-plus::before{content:"\f19d"}.bi-bookmark-star-fill::before{content:"\f19e"}.bi-bookmark-star::before{content:"\f19f"}.bi-bookmark-x-fill::before{content:"\f1a0"}.bi-bookmark-x::before{content:"\f1a1"}.bi-bookmark::before{content:"\f1a2"}.bi-bookmarks-fill::before{content:"\f1a3"}.bi-bookmarks::before{content:"\f1a4"}.bi-bookshelf::before{content:"\f1a5"}.bi-bootstrap-fill::before{content:"\f1a6"}.bi-bootstrap-reboot::before{content:"\f1a7"}.bi-bootstrap::before{content:"\f1a8"}.bi-border-all::before{content:"\f1a9"}.bi-border-bottom::before{content:"\f1aa"}.bi-border-center::before{content:"\f1ab"}.bi-border-inner::before{content:"\f1ac"}.bi-border-left::before{content:"\f1ad"}.bi-border-middle::before{content:"\f1ae"}.bi-border-outer::before{content:"\f1af"}.bi-border-right::before{content:"\f1b0"}.bi-border-style::before{content:"\f1b1"}.bi-border-top::before{content:"\f1b2"}.bi-border-width::before{content:"\f1b3"}.bi-border::before{content:"\f1b4"}.bi-bounding-box-circles::before{content:"\f1b5"}.bi-bounding-box::before{content:"\f1b6"}.bi-box-arrow-down-left::before{content:"\f1b7"}.bi-box-arrow-down-right::before{content:"\f1b8"}.bi-box-arrow-down::before{content:"\f1b9"}.bi-box-arrow-in-down-left::before{content:"\f1ba"}.bi-box-arrow-in-down-right::before{content:"\f1bb"}.bi-box-arrow-in-down::before{content:"\f1bc"}.bi-box-arrow-in-left::before{content:"\f1bd"}.bi-box-arrow-in-right::before{content:"\f1be"}.bi-box-arrow-in-up-left::before{content:"\f1bf"}.bi-box-arrow-in-up-right::before{content:"\f1c0"}.bi-box-arrow-in-up::before{content:"\f1c1"}.bi-box-arrow-left::before{content:"\f1c2"}.bi-box-arrow-right::before{content:"\f1c3"}.bi-box-arrow-up-left::before{content:"\f1c4"}.bi-box-arrow-up-right::before{content:"\f1c5"}.bi-box-arrow-up::before{content:"\f1c6"}.bi-box-seam::before{content:"\f1c7"}.bi-box::before{content:"\f1c8"}.bi-braces::before{content:"\f1c9"}.bi-bricks::before{content:"\f1ca"}.bi-briefcase-fill::before{content:"\f1cb"}.bi-briefcase::before{content:"\f1cc"}.bi-brightness-alt-high-fill::before{content:"\f1cd"}.bi-brightness-alt-high::before{content:"\f1ce"}.bi-brightness-alt-low-fill::before{content:"\f1cf"}.bi-brightness-alt-low::before{content:"\f1d0"}.bi-brightness-high-fill::before{content:"\f1d1"}.bi-brightness-high::before{content:"\f1d2"}.bi-brightness-low-fill::before{content:"\f1d3"}.bi-brightness-low::before{content:"\f1d4"}.bi-broadcast-pin::before{content:"\f1d5"}.bi-broadcast::before{content:"\f1d6"}.bi-brush-fill::before{content:"\f1d7"}.bi-brush::before{content:"\f1d8"}.bi-bucket-fill::before{content:"\f1d9"}.bi-bucket::before{content:"\f1da"}.bi-bug-fill::before{content:"\f1db"}.bi-bug::before{content:"\f1dc"}.bi-building::before{content:"\f1dd"}.bi-bullseye::before{content:"\f1de"}.bi-calculator-fill::before{content:"\f1df"}.bi-calculator::before{content:"\f1e0"}.bi-calendar-check-fill::before{content:"\f1e1"}.bi-calendar-check::before{content:"\f1e2"}.bi-calendar-date-fill::before{content:"\f1e3"}.bi-calendar-date::before{content:"\f1e4"}.bi-calendar-day-fill::before{content:"\f1e5"}.bi-calendar-day::before{content:"\f1e6"}.bi-calendar-event-fill::before{content:"\f1e7"}.bi-calendar-event::before{content:"\f1e8"}.bi-calendar-fill::before{content:"\f1e9"}.bi-calendar-minus-fill::before{content:"\f1ea"}.bi-calendar-minus::before{content:"\f1eb"}.bi-calendar-month-fill::before{content:"\f1ec"}.bi-calendar-month::before{content:"\f1ed"}.bi-calendar-plus-fill::before{content:"\f1ee"}.bi-calendar-plus::before{content:"\f1ef"}.bi-calendar-range-fill::before{content:"\f1f0"}.bi-calendar-range::before{content:"\f1f1"}.bi-calendar-week-fill::before{content:"\f1f2"}.bi-calendar-week::before{content:"\f1f3"}.bi-calendar-x-fill::before{content:"\f1f4"}.bi-calendar-x::before{content:"\f1f5"}.bi-calendar::before{content:"\f1f6"}.bi-calendar2-check-fill::before{content:"\f1f7"}.bi-calendar2-check::before{content:"\f1f8"}.bi-calendar2-date-fill::before{content:"\f1f9"}.bi-calendar2-date::before{content:"\f1fa"}.bi-calendar2-day-fill::before{content:"\f1fb"}.bi-calendar2-day::before{content:"\f1fc"}.bi-calendar2-event-fill::before{content:"\f1fd"}.bi-calendar2-event::before{content:"\f1fe"}.bi-calendar2-fill::before{content:"\f1ff"}.bi-calendar2-minus-fill::before{content:"\f200"}.bi-calendar2-minus::before{content:"\f201"}.bi-calendar2-month-fill::before{content:"\f202"}.bi-calendar2-month::before{content:"\f203"}.bi-calendar2-plus-fill::before{content:"\f204"}.bi-calendar2-plus::before{content:"\f205"}.bi-calendar2-range-fill::before{content:"\f206"}.bi-calendar2-range::before{content:"\f207"}.bi-calendar2-week-fill::before{content:"\f208"}.bi-calendar2-week::before{content:"\f209"}.bi-calendar2-x-fill::before{content:"\f20a"}.bi-calendar2-x::before{content:"\f20b"}.bi-calendar2::before{content:"\f20c"}.bi-calendar3-event-fill::before{content:"\f20d"}.bi-calendar3-event::before{content:"\f20e"}.bi-calendar3-fill::before{content:"\f20f"}.bi-calendar3-range-fill::before{content:"\f210"}.bi-calendar3-range::before{content:"\f211"}.bi-calendar3-week-fill::before{content:"\f212"}.bi-calendar3-week::before{content:"\f213"}.bi-calendar3::before{content:"\f214"}.bi-calendar4-event::before{content:"\f215"}.bi-calendar4-range::before{content:"\f216"}.bi-calendar4-week::before{content:"\f217"}.bi-calendar4::before{content:"\f218"}.bi-camera-fill::before{content:"\f219"}.bi-camera-reels-fill::before{content:"\f21a"}.bi-camera-reels::before{content:"\f21b"}.bi-camera-video-fill::before{content:"\f21c"}.bi-camera-video-off-fill::before{content:"\f21d"}.bi-camera-video-off::before{content:"\f21e"}.bi-camera-video::before{content:"\f21f"}.bi-camera::before{content:"\f220"}.bi-camera2::before{content:"\f221"}.bi-capslock-fill::before{content:"\f222"}.bi-capslock::before{content:"\f223"}.bi-card-checklist::before{content:"\f224"}.bi-card-heading::before{content:"\f225"}.bi-card-image::before{content:"\f226"}.bi-card-list::before{content:"\f227"}.bi-card-text::before{content:"\f228"}.bi-caret-down-fill::before{content:"\f229"}.bi-caret-down-square-fill::before{content:"\f22a"}.bi-caret-down-square::before{content:"\f22b"}.bi-caret-down::before{content:"\f22c"}.bi-caret-left-fill::before{content:"\f22d"}.bi-caret-left-square-fill::before{content:"\f22e"}.bi-caret-left-square::before{content:"\f22f"}.bi-caret-left::before{content:"\f230"}.bi-caret-right-fill::before{content:"\f231"}.bi-caret-right-square-fill::before{content:"\f232"}.bi-caret-right-square::before{content:"\f233"}.bi-caret-right::before{content:"\f234"}.bi-caret-up-fill::before{content:"\f235"}.bi-caret-up-square-fill::before{content:"\f236"}.bi-caret-up-square::before{content:"\f237"}.bi-caret-up::before{content:"\f238"}.bi-cart-check-fill::before{content:"\f239"}.bi-cart-check::before{content:"\f23a"}.bi-cart-dash-fill::before{content:"\f23b"}.bi-cart-dash::before{content:"\f23c"}.bi-cart-fill::before{content:"\f23d"}.bi-cart-plus-fill::before{content:"\f23e"}.bi-cart-plus::before{content:"\f23f"}.bi-cart-x-fill::before{content:"\f240"}.bi-cart-x::before{content:"\f241"}.bi-cart::before{content:"\f242"}.bi-cart2::before{content:"\f243"}.bi-cart3::before{content:"\f244"}.bi-cart4::before{content:"\f245"}.bi-cash-stack::before{content:"\f246"}.bi-cash::before{content:"\f247"}.bi-cast::before{content:"\f248"}.bi-chat-dots-fill::before{content:"\f249"}.bi-chat-dots::before{content:"\f24a"}.bi-chat-fill::before{content:"\f24b"}.bi-chat-left-dots-fill::before{content:"\f24c"}.bi-chat-left-dots::before{content:"\f24d"}.bi-chat-left-fill::before{content:"\f24e"}.bi-chat-left-quote-fill::before{content:"\f24f"}.bi-chat-left-quote::before{content:"\f250"}.bi-chat-left-text-fill::before{content:"\f251"}.bi-chat-left-text::before{content:"\f252"}.bi-chat-left::before{content:"\f253"}.bi-chat-quote-fill::before{content:"\f254"}.bi-chat-quote::before{content:"\f255"}.bi-chat-right-dots-fill::before{content:"\f256"}.bi-chat-right-dots::before{content:"\f257"}.bi-chat-right-fill::before{content:"\f258"}.bi-chat-right-quote-fill::before{content:"\f259"}.bi-chat-right-quote::before{content:"\f25a"}.bi-chat-right-text-fill::before{content:"\f25b"}.bi-chat-right-text::before{content:"\f25c"}.bi-chat-right::before{content:"\f25d"}.bi-chat-square-dots-fill::before{content:"\f25e"}.bi-chat-square-dots::before{content:"\f25f"}.bi-chat-square-fill::before{content:"\f260"}.bi-chat-square-quote-fill::before{content:"\f261"}.bi-chat-square-quote::before{content:"\f262"}.bi-chat-square-text-fill::before{content:"\f263"}.bi-chat-square-text::before{content:"\f264"}.bi-chat-square::before{content:"\f265"}.bi-chat-text-fill::before{content:"\f266"}.bi-chat-text::before{content:"\f267"}.bi-chat::before{content:"\f268"}.bi-check-all::before{content:"\f269"}.bi-check-circle-fill::before{content:"\f26a"}.bi-check-circle::before{content:"\f26b"}.bi-check-square-fill::before{content:"\f26c"}.bi-check-square::before{content:"\f26d"}.bi-check::before{content:"\f26e"}.bi-check2-all::before{content:"\f26f"}.bi-check2-circle::before{content:"\f270"}.bi-check2-square::before{content:"\f271"}.bi-check2::before{content:"\f272"}.bi-chevron-bar-contract::before{content:"\f273"}.bi-chevron-bar-down::before{content:"\f274"}.bi-chevron-bar-expand::before{content:"\f275"}.bi-chevron-bar-left::before{content:"\f276"}.bi-chevron-bar-right::before{content:"\f277"}.bi-chevron-bar-up::before{content:"\f278"}.bi-chevron-compact-down::before{content:"\f279"}.bi-chevron-compact-left::before{content:"\f27a"}.bi-chevron-compact-right::before{content:"\f27b"}.bi-chevron-compact-up::before{content:"\f27c"}.bi-chevron-contract::before{content:"\f27d"}.bi-chevron-double-down::before{content:"\f27e"}.bi-chevron-double-left::before{content:"\f27f"}.bi-chevron-double-right::before{content:"\f280"}.bi-chevron-double-up::before{content:"\f281"}.bi-chevron-down::before{content:"\f282"}.bi-chevron-expand::before{content:"\f283"}.bi-chevron-left::before{content:"\f284"}.bi-chevron-right::before{content:"\f285"}.bi-chevron-up::before{content:"\f286"}.bi-circle-fill::before{content:"\f287"}.bi-circle-half::before{content:"\f288"}.bi-circle-square::before{content:"\f289"}.bi-circle::before{content:"\f28a"}.bi-clipboard-check::before{content:"\f28b"}.bi-clipboard-data::before{content:"\f28c"}.bi-clipboard-minus::before{content:"\f28d"}.bi-clipboard-plus::before{content:"\f28e"}.bi-clipboard-x::before{content:"\f28f"}.bi-clipboard::before{content:"\f290"}.bi-clock-fill::before{content:"\f291"}.bi-clock-history::before{content:"\f292"}.bi-clock::before{content:"\f293"}.bi-cloud-arrow-down-fill::before{content:"\f294"}.bi-cloud-arrow-down::before{content:"\f295"}.bi-cloud-arrow-up-fill::before{content:"\f296"}.bi-cloud-arrow-up::before{content:"\f297"}.bi-cloud-check-fill::before{content:"\f298"}.bi-cloud-check::before{content:"\f299"}.bi-cloud-download-fill::before{content:"\f29a"}.bi-cloud-download::before{content:"\f29b"}.bi-cloud-drizzle-fill::before{content:"\f29c"}.bi-cloud-drizzle::before{content:"\f29d"}.bi-cloud-fill::before{content:"\f29e"}.bi-cloud-fog-fill::before{content:"\f29f"}.bi-cloud-fog::before{content:"\f2a0"}.bi-cloud-fog2-fill::before{content:"\f2a1"}.bi-cloud-fog2::before{content:"\f2a2"}.bi-cloud-hail-fill::before{content:"\f2a3"}.bi-cloud-hail::before{content:"\f2a4"}.bi-cloud-haze-fill::before{content:"\f2a6"}.bi-cloud-haze::before{content:"\f2a7"}.bi-cloud-haze2-fill::before{content:"\f2a8"}.bi-cloud-lightning-fill::before{content:"\f2a9"}.bi-cloud-lightning-rain-fill::before{content:"\f2aa"}.bi-cloud-lightning-rain::before{content:"\f2ab"}.bi-cloud-lightning::before{content:"\f2ac"}.bi-cloud-minus-fill::before{content:"\f2ad"}.bi-cloud-minus::before{content:"\f2ae"}.bi-cloud-moon-fill::before{content:"\f2af"}.bi-cloud-moon::before{content:"\f2b0"}.bi-cloud-plus-fill::before{content:"\f2b1"}.bi-cloud-plus::before{content:"\f2b2"}.bi-cloud-rain-fill::before{content:"\f2b3"}.bi-cloud-rain-heavy-fill::before{content:"\f2b4"}.bi-cloud-rain-heavy::before{content:"\f2b5"}.bi-cloud-rain::before{content:"\f2b6"}.bi-cloud-slash-fill::before{content:"\f2b7"}.bi-cloud-slash::before{content:"\f2b8"}.bi-cloud-sleet-fill::before{content:"\f2b9"}.bi-cloud-sleet::before{content:"\f2ba"}.bi-cloud-snow-fill::before{content:"\f2bb"}.bi-cloud-snow::before{content:"\f2bc"}.bi-cloud-sun-fill::before{content:"\f2bd"}.bi-cloud-sun::before{content:"\f2be"}.bi-cloud-upload-fill::before{content:"\f2bf"}.bi-cloud-upload::before{content:"\f2c0"}.bi-cloud::before{content:"\f2c1"}.bi-clouds-fill::before{content:"\f2c2"}.bi-clouds::before{content:"\f2c3"}.bi-cloudy-fill::before{content:"\f2c4"}.bi-cloudy::before{content:"\f2c5"}.bi-code-slash::before{content:"\f2c6"}.bi-code-square::before{content:"\f2c7"}.bi-code::before{content:"\f2c8"}.bi-collection-fill::before{content:"\f2c9"}.bi-collection-play-fill::before{content:"\f2ca"}.bi-collection-play::before{content:"\f2cb"}.bi-collection::before{content:"\f2cc"}.bi-columns-gap::before{content:"\f2cd"}.bi-columns::before{content:"\f2ce"}.bi-command::before{content:"\f2cf"}.bi-compass-fill::before{content:"\f2d0"}.bi-compass::before{content:"\f2d1"}.bi-cone-striped::before{content:"\f2d2"}.bi-cone::before{content:"\f2d3"}.bi-controller::before{content:"\f2d4"}.bi-cpu-fill::before{content:"\f2d5"}.bi-cpu::before{content:"\f2d6"}.bi-credit-card-2-back-fill::before{content:"\f2d7"}.bi-credit-card-2-back::before{content:"\f2d8"}.bi-credit-card-2-front-fill::before{content:"\f2d9"}.bi-credit-card-2-front::before{content:"\f2da"}.bi-credit-card-fill::before{content:"\f2db"}.bi-credit-card::before{content:"\f2dc"}.bi-crop::before{content:"\f2dd"}.bi-cup-fill::before{content:"\f2de"}.bi-cup-straw::before{content:"\f2df"}.bi-cup::before{content:"\f2e0"}.bi-cursor-fill::before{content:"\f2e1"}.bi-cursor-text::before{content:"\f2e2"}.bi-cursor::before{content:"\f2e3"}.bi-dash-circle-dotted::before{content:"\f2e4"}.bi-dash-circle-fill::before{content:"\f2e5"}.bi-dash-circle::before{content:"\f2e6"}.bi-dash-square-dotted::before{content:"\f2e7"}.bi-dash-square-fill::before{content:"\f2e8"}.bi-dash-square::before{content:"\f2e9"}.bi-dash::before{content:"\f2ea"}.bi-diagram-2-fill::before{content:"\f2eb"}.bi-diagram-2::before{content:"\f2ec"}.bi-diagram-3-fill::before{content:"\f2ed"}.bi-diagram-3::before{content:"\f2ee"}.bi-diamond-fill::before{content:"\f2ef"}.bi-diamond-half::before{content:"\f2f0"}.bi-diamond::before{content:"\f2f1"}.bi-dice-1-fill::before{content:"\f2f2"}.bi-dice-1::before{content:"\f2f3"}.bi-dice-2-fill::before{content:"\f2f4"}.bi-dice-2::before{content:"\f2f5"}.bi-dice-3-fill::before{content:"\f2f6"}.bi-dice-3::before{content:"\f2f7"}.bi-dice-4-fill::before{content:"\f2f8"}.bi-dice-4::before{content:"\f2f9"}.bi-dice-5-fill::before{content:"\f2fa"}.bi-dice-5::before{content:"\f2fb"}.bi-dice-6-fill::before{content:"\f2fc"}.bi-dice-6::before{content:"\f2fd"}.bi-disc-fill::before{content:"\f2fe"}.bi-disc::before{content:"\f2ff"}.bi-discord::before{content:"\f300"}.bi-display-fill::before{content:"\f301"}.bi-display::before{content:"\f302"}.bi-distribute-horizontal::before{content:"\f303"}.bi-distribute-vertical::before{content:"\f304"}.bi-door-closed-fill::before{content:"\f305"}.bi-door-closed::before{content:"\f306"}.bi-door-open-fill::before{content:"\f307"}.bi-door-open::before{content:"\f308"}.bi-dot::before{content:"\f309"}.bi-download::before{content:"\f30a"}.bi-droplet-fill::before{content:"\f30b"}.bi-droplet-half::before{content:"\f30c"}.bi-droplet::before{content:"\f30d"}.bi-earbuds::before{content:"\f30e"}.bi-easel-fill::before{content:"\f30f"}.bi-easel::before{content:"\f310"}.bi-egg-fill::before{content:"\f311"}.bi-egg-fried::before{content:"\f312"}.bi-egg::before{content:"\f313"}.bi-eject-fill::before{content:"\f314"}.bi-eject::before{content:"\f315"}.bi-emoji-angry-fill::before{content:"\f316"}.bi-emoji-angry::before{content:"\f317"}.bi-emoji-dizzy-fill::before{content:"\f318"}.bi-emoji-dizzy::before{content:"\f319"}.bi-emoji-expressionless-fill::before{content:"\f31a"}.bi-emoji-expressionless::before{content:"\f31b"}.bi-emoji-frown-fill::before{content:"\f31c"}.bi-emoji-frown::before{content:"\f31d"}.bi-emoji-heart-eyes-fill::before{content:"\f31e"}.bi-emoji-heart-eyes::before{content:"\f31f"}.bi-emoji-laughing-fill::before{content:"\f320"}.bi-emoji-laughing::before{content:"\f321"}.bi-emoji-neutral-fill::before{content:"\f322"}.bi-emoji-neutral::before{content:"\f323"}.bi-emoji-smile-fill::before{content:"\f324"}.bi-emoji-smile-upside-down-fill::before{content:"\f325"}.bi-emoji-smile-upside-down::before{content:"\f326"}.bi-emoji-smile::before{content:"\f327"}.bi-emoji-sunglasses-fill::before{content:"\f328"}.bi-emoji-sunglasses::before{content:"\f329"}.bi-emoji-wink-fill::before{content:"\f32a"}.bi-emoji-wink::before{content:"\f32b"}.bi-envelope-fill::before{content:"\f32c"}.bi-envelope-open-fill::before{content:"\f32d"}.bi-envelope-open::before{content:"\f32e"}.bi-envelope::before{content:"\f32f"}.bi-eraser-fill::before{content:"\f330"}.bi-eraser::before{content:"\f331"}.bi-exclamation-circle-fill::before{content:"\f332"}.bi-exclamation-circle::before{content:"\f333"}.bi-exclamation-diamond-fill::before{content:"\f334"}.bi-exclamation-diamond::before{content:"\f335"}.bi-exclamation-octagon-fill::before{content:"\f336"}.bi-exclamation-octagon::before{content:"\f337"}.bi-exclamation-square-fill::before{content:"\f338"}.bi-exclamation-square::before{content:"\f339"}.bi-exclamation-triangle-fill::before{content:"\f33a"}.bi-exclamation-triangle::before{content:"\f33b"}.bi-exclamation::before{content:"\f33c"}.bi-exclude::before{content:"\f33d"}.bi-eye-fill::before{content:"\f33e"}.bi-eye-slash-fill::before{content:"\f33f"}.bi-eye-slash::before{content:"\f340"}.bi-eye::before{content:"\f341"}.bi-eyedropper::before{content:"\f342"}.bi-eyeglasses::before{content:"\f343"}.bi-facebook::before{content:"\f344"}.bi-file-arrow-down-fill::before{content:"\f345"}.bi-file-arrow-down::before{content:"\f346"}.bi-file-arrow-up-fill::before{content:"\f347"}.bi-file-arrow-up::before{content:"\f348"}.bi-file-bar-graph-fill::before{content:"\f349"}.bi-file-bar-graph::before{content:"\f34a"}.bi-file-binary-fill::before{content:"\f34b"}.bi-file-binary::before{content:"\f34c"}.bi-file-break-fill::before{content:"\f34d"}.bi-file-break::before{content:"\f34e"}.bi-file-check-fill::before{content:"\f34f"}.bi-file-check::before{content:"\f350"}.bi-file-code-fill::before{content:"\f351"}.bi-file-code::before{content:"\f352"}.bi-file-diff-fill::before{content:"\f353"}.bi-file-diff::before{content:"\f354"}.bi-file-earmark-arrow-down-fill::before{content:"\f355"}.bi-file-earmark-arrow-down::before{content:"\f356"}.bi-file-earmark-arrow-up-fill::before{content:"\f357"}.bi-file-earmark-arrow-up::before{content:"\f358"}.bi-file-earmark-bar-graph-fill::before{content:"\f359"}.bi-file-earmark-bar-graph::before{content:"\f35a"}.bi-file-earmark-binary-fill::before{content:"\f35b"}.bi-file-earmark-binary::before{content:"\f35c"}.bi-file-earmark-break-fill::before{content:"\f35d"}.bi-file-earmark-break::before{content:"\f35e"}.bi-file-earmark-check-fill::before{content:"\f35f"}.bi-file-earmark-check::before{content:"\f360"}.bi-file-earmark-code-fill::before{content:"\f361"}.bi-file-earmark-code::before{content:"\f362"}.bi-file-earmark-diff-fill::before{content:"\f363"}.bi-file-earmark-diff::before{content:"\f364"}.bi-file-earmark-easel-fill::before{content:"\f365"}.bi-file-earmark-easel::before{content:"\f366"}.bi-file-earmark-excel-fill::before{content:"\f367"}.bi-file-earmark-excel::before{content:"\f368"}.bi-file-earmark-fill::before{content:"\f369"}.bi-file-earmark-font-fill::before{content:"\f36a"}.bi-file-earmark-font::before{content:"\f36b"}.bi-file-earmark-image-fill::before{content:"\f36c"}.bi-file-earmark-image::before{content:"\f36d"}.bi-file-earmark-lock-fill::before{content:"\f36e"}.bi-file-earmark-lock::before{content:"\f36f"}.bi-file-earmark-lock2-fill::before{content:"\f370"}.bi-file-earmark-lock2::before{content:"\f371"}.bi-file-earmark-medical-fill::before{content:"\f372"}.bi-file-earmark-medical::before{content:"\f373"}.bi-file-earmark-minus-fill::before{content:"\f374"}.bi-file-earmark-minus::before{content:"\f375"}.bi-file-earmark-music-fill::before{content:"\f376"}.bi-file-earmark-music::before{content:"\f377"}.bi-file-earmark-person-fill::before{content:"\f378"}.bi-file-earmark-person::before{content:"\f379"}.bi-file-earmark-play-fill::before{content:"\f37a"}.bi-file-earmark-play::before{content:"\f37b"}.bi-file-earmark-plus-fill::before{content:"\f37c"}.bi-file-earmark-plus::before{content:"\f37d"}.bi-file-earmark-post-fill::before{content:"\f37e"}.bi-file-earmark-post::before{content:"\f37f"}.bi-file-earmark-ppt-fill::before{content:"\f380"}.bi-file-earmark-ppt::before{content:"\f381"}.bi-file-earmark-richtext-fill::before{content:"\f382"}.bi-file-earmark-richtext::before{content:"\f383"}.bi-file-earmark-ruled-fill::before{content:"\f384"}.bi-file-earmark-ruled::before{content:"\f385"}.bi-file-earmark-slides-fill::before{content:"\f386"}.bi-file-earmark-slides::before{content:"\f387"}.bi-file-earmark-spreadsheet-fill::before{content:"\f388"}.bi-file-earmark-spreadsheet::before{content:"\f389"}.bi-file-earmark-text-fill::before{content:"\f38a"}.bi-file-earmark-text::before{content:"\f38b"}.bi-file-earmark-word-fill::before{content:"\f38c"}.bi-file-earmark-word::before{content:"\f38d"}.bi-file-earmark-x-fill::before{content:"\f38e"}.bi-file-earmark-x::before{content:"\f38f"}.bi-file-earmark-zip-fill::before{content:"\f390"}.bi-file-earmark-zip::before{content:"\f391"}.bi-file-earmark::before{content:"\f392"}.bi-file-easel-fill::before{content:"\f393"}.bi-file-easel::before{content:"\f394"}.bi-file-excel-fill::before{content:"\f395"}.bi-file-excel::before{content:"\f396"}.bi-file-fill::before{content:"\f397"}.bi-file-font-fill::before{content:"\f398"}.bi-file-font::before{content:"\f399"}.bi-file-image-fill::before{content:"\f39a"}.bi-file-image::before{content:"\f39b"}.bi-file-lock-fill::before{content:"\f39c"}.bi-file-lock::before{content:"\f39d"}.bi-file-lock2-fill::before{content:"\f39e"}.bi-file-lock2::before{content:"\f39f"}.bi-file-medical-fill::before{content:"\f3a0"}.bi-file-medical::before{content:"\f3a1"}.bi-file-minus-fill::before{content:"\f3a2"}.bi-file-minus::before{content:"\f3a3"}.bi-file-music-fill::before{content:"\f3a4"}.bi-file-music::before{content:"\f3a5"}.bi-file-person-fill::before{content:"\f3a6"}.bi-file-person::before{content:"\f3a7"}.bi-file-play-fill::before{content:"\f3a8"}.bi-file-play::before{content:"\f3a9"}.bi-file-plus-fill::before{content:"\f3aa"}.bi-file-plus::before{content:"\f3ab"}.bi-file-post-fill::before{content:"\f3ac"}.bi-file-post::before{content:"\f3ad"}.bi-file-ppt-fill::before{content:"\f3ae"}.bi-file-ppt::before{content:"\f3af"}.bi-file-richtext-fill::before{content:"\f3b0"}.bi-file-richtext::before{content:"\f3b1"}.bi-file-ruled-fill::before{content:"\f3b2"}.bi-file-ruled::before{content:"\f3b3"}.bi-file-slides-fill::before{content:"\f3b4"}.bi-file-slides::before{content:"\f3b5"}.bi-file-spreadsheet-fill::before{content:"\f3b6"}.bi-file-spreadsheet::before{content:"\f3b7"}.bi-file-text-fill::before{content:"\f3b8"}.bi-file-text::before{content:"\f3b9"}.bi-file-word-fill::before{content:"\f3ba"}.bi-file-word::before{content:"\f3bb"}.bi-file-x-fill::before{content:"\f3bc"}.bi-file-x::before{content:"\f3bd"}.bi-file-zip-fill::before{content:"\f3be"}.bi-file-zip::before{content:"\f3bf"}.bi-file::before{content:"\f3c0"}.bi-files-alt::before{content:"\f3c1"}.bi-files::before{content:"\f3c2"}.bi-film::before{content:"\f3c3"}.bi-filter-circle-fill::before{content:"\f3c4"}.bi-filter-circle::before{content:"\f3c5"}.bi-filter-left::before{content:"\f3c6"}.bi-filter-right::before{content:"\f3c7"}.bi-filter-square-fill::before{content:"\f3c8"}.bi-filter-square::before{content:"\f3c9"}.bi-filter::before{content:"\f3ca"}.bi-flag-fill::before{content:"\f3cb"}.bi-flag::before{content:"\f3cc"}.bi-flower1::before{content:"\f3cd"}.bi-flower2::before{content:"\f3ce"}.bi-flower3::before{content:"\f3cf"}.bi-folder-check::before{content:"\f3d0"}.bi-folder-fill::before{content:"\f3d1"}.bi-folder-minus::before{content:"\f3d2"}.bi-folder-plus::before{content:"\f3d3"}.bi-folder-symlink-fill::before{content:"\f3d4"}.bi-folder-symlink::before{content:"\f3d5"}.bi-folder-x::before{content:"\f3d6"}.bi-folder::before{content:"\f3d7"}.bi-folder2-open::before{content:"\f3d8"}.bi-folder2::before{content:"\f3d9"}.bi-fonts::before{content:"\f3da"}.bi-forward-fill::before{content:"\f3db"}.bi-forward::before{content:"\f3dc"}.bi-front::before{content:"\f3dd"}.bi-fullscreen-exit::before{content:"\f3de"}.bi-fullscreen::before{content:"\f3df"}.bi-funnel-fill::before{content:"\f3e0"}.bi-funnel::before{content:"\f3e1"}.bi-gear-fill::before{content:"\f3e2"}.bi-gear-wide-connected::before{content:"\f3e3"}.bi-gear-wide::before{content:"\f3e4"}.bi-gear::before{content:"\f3e5"}.bi-gem::before{content:"\f3e6"}.bi-geo-alt-fill::before{content:"\f3e7"}.bi-geo-alt::before{content:"\f3e8"}.bi-geo-fill::before{content:"\f3e9"}.bi-geo::before{content:"\f3ea"}.bi-gift-fill::before{content:"\f3eb"}.bi-gift::before{content:"\f3ec"}.bi-github::before{content:"\f3ed"}.bi-globe::before{content:"\f3ee"}.bi-globe2::before{content:"\f3ef"}.bi-google::before{content:"\f3f0"}.bi-graph-down::before{content:"\f3f1"}.bi-graph-up::before{content:"\f3f2"}.bi-grid-1x2-fill::before{content:"\f3f3"}.bi-grid-1x2::before{content:"\f3f4"}.bi-grid-3x2-gap-fill::before{content:"\f3f5"}.bi-grid-3x2-gap::before{content:"\f3f6"}.bi-grid-3x2::before{content:"\f3f7"}.bi-grid-3x3-gap-fill::before{content:"\f3f8"}.bi-grid-3x3-gap::before{content:"\f3f9"}.bi-grid-3x3::before{content:"\f3fa"}.bi-grid-fill::before{content:"\f3fb"}.bi-grid::before{content:"\f3fc"}.bi-grip-horizontal::before{content:"\f3fd"}.bi-grip-vertical::before{content:"\f3fe"}.bi-hammer::before{content:"\f3ff"}.bi-hand-index-fill::before{content:"\f400"}.bi-hand-index-thumb-fill::before{content:"\f401"}.bi-hand-index-thumb::before{content:"\f402"}.bi-hand-index::before{content:"\f403"}.bi-hand-thumbs-down-fill::before{content:"\f404"}.bi-hand-thumbs-down::before{content:"\f405"}.bi-hand-thumbs-up-fill::before{content:"\f406"}.bi-hand-thumbs-up::before{content:"\f407"}.bi-handbag-fill::before{content:"\f408"}.bi-handbag::before{content:"\f409"}.bi-hash::before{content:"\f40a"}.bi-hdd-fill::before{content:"\f40b"}.bi-hdd-network-fill::before{content:"\f40c"}.bi-hdd-network::before{content:"\f40d"}.bi-hdd-rack-fill::before{content:"\f40e"}.bi-hdd-rack::before{content:"\f40f"}.bi-hdd-stack-fill::before{content:"\f410"}.bi-hdd-stack::before{content:"\f411"}.bi-hdd::before{content:"\f412"}.bi-headphones::before{content:"\f413"}.bi-headset::before{content:"\f414"}.bi-heart-fill::before{content:"\f415"}.bi-heart-half::before{content:"\f416"}.bi-heart::before{content:"\f417"}.bi-heptagon-fill::before{content:"\f418"}.bi-heptagon-half::before{content:"\f419"}.bi-heptagon::before{content:"\f41a"}.bi-hexagon-fill::before{content:"\f41b"}.bi-hexagon-half::before{content:"\f41c"}.bi-hexagon::before{content:"\f41d"}.bi-hourglass-bottom::before{content:"\f41e"}.bi-hourglass-split::before{content:"\f41f"}.bi-hourglass-top::before{content:"\f420"}.bi-hourglass::before{content:"\f421"}.bi-house-door-fill::before{content:"\f422"}.bi-house-door::before{content:"\f423"}.bi-house-fill::before{content:"\f424"}.bi-house::before{content:"\f425"}.bi-hr::before{content:"\f426"}.bi-hurricane::before{content:"\f427"}.bi-image-alt::before{content:"\f428"}.bi-image-fill::before{content:"\f429"}.bi-image::before{content:"\f42a"}.bi-images::before{content:"\f42b"}.bi-inbox-fill::before{content:"\f42c"}.bi-inbox::before{content:"\f42d"}.bi-inboxes-fill::before{content:"\f42e"}.bi-inboxes::before{content:"\f42f"}.bi-info-circle-fill::before{content:"\f430"}.bi-info-circle::before{content:"\f431"}.bi-info-square-fill::before{content:"\f432"}.bi-info-square::before{content:"\f433"}.bi-info::before{content:"\f434"}.bi-input-cursor-text::before{content:"\f435"}.bi-input-cursor::before{content:"\f436"}.bi-instagram::before{content:"\f437"}.bi-intersect::before{content:"\f438"}.bi-journal-album::before{content:"\f439"}.bi-journal-arrow-down::before{content:"\f43a"}.bi-journal-arrow-up::before{content:"\f43b"}.bi-journal-bookmark-fill::before{content:"\f43c"}.bi-journal-bookmark::before{content:"\f43d"}.bi-journal-check::before{content:"\f43e"}.bi-journal-code::before{content:"\f43f"}.bi-journal-medical::before{content:"\f440"}.bi-journal-minus::before{content:"\f441"}.bi-journal-plus::before{content:"\f442"}.bi-journal-richtext::before{content:"\f443"}.bi-journal-text::before{content:"\f444"}.bi-journal-x::before{content:"\f445"}.bi-journal::before{content:"\f446"}.bi-journals::before{content:"\f447"}.bi-joystick::before{content:"\f448"}.bi-justify-left::before{content:"\f449"}.bi-justify-right::before{content:"\f44a"}.bi-justify::before{content:"\f44b"}.bi-kanban-fill::before{content:"\f44c"}.bi-kanban::before{content:"\f44d"}.bi-key-fill::before{content:"\f44e"}.bi-key::before{content:"\f44f"}.bi-keyboard-fill::before{content:"\f450"}.bi-keyboard::before{content:"\f451"}.bi-ladder::before{content:"\f452"}.bi-lamp-fill::before{content:"\f453"}.bi-lamp::before{content:"\f454"}.bi-laptop-fill::before{content:"\f455"}.bi-laptop::before{content:"\f456"}.bi-layer-backward::before{content:"\f457"}.bi-layer-forward::before{content:"\f458"}.bi-layers-fill::before{content:"\f459"}.bi-layers-half::before{content:"\f45a"}.bi-layers::before{content:"\f45b"}.bi-layout-sidebar-inset-reverse::before{content:"\f45c"}.bi-layout-sidebar-inset::before{content:"\f45d"}.bi-layout-sidebar-reverse::before{content:"\f45e"}.bi-layout-sidebar::before{content:"\f45f"}.bi-layout-split::before{content:"\f460"}.bi-layout-text-sidebar-reverse::before{content:"\f461"}.bi-layout-text-sidebar::before{content:"\f462"}.bi-layout-text-window-reverse::before{content:"\f463"}.bi-layout-text-window::before{content:"\f464"}.bi-layout-three-columns::before{content:"\f465"}.bi-layout-wtf::before{content:"\f466"}.bi-life-preserver::before{content:"\f467"}.bi-lightbulb-fill::before{content:"\f468"}.bi-lightbulb-off-fill::before{content:"\f469"}.bi-lightbulb-off::before{content:"\f46a"}.bi-lightbulb::before{content:"\f46b"}.bi-lightning-charge-fill::before{content:"\f46c"}.bi-lightning-charge::before{content:"\f46d"}.bi-lightning-fill::before{content:"\f46e"}.bi-lightning::before{content:"\f46f"}.bi-link-45deg::before{content:"\f470"}.bi-link::before{content:"\f471"}.bi-linkedin::before{content:"\f472"}.bi-list-check::before{content:"\f473"}.bi-list-nested::before{content:"\f474"}.bi-list-ol::before{content:"\f475"}.bi-list-stars::before{content:"\f476"}.bi-list-task::before{content:"\f477"}.bi-list-ul::before{content:"\f478"}.bi-list::before{content:"\f479"}.bi-lock-fill::before{content:"\f47a"}.bi-lock::before{content:"\f47b"}.bi-mailbox::before{content:"\f47c"}.bi-mailbox2::before{content:"\f47d"}.bi-map-fill::before{content:"\f47e"}.bi-map::before{content:"\f47f"}.bi-markdown-fill::before{content:"\f480"}.bi-markdown::before{content:"\f481"}.bi-mask::before{content:"\f482"}.bi-megaphone-fill::before{content:"\f483"}.bi-megaphone::before{content:"\f484"}.bi-menu-app-fill::before{content:"\f485"}.bi-menu-app::before{content:"\f486"}.bi-menu-button-fill::before{content:"\f487"}.bi-menu-button-wide-fill::before{content:"\f488"}.bi-menu-button-wide::before{content:"\f489"}.bi-menu-button::before{content:"\f48a"}.bi-menu-down::before{content:"\f48b"}.bi-menu-up::before{content:"\f48c"}.bi-mic-fill::before{content:"\f48d"}.bi-mic-mute-fill::before{content:"\f48e"}.bi-mic-mute::before{content:"\f48f"}.bi-mic::before{content:"\f490"}.bi-minecart-loaded::before{content:"\f491"}.bi-minecart::before{content:"\f492"}.bi-moisture::before{content:"\f493"}.bi-moon-fill::before{content:"\f494"}.bi-moon-stars-fill::before{content:"\f495"}.bi-moon-stars::before{content:"\f496"}.bi-moon::before{content:"\f497"}.bi-mouse-fill::before{content:"\f498"}.bi-mouse::before{content:"\f499"}.bi-mouse2-fill::before{content:"\f49a"}.bi-mouse2::before{content:"\f49b"}.bi-mouse3-fill::before{content:"\f49c"}.bi-mouse3::before{content:"\f49d"}.bi-music-note-beamed::before{content:"\f49e"}.bi-music-note-list::before{content:"\f49f"}.bi-music-note::before{content:"\f4a0"}.bi-music-player-fill::before{content:"\f4a1"}.bi-music-player::before{content:"\f4a2"}.bi-newspaper::before{content:"\f4a3"}.bi-node-minus-fill::before{content:"\f4a4"}.bi-node-minus::before{content:"\f4a5"}.bi-node-plus-fill::before{content:"\f4a6"}.bi-node-plus::before{content:"\f4a7"}.bi-nut-fill::before{content:"\f4a8"}.bi-nut::before{content:"\f4a9"}.bi-octagon-fill::before{content:"\f4aa"}.bi-octagon-half::before{content:"\f4ab"}.bi-octagon::before{content:"\f4ac"}.bi-option::before{content:"\f4ad"}.bi-outlet::before{content:"\f4ae"}.bi-paint-bucket::before{content:"\f4af"}.bi-palette-fill::before{content:"\f4b0"}.bi-palette::before{content:"\f4b1"}.bi-palette2::before{content:"\f4b2"}.bi-paperclip::before{content:"\f4b3"}.bi-paragraph::before{content:"\f4b4"}.bi-patch-check-fill::before{content:"\f4b5"}.bi-patch-check::before{content:"\f4b6"}.bi-patch-exclamation-fill::before{content:"\f4b7"}.bi-patch-exclamation::before{content:"\f4b8"}.bi-patch-minus-fill::before{content:"\f4b9"}.bi-patch-minus::before{content:"\f4ba"}.bi-patch-plus-fill::before{content:"\f4bb"}.bi-patch-plus::before{content:"\f4bc"}.bi-patch-question-fill::before{content:"\f4bd"}.bi-patch-question::before{content:"\f4be"}.bi-pause-btn-fill::before{content:"\f4bf"}.bi-pause-btn::before{content:"\f4c0"}.bi-pause-circle-fill::before{content:"\f4c1"}.bi-pause-circle::before{content:"\f4c2"}.bi-pause-fill::before{content:"\f4c3"}.bi-pause::before{content:"\f4c4"}.bi-peace-fill::before{content:"\f4c5"}.bi-peace::before{content:"\f4c6"}.bi-pen-fill::before{content:"\f4c7"}.bi-pen::before{content:"\f4c8"}.bi-pencil-fill::before{content:"\f4c9"}.bi-pencil-square::before{content:"\f4ca"}.bi-pencil::before{content:"\f4cb"}.bi-pentagon-fill::before{content:"\f4cc"}.bi-pentagon-half::before{content:"\f4cd"}.bi-pentagon::before{content:"\f4ce"}.bi-people-fill::before{content:"\f4cf"}.bi-people::before{content:"\f4d0"}.bi-percent::before{content:"\f4d1"}.bi-person-badge-fill::before{content:"\f4d2"}.bi-person-badge::before{content:"\f4d3"}.bi-person-bounding-box::before{content:"\f4d4"}.bi-person-check-fill::before{content:"\f4d5"}.bi-person-check::before{content:"\f4d6"}.bi-person-circle::before{content:"\f4d7"}.bi-person-dash-fill::before{content:"\f4d8"}.bi-person-dash::before{content:"\f4d9"}.bi-person-fill::before{content:"\f4da"}.bi-person-lines-fill::before{content:"\f4db"}.bi-person-plus-fill::before{content:"\f4dc"}.bi-person-plus::before{content:"\f4dd"}.bi-person-square::before{content:"\f4de"}.bi-person-x-fill::before{content:"\f4df"}.bi-person-x::before{content:"\f4e0"}.bi-person::before{content:"\f4e1"}.bi-phone-fill::before{content:"\f4e2"}.bi-phone-landscape-fill::before{content:"\f4e3"}.bi-phone-landscape::before{content:"\f4e4"}.bi-phone-vibrate-fill::before{content:"\f4e5"}.bi-phone-vibrate::before{content:"\f4e6"}.bi-phone::before{content:"\f4e7"}.bi-pie-chart-fill::before{content:"\f4e8"}.bi-pie-chart::before{content:"\f4e9"}.bi-pin-angle-fill::before{content:"\f4ea"}.bi-pin-angle::before{content:"\f4eb"}.bi-pin-fill::before{content:"\f4ec"}.bi-pin::before{content:"\f4ed"}.bi-pip-fill::before{content:"\f4ee"}.bi-pip::before{content:"\f4ef"}.bi-play-btn-fill::before{content:"\f4f0"}.bi-play-btn::before{content:"\f4f1"}.bi-play-circle-fill::before{content:"\f4f2"}.bi-play-circle::before{content:"\f4f3"}.bi-play-fill::before{content:"\f4f4"}.bi-play::before{content:"\f4f5"}.bi-plug-fill::before{content:"\f4f6"}.bi-plug::before{content:"\f4f7"}.bi-plus-circle-dotted::before{content:"\f4f8"}.bi-plus-circle-fill::before{content:"\f4f9"}.bi-plus-circle::before{content:"\f4fa"}.bi-plus-square-dotted::before{content:"\f4fb"}.bi-plus-square-fill::before{content:"\f4fc"}.bi-plus-square::before{content:"\f4fd"}.bi-plus::before{content:"\f4fe"}.bi-power::before{content:"\f4ff"}.bi-printer-fill::before{content:"\f500"}.bi-printer::before{content:"\f501"}.bi-puzzle-fill::before{content:"\f502"}.bi-puzzle::before{content:"\f503"}.bi-question-circle-fill::before{content:"\f504"}.bi-question-circle::before{content:"\f505"}.bi-question-diamond-fill::before{content:"\f506"}.bi-question-diamond::before{content:"\f507"}.bi-question-octagon-fill::before{content:"\f508"}.bi-question-octagon::before{content:"\f509"}.bi-question-square-fill::before{content:"\f50a"}.bi-question-square::before{content:"\f50b"}.bi-question::before{content:"\f50c"}.bi-rainbow::before{content:"\f50d"}.bi-receipt-cutoff::before{content:"\f50e"}.bi-receipt::before{content:"\f50f"}.bi-reception-0::before{content:"\f510"}.bi-reception-1::before{content:"\f511"}.bi-reception-2::before{content:"\f512"}.bi-reception-3::before{content:"\f513"}.bi-reception-4::before{content:"\f514"}.bi-record-btn-fill::before{content:"\f515"}.bi-record-btn::before{content:"\f516"}.bi-record-circle-fill::before{content:"\f517"}.bi-record-circle::before{content:"\f518"}.bi-record-fill::before{content:"\f519"}.bi-record::before{content:"\f51a"}.bi-record2-fill::before{content:"\f51b"}.bi-record2::before{content:"\f51c"}.bi-reply-all-fill::before{content:"\f51d"}.bi-reply-all::before{content:"\f51e"}.bi-reply-fill::before{content:"\f51f"}.bi-reply::before{content:"\f520"}.bi-rss-fill::before{content:"\f521"}.bi-rss::before{content:"\f522"}.bi-rulers::before{content:"\f523"}.bi-save-fill::before{content:"\f524"}.bi-save::before{content:"\f525"}.bi-save2-fill::before{content:"\f526"}.bi-save2::before{content:"\f527"}.bi-scissors::before{content:"\f528"}.bi-screwdriver::before{content:"\f529"}.bi-search::before{content:"\f52a"}.bi-segmented-nav::before{content:"\f52b"}.bi-server::before{content:"\f52c"}.bi-share-fill::before{content:"\f52d"}.bi-share::before{content:"\f52e"}.bi-shield-check::before{content:"\f52f"}.bi-shield-exclamation::before{content:"\f530"}.bi-shield-fill-check::before{content:"\f531"}.bi-shield-fill-exclamation::before{content:"\f532"}.bi-shield-fill-minus::before{content:"\f533"}.bi-shield-fill-plus::before{content:"\f534"}.bi-shield-fill-x::before{content:"\f535"}.bi-shield-fill::before{content:"\f536"}.bi-shield-lock-fill::before{content:"\f537"}.bi-shield-lock::before{content:"\f538"}.bi-shield-minus::before{content:"\f539"}.bi-shield-plus::before{content:"\f53a"}.bi-shield-shaded::before{content:"\f53b"}.bi-shield-slash-fill::before{content:"\f53c"}.bi-shield-slash::before{content:"\f53d"}.bi-shield-x::before{content:"\f53e"}.bi-shield::before{content:"\f53f"}.bi-shift-fill::before{content:"\f540"}.bi-shift::before{content:"\f541"}.bi-shop-window::before{content:"\f542"}.bi-shop::before{content:"\f543"}.bi-shuffle::before{content:"\f544"}.bi-signpost-2-fill::before{content:"\f545"}.bi-signpost-2::before{content:"\f546"}.bi-signpost-fill::before{content:"\f547"}.bi-signpost-split-fill::before{content:"\f548"}.bi-signpost-split::before{content:"\f549"}.bi-signpost::before{content:"\f54a"}.bi-sim-fill::before{content:"\f54b"}.bi-sim::before{content:"\f54c"}.bi-skip-backward-btn-fill::before{content:"\f54d"}.bi-skip-backward-btn::before{content:"\f54e"}.bi-skip-backward-circle-fill::before{content:"\f54f"}.bi-skip-backward-circle::before{content:"\f550"}.bi-skip-backward-fill::before{content:"\f551"}.bi-skip-backward::before{content:"\f552"}.bi-skip-end-btn-fill::before{content:"\f553"}.bi-skip-end-btn::before{content:"\f554"}.bi-skip-end-circle-fill::before{content:"\f555"}.bi-skip-end-circle::before{content:"\f556"}.bi-skip-end-fill::before{content:"\f557"}.bi-skip-end::before{content:"\f558"}.bi-skip-forward-btn-fill::before{content:"\f559"}.bi-skip-forward-btn::before{content:"\f55a"}.bi-skip-forward-circle-fill::before{content:"\f55b"}.bi-skip-forward-circle::before{content:"\f55c"}.bi-skip-forward-fill::before{content:"\f55d"}.bi-skip-forward::before{content:"\f55e"}.bi-skip-start-btn-fill::before{content:"\f55f"}.bi-skip-start-btn::before{content:"\f560"}.bi-skip-start-circle-fill::before{content:"\f561"}.bi-skip-start-circle::before{content:"\f562"}.bi-skip-start-fill::before{content:"\f563"}.bi-skip-start::before{content:"\f564"}.bi-slack::before{content:"\f565"}.bi-slash-circle-fill::before{content:"\f566"}.bi-slash-circle::before{content:"\f567"}.bi-slash-square-fill::before{content:"\f568"}.bi-slash-square::before{content:"\f569"}.bi-slash::before{content:"\f56a"}.bi-sliders::before{content:"\f56b"}.bi-smartwatch::before{content:"\f56c"}.bi-snow::before{content:"\f56d"}.bi-snow2::before{content:"\f56e"}.bi-snow3::before{content:"\f56f"}.bi-sort-alpha-down-alt::before{content:"\f570"}.bi-sort-alpha-down::before{content:"\f571"}.bi-sort-alpha-up-alt::before{content:"\f572"}.bi-sort-alpha-up::before{content:"\f573"}.bi-sort-down-alt::before{content:"\f574"}.bi-sort-down::before{content:"\f575"}.bi-sort-numeric-down-alt::before{content:"\f576"}.bi-sort-numeric-down::before{content:"\f577"}.bi-sort-numeric-up-alt::before{content:"\f578"}.bi-sort-numeric-up::before{content:"\f579"}.bi-sort-up-alt::before{content:"\f57a"}.bi-sort-up::before{content:"\f57b"}.bi-soundwave::before{content:"\f57c"}.bi-speaker-fill::before{content:"\f57d"}.bi-speaker::before{content:"\f57e"}.bi-speedometer::before{content:"\f57f"}.bi-speedometer2::before{content:"\f580"}.bi-spellcheck::before{content:"\f581"}.bi-square-fill::before{content:"\f582"}.bi-square-half::before{content:"\f583"}.bi-square::before{content:"\f584"}.bi-stack::before{content:"\f585"}.bi-star-fill::before{content:"\f586"}.bi-star-half::before{content:"\f587"}.bi-star::before{content:"\f588"}.bi-stars::before{content:"\f589"}.bi-stickies-fill::before{content:"\f58a"}.bi-stickies::before{content:"\f58b"}.bi-sticky-fill::before{content:"\f58c"}.bi-sticky::before{content:"\f58d"}.bi-stop-btn-fill::before{content:"\f58e"}.bi-stop-btn::before{content:"\f58f"}.bi-stop-circle-fill::before{content:"\f590"}.bi-stop-circle::before{content:"\f591"}.bi-stop-fill::before{content:"\f592"}.bi-stop::before{content:"\f593"}.bi-stoplights-fill::before{content:"\f594"}.bi-stoplights::before{content:"\f595"}.bi-stopwatch-fill::before{content:"\f596"}.bi-stopwatch::before{content:"\f597"}.bi-subtract::before{content:"\f598"}.bi-suit-club-fill::before{content:"\f599"}.bi-suit-club::before{content:"\f59a"}.bi-suit-diamond-fill::before{content:"\f59b"}.bi-suit-diamond::before{content:"\f59c"}.bi-suit-heart-fill::before{content:"\f59d"}.bi-suit-heart::before{content:"\f59e"}.bi-suit-spade-fill::before{content:"\f59f"}.bi-suit-spade::before{content:"\f5a0"}.bi-sun-fill::before{content:"\f5a1"}.bi-sun::before{content:"\f5a2"}.bi-sunglasses::before{content:"\f5a3"}.bi-sunrise-fill::before{content:"\f5a4"}.bi-sunrise::before{content:"\f5a5"}.bi-sunset-fill::before{content:"\f5a6"}.bi-sunset::before{content:"\f5a7"}.bi-symmetry-horizontal::before{content:"\f5a8"}.bi-symmetry-vertical::before{content:"\f5a9"}.bi-table::before{content:"\f5aa"}.bi-tablet-fill::before{content:"\f5ab"}.bi-tablet-landscape-fill::before{content:"\f5ac"}.bi-tablet-landscape::before{content:"\f5ad"}.bi-tablet::before{content:"\f5ae"}.bi-tag-fill::before{content:"\f5af"}.bi-tag::before{content:"\f5b0"}.bi-tags-fill::before{content:"\f5b1"}.bi-tags::before{content:"\f5b2"}.bi-telegram::before{content:"\f5b3"}.bi-telephone-fill::before{content:"\f5b4"}.bi-telephone-forward-fill::before{content:"\f5b5"}.bi-telephone-forward::before{content:"\f5b6"}.bi-telephone-inbound-fill::before{content:"\f5b7"}.bi-telephone-inbound::before{content:"\f5b8"}.bi-telephone-minus-fill::before{content:"\f5b9"}.bi-telephone-minus::before{content:"\f5ba"}.bi-telephone-outbound-fill::before{content:"\f5bb"}.bi-telephone-outbound::before{content:"\f5bc"}.bi-telephone-plus-fill::before{content:"\f5bd"}.bi-telephone-plus::before{content:"\f5be"}.bi-telephone-x-fill::before{content:"\f5bf"}.bi-telephone-x::before{content:"\f5c0"}.bi-telephone::before{content:"\f5c1"}.bi-terminal-fill::before{content:"\f5c2"}.bi-terminal::before{content:"\f5c3"}.bi-text-center::before{content:"\f5c4"}.bi-text-indent-left::before{content:"\f5c5"}.bi-text-indent-right::before{content:"\f5c6"}.bi-text-left::before{content:"\f5c7"}.bi-text-paragraph::before{content:"\f5c8"}.bi-text-right::before{content:"\f5c9"}.bi-textarea-resize::before{content:"\f5ca"}.bi-textarea-t::before{content:"\f5cb"}.bi-textarea::before{content:"\f5cc"}.bi-thermometer-half::before{content:"\f5cd"}.bi-thermometer-high::before{content:"\f5ce"}.bi-thermometer-low::before{content:"\f5cf"}.bi-thermometer-snow::before{content:"\f5d0"}.bi-thermometer-sun::before{content:"\f5d1"}.bi-thermometer::before{content:"\f5d2"}.bi-three-dots-vertical::before{content:"\f5d3"}.bi-three-dots::before{content:"\f5d4"}.bi-toggle-off::before{content:"\f5d5"}.bi-toggle-on::before{content:"\f5d6"}.bi-toggle2-off::before{content:"\f5d7"}.bi-toggle2-on::before{content:"\f5d8"}.bi-toggles::before{content:"\f5d9"}.bi-toggles2::before{content:"\f5da"}.bi-tools::before{content:"\f5db"}.bi-tornado::before{content:"\f5dc"}.bi-trash-fill::before{content:"\f5dd"}.bi-trash::before{content:"\f5de"}.bi-trash2-fill::before{content:"\f5df"}.bi-trash2::before{content:"\f5e0"}.bi-tree-fill::before{content:"\f5e1"}.bi-tree::before{content:"\f5e2"}.bi-triangle-fill::before{content:"\f5e3"}.bi-triangle-half::before{content:"\f5e4"}.bi-triangle::before{content:"\f5e5"}.bi-trophy-fill::before{content:"\f5e6"}.bi-trophy::before{content:"\f5e7"}.bi-tropical-storm::before{content:"\f5e8"}.bi-truck-flatbed::before{content:"\f5e9"}.bi-truck::before{content:"\f5ea"}.bi-tsunami::before{content:"\f5eb"}.bi-tv-fill::before{content:"\f5ec"}.bi-tv::before{content:"\f5ed"}.bi-twitch::before{content:"\f5ee"}.bi-twitter::before{content:"\f5ef"}.bi-type-bold::before{content:"\f5f0"}.bi-type-h1::before{content:"\f5f1"}.bi-type-h2::before{content:"\f5f2"}.bi-type-h3::before{content:"\f5f3"}.bi-type-italic::before{content:"\f5f4"}.bi-type-strikethrough::before{content:"\f5f5"}.bi-type-underline::before{content:"\f5f6"}.bi-type::before{content:"\f5f7"}.bi-ui-checks-grid::before{content:"\f5f8"}.bi-ui-checks::before{content:"\f5f9"}.bi-ui-radios-grid::before{content:"\f5fa"}.bi-ui-radios::before{content:"\f5fb"}.bi-umbrella-fill::before{content:"\f5fc"}.bi-umbrella::before{content:"\f5fd"}.bi-union::before{content:"\f5fe"}.bi-unlock-fill::before{content:"\f5ff"}.bi-unlock::before{content:"\f600"}.bi-upc-scan::before{content:"\f601"}.bi-upc::before{content:"\f602"}.bi-upload::before{content:"\f603"}.bi-vector-pen::before{content:"\f604"}.bi-view-list::before{content:"\f605"}.bi-view-stacked::before{content:"\f606"}.bi-vinyl-fill::before{content:"\f607"}.bi-vinyl::before{content:"\f608"}.bi-voicemail::before{content:"\f609"}.bi-volume-down-fill::before{content:"\f60a"}.bi-volume-down::before{content:"\f60b"}.bi-volume-mute-fill::before{content:"\f60c"}.bi-volume-mute::before{content:"\f60d"}.bi-volume-off-fill::before{content:"\f60e"}.bi-volume-off::before{content:"\f60f"}.bi-volume-up-fill::before{content:"\f610"}.bi-volume-up::before{content:"\f611"}.bi-vr::before{content:"\f612"}.bi-wallet-fill::before{content:"\f613"}.bi-wallet::before{content:"\f614"}.bi-wallet2::before{content:"\f615"}.bi-watch::before{content:"\f616"}.bi-water::before{content:"\f617"}.bi-whatsapp::before{content:"\f618"}.bi-wifi-1::before{content:"\f619"}.bi-wifi-2::before{content:"\f61a"}.bi-wifi-off::before{content:"\f61b"}.bi-wifi::before{content:"\f61c"}.bi-wind::before{content:"\f61d"}.bi-window-dock::before{content:"\f61e"}.bi-window-sidebar::before{content:"\f61f"}.bi-window::before{content:"\f620"}.bi-wrench::before{content:"\f621"}.bi-x-circle-fill::before{content:"\f622"}.bi-x-circle::before{content:"\f623"}.bi-x-diamond-fill::before{content:"\f624"}.bi-x-diamond::before{content:"\f625"}.bi-x-octagon-fill::before{content:"\f626"}.bi-x-octagon::before{content:"\f627"}.bi-x-square-fill::before{content:"\f628"}.bi-x-square::before{content:"\f629"}.bi-x::before{content:"\f62a"}.bi-youtube::before{content:"\f62b"}.bi-zoom-in::before{content:"\f62c"}.bi-zoom-out::before{content:"\f62d"}.bi-bank::before{content:"\f62e"}.bi-bank2::before{content:"\f62f"}.bi-bell-slash-fill::before{content:"\f630"}.bi-bell-slash::before{content:"\f631"}.bi-cash-coin::before{content:"\f632"}.bi-check-lg::before{content:"\f633"}.bi-coin::before{content:"\f634"}.bi-currency-bitcoin::before{content:"\f635"}.bi-currency-dollar::before{content:"\f636"}.bi-currency-euro::before{content:"\f637"}.bi-currency-exchange::before{content:"\f638"}.bi-currency-pound::before{content:"\f639"}.bi-currency-yen::before{content:"\f63a"}.bi-dash-lg::before{content:"\f63b"}.bi-exclamation-lg::before{content:"\f63c"}.bi-file-earmark-pdf-fill::before{content:"\f63d"}.bi-file-earmark-pdf::before{content:"\f63e"}.bi-file-pdf-fill::before{content:"\f63f"}.bi-file-pdf::before{content:"\f640"}.bi-gender-ambiguous::before{content:"\f641"}.bi-gender-female::before{content:"\f642"}.bi-gender-male::before{content:"\f643"}.bi-gender-trans::before{content:"\f644"}.bi-headset-vr::before{content:"\f645"}.bi-info-lg::before{content:"\f646"}.bi-mastodon::before{content:"\f647"}.bi-messenger::before{content:"\f648"}.bi-piggy-bank-fill::before{content:"\f649"}.bi-piggy-bank::before{content:"\f64a"}.bi-pin-map-fill::before{content:"\f64b"}.bi-pin-map::before{content:"\f64c"}.bi-plus-lg::before{content:"\f64d"}.bi-question-lg::before{content:"\f64e"}.bi-recycle::before{content:"\f64f"}.bi-reddit::before{content:"\f650"}.bi-safe-fill::before{content:"\f651"}.bi-safe2-fill::before{content:"\f652"}.bi-safe2::before{content:"\f653"}.bi-sd-card-fill::before{content:"\f654"}.bi-sd-card::before{content:"\f655"}.bi-skype::before{content:"\f656"}.bi-slash-lg::before{content:"\f657"}.bi-translate::before{content:"\f658"}.bi-x-lg::before{content:"\f659"}.bi-safe::before{content:"\f65a"}.bi-apple::before{content:"\f65b"}.bi-microsoft::before{content:"\f65d"}.bi-windows::before{content:"\f65e"}.bi-behance::before{content:"\f65c"}.bi-dribbble::before{content:"\f65f"}.bi-line::before{content:"\f660"}.bi-medium::before{content:"\f661"}.bi-paypal::before{content:"\f662"}.bi-pinterest::before{content:"\f663"}.bi-signal::before{content:"\f664"}.bi-snapchat::before{content:"\f665"}.bi-spotify::before{content:"\f666"}.bi-stack-overflow::before{content:"\f667"}.bi-strava::before{content:"\f668"}.bi-wordpress::before{content:"\f669"}.bi-vimeo::before{content:"\f66a"}.bi-activity::before{content:"\f66b"}.bi-easel2-fill::before{content:"\f66c"}.bi-easel2::before{content:"\f66d"}.bi-easel3-fill::before{content:"\f66e"}.bi-easel3::before{content:"\f66f"}.bi-fan::before{content:"\f670"}.bi-fingerprint::before{content:"\f671"}.bi-graph-down-arrow::before{content:"\f672"}.bi-graph-up-arrow::before{content:"\f673"}.bi-hypnotize::before{content:"\f674"}.bi-magic::before{content:"\f675"}.bi-person-rolodex::before{content:"\f676"}.bi-person-video::before{content:"\f677"}.bi-person-video2::before{content:"\f678"}.bi-person-video3::before{content:"\f679"}.bi-person-workspace::before{content:"\f67a"}.bi-radioactive::before{content:"\f67b"}.bi-webcam-fill::before{content:"\f67c"}.bi-webcam::before{content:"\f67d"}.bi-yin-yang::before{content:"\f67e"}.bi-bandaid-fill::before{content:"\f680"}.bi-bandaid::before{content:"\f681"}.bi-bluetooth::before{content:"\f682"}.bi-body-text::before{content:"\f683"}.bi-boombox::before{content:"\f684"}.bi-boxes::before{content:"\f685"}.bi-dpad-fill::before{content:"\f686"}.bi-dpad::before{content:"\f687"}.bi-ear-fill::before{content:"\f688"}.bi-ear::before{content:"\f689"}.bi-envelope-check-fill::before{content:"\f68b"}.bi-envelope-check::before{content:"\f68c"}.bi-envelope-dash-fill::before{content:"\f68e"}.bi-envelope-dash::before{content:"\f68f"}.bi-envelope-exclamation-fill::before{content:"\f691"}.bi-envelope-exclamation::before{content:"\f692"}.bi-envelope-plus-fill::before{content:"\f693"}.bi-envelope-plus::before{content:"\f694"}.bi-envelope-slash-fill::before{content:"\f696"}.bi-envelope-slash::before{content:"\f697"}.bi-envelope-x-fill::before{content:"\f699"}.bi-envelope-x::before{content:"\f69a"}.bi-explicit-fill::before{content:"\f69b"}.bi-explicit::before{content:"\f69c"}.bi-git::before{content:"\f69d"}.bi-infinity::before{content:"\f69e"}.bi-list-columns-reverse::before{content:"\f69f"}.bi-list-columns::before{content:"\f6a0"}.bi-meta::before{content:"\f6a1"}.bi-nintendo-switch::before{content:"\f6a4"}.bi-pc-display-horizontal::before{content:"\f6a5"}.bi-pc-display::before{content:"\f6a6"}.bi-pc-horizontal::before{content:"\f6a7"}.bi-pc::before{content:"\f6a8"}.bi-playstation::before{content:"\f6a9"}.bi-plus-slash-minus::before{content:"\f6aa"}.bi-projector-fill::before{content:"\f6ab"}.bi-projector::before{content:"\f6ac"}.bi-qr-code-scan::before{content:"\f6ad"}.bi-qr-code::before{content:"\f6ae"}.bi-quora::before{content:"\f6af"}.bi-quote::before{content:"\f6b0"}.bi-robot::before{content:"\f6b1"}.bi-send-check-fill::before{content:"\f6b2"}.bi-send-check::before{content:"\f6b3"}.bi-send-dash-fill::before{content:"\f6b4"}.bi-send-dash::before{content:"\f6b5"}.bi-send-exclamation-fill::before{content:"\f6b7"}.bi-send-exclamation::before{content:"\f6b8"}.bi-send-fill::before{content:"\f6b9"}.bi-send-plus-fill::before{content:"\f6ba"}.bi-send-plus::before{content:"\f6bb"}.bi-send-slash-fill::before{content:"\f6bc"}.bi-send-slash::before{content:"\f6bd"}.bi-send-x-fill::before{content:"\f6be"}.bi-send-x::before{content:"\f6bf"}.bi-send::before{content:"\f6c0"}.bi-steam::before{content:"\f6c1"}.bi-terminal-dash::before{content:"\f6c3"}.bi-terminal-plus::before{content:"\f6c4"}.bi-terminal-split::before{content:"\f6c5"}.bi-ticket-detailed-fill::before{content:"\f6c6"}.bi-ticket-detailed::before{content:"\f6c7"}.bi-ticket-fill::before{content:"\f6c8"}.bi-ticket-perforated-fill::before{content:"\f6c9"}.bi-ticket-perforated::before{content:"\f6ca"}.bi-ticket::before{content:"\f6cb"}.bi-tiktok::before{content:"\f6cc"}.bi-window-dash::before{content:"\f6cd"}.bi-window-desktop::before{content:"\f6ce"}.bi-window-fullscreen::before{content:"\f6cf"}.bi-window-plus::before{content:"\f6d0"}.bi-window-split::before{content:"\f6d1"}.bi-window-stack::before{content:"\f6d2"}.bi-window-x::before{content:"\f6d3"}.bi-xbox::before{content:"\f6d4"}.bi-ethernet::before{content:"\f6d5"}.bi-hdmi-fill::before{content:"\f6d6"}.bi-hdmi::before{content:"\f6d7"}.bi-usb-c-fill::before{content:"\f6d8"}.bi-usb-c::before{content:"\f6d9"}.bi-usb-fill::before{content:"\f6da"}.bi-usb-plug-fill::before{content:"\f6db"}.bi-usb-plug::before{content:"\f6dc"}.bi-usb-symbol::before{content:"\f6dd"}.bi-usb::before{content:"\f6de"}.bi-boombox-fill::before{content:"\f6df"}.bi-displayport::before{content:"\f6e1"}.bi-gpu-card::before{content:"\f6e2"}.bi-memory::before{content:"\f6e3"}.bi-modem-fill::before{content:"\f6e4"}.bi-modem::before{content:"\f6e5"}.bi-motherboard-fill::before{content:"\f6e6"}.bi-motherboard::before{content:"\f6e7"}.bi-optical-audio-fill::before{content:"\f6e8"}.bi-optical-audio::before{content:"\f6e9"}.bi-pci-card::before{content:"\f6ea"}.bi-router-fill::before{content:"\f6eb"}.bi-router::before{content:"\f6ec"}.bi-thunderbolt-fill::before{content:"\f6ef"}.bi-thunderbolt::before{content:"\f6f0"}.bi-usb-drive-fill::before{content:"\f6f1"}.bi-usb-drive::before{content:"\f6f2"}.bi-usb-micro-fill::before{content:"\f6f3"}.bi-usb-micro::before{content:"\f6f4"}.bi-usb-mini-fill::before{content:"\f6f5"}.bi-usb-mini::before{content:"\f6f6"}.bi-cloud-haze2::before{content:"\f6f7"}.bi-device-hdd-fill::before{content:"\f6f8"}.bi-device-hdd::before{content:"\f6f9"}.bi-device-ssd-fill::before{content:"\f6fa"}.bi-device-ssd::before{content:"\f6fb"}.bi-displayport-fill::before{content:"\f6fc"}.bi-mortarboard-fill::before{content:"\f6fd"}.bi-mortarboard::before{content:"\f6fe"}.bi-terminal-x::before{content:"\f6ff"}.bi-arrow-through-heart-fill::before{content:"\f700"}.bi-arrow-through-heart::before{content:"\f701"}.bi-badge-sd-fill::before{content:"\f702"}.bi-badge-sd::before{content:"\f703"}.bi-bag-heart-fill::before{content:"\f704"}.bi-bag-heart::before{content:"\f705"}.bi-balloon-fill::before{content:"\f706"}.bi-balloon-heart-fill::before{content:"\f707"}.bi-balloon-heart::before{content:"\f708"}.bi-balloon::before{content:"\f709"}.bi-box2-fill::before{content:"\f70a"}.bi-box2-heart-fill::before{content:"\f70b"}.bi-box2-heart::before{content:"\f70c"}.bi-box2::before{content:"\f70d"}.bi-braces-asterisk::before{content:"\f70e"}.bi-calendar-heart-fill::before{content:"\f70f"}.bi-calendar-heart::before{content:"\f710"}.bi-calendar2-heart-fill::before{content:"\f711"}.bi-calendar2-heart::before{content:"\f712"}.bi-chat-heart-fill::before{content:"\f713"}.bi-chat-heart::before{content:"\f714"}.bi-chat-left-heart-fill::before{content:"\f715"}.bi-chat-left-heart::before{content:"\f716"}.bi-chat-right-heart-fill::before{content:"\f717"}.bi-chat-right-heart::before{content:"\f718"}.bi-chat-square-heart-fill::before{content:"\f719"}.bi-chat-square-heart::before{content:"\f71a"}.bi-clipboard-check-fill::before{content:"\f71b"}.bi-clipboard-data-fill::before{content:"\f71c"}.bi-clipboard-fill::before{content:"\f71d"}.bi-clipboard-heart-fill::before{content:"\f71e"}.bi-clipboard-heart::before{content:"\f71f"}.bi-clipboard-minus-fill::before{content:"\f720"}.bi-clipboard-plus-fill::before{content:"\f721"}.bi-clipboard-pulse::before{content:"\f722"}.bi-clipboard-x-fill::before{content:"\f723"}.bi-clipboard2-check-fill::before{content:"\f724"}.bi-clipboard2-check::before{content:"\f725"}.bi-clipboard2-data-fill::before{content:"\f726"}.bi-clipboard2-data::before{content:"\f727"}.bi-clipboard2-fill::before{content:"\f728"}.bi-clipboard2-heart-fill::before{content:"\f729"}.bi-clipboard2-heart::before{content:"\f72a"}.bi-clipboard2-minus-fill::before{content:"\f72b"}.bi-clipboard2-minus::before{content:"\f72c"}.bi-clipboard2-plus-fill::before{content:"\f72d"}.bi-clipboard2-plus::before{content:"\f72e"}.bi-clipboard2-pulse-fill::before{content:"\f72f"}.bi-clipboard2-pulse::before{content:"\f730"}.bi-clipboard2-x-fill::before{content:"\f731"}.bi-clipboard2-x::before{content:"\f732"}.bi-clipboard2::before{content:"\f733"}.bi-emoji-kiss-fill::before{content:"\f734"}.bi-emoji-kiss::before{content:"\f735"}.bi-envelope-heart-fill::before{content:"\f736"}.bi-envelope-heart::before{content:"\f737"}.bi-envelope-open-heart-fill::before{content:"\f738"}.bi-envelope-open-heart::before{content:"\f739"}.bi-envelope-paper-fill::before{content:"\f73a"}.bi-envelope-paper-heart-fill::before{content:"\f73b"}.bi-envelope-paper-heart::before{content:"\f73c"}.bi-envelope-paper::before{content:"\f73d"}.bi-filetype-aac::before{content:"\f73e"}.bi-filetype-ai::before{content:"\f73f"}.bi-filetype-bmp::before{content:"\f740"}.bi-filetype-cs::before{content:"\f741"}.bi-filetype-css::before{content:"\f742"}.bi-filetype-csv::before{content:"\f743"}.bi-filetype-doc::before{content:"\f744"}.bi-filetype-docx::before{content:"\f745"}.bi-filetype-exe::before{content:"\f746"}.bi-filetype-gif::before{content:"\f747"}.bi-filetype-heic::before{content:"\f748"}.bi-filetype-html::before{content:"\f749"}.bi-filetype-java::before{content:"\f74a"}.bi-filetype-jpg::before{content:"\f74b"}.bi-filetype-js::before{content:"\f74c"}.bi-filetype-jsx::before{content:"\f74d"}.bi-filetype-key::before{content:"\f74e"}.bi-filetype-m4p::before{content:"\f74f"}.bi-filetype-md::before{content:"\f750"}.bi-filetype-mdx::before{content:"\f751"}.bi-filetype-mov::before{content:"\f752"}.bi-filetype-mp3::before{content:"\f753"}.bi-filetype-mp4::before{content:"\f754"}.bi-filetype-otf::before{content:"\f755"}.bi-filetype-pdf::before{content:"\f756"}.bi-filetype-php::before{content:"\f757"}.bi-filetype-png::before{content:"\f758"}.bi-filetype-ppt::before{content:"\f75a"}.bi-filetype-psd::before{content:"\f75b"}.bi-filetype-py::before{content:"\f75c"}.bi-filetype-raw::before{content:"\f75d"}.bi-filetype-rb::before{content:"\f75e"}.bi-filetype-sass::before{content:"\f75f"}.bi-filetype-scss::before{content:"\f760"}.bi-filetype-sh::before{content:"\f761"}.bi-filetype-svg::before{content:"\f762"}.bi-filetype-tiff::before{content:"\f763"}.bi-filetype-tsx::before{content:"\f764"}.bi-filetype-ttf::before{content:"\f765"}.bi-filetype-txt::before{content:"\f766"}.bi-filetype-wav::before{content:"\f767"}.bi-filetype-woff::before{content:"\f768"}.bi-filetype-xls::before{content:"\f76a"}.bi-filetype-xml::before{content:"\f76b"}.bi-filetype-yml::before{content:"\f76c"}.bi-heart-arrow::before{content:"\f76d"}.bi-heart-pulse-fill::before{content:"\f76e"}.bi-heart-pulse::before{content:"\f76f"}.bi-heartbreak-fill::before{content:"\f770"}.bi-heartbreak::before{content:"\f771"}.bi-hearts::before{content:"\f772"}.bi-hospital-fill::before{content:"\f773"}.bi-hospital::before{content:"\f774"}.bi-house-heart-fill::before{content:"\f775"}.bi-house-heart::before{content:"\f776"}.bi-incognito::before{content:"\f777"}.bi-magnet-fill::before{content:"\f778"}.bi-magnet::before{content:"\f779"}.bi-person-heart::before{content:"\f77a"}.bi-person-hearts::before{content:"\f77b"}.bi-phone-flip::before{content:"\f77c"}.bi-plugin::before{content:"\f77d"}.bi-postage-fill::before{content:"\f77e"}.bi-postage-heart-fill::before{content:"\f77f"}.bi-postage-heart::before{content:"\f780"}.bi-postage::before{content:"\f781"}.bi-postcard-fill::before{content:"\f782"}.bi-postcard-heart-fill::before{content:"\f783"}.bi-postcard-heart::before{content:"\f784"}.bi-postcard::before{content:"\f785"}.bi-search-heart-fill::before{content:"\f786"}.bi-search-heart::before{content:"\f787"}.bi-sliders2-vertical::before{content:"\f788"}.bi-sliders2::before{content:"\f789"}.bi-trash3-fill::before{content:"\f78a"}.bi-trash3::before{content:"\f78b"}.bi-valentine::before{content:"\f78c"}.bi-valentine2::before{content:"\f78d"}.bi-wrench-adjustable-circle-fill::before{content:"\f78e"}.bi-wrench-adjustable-circle::before{content:"\f78f"}.bi-wrench-adjustable::before{content:"\f790"}.bi-filetype-json::before{content:"\f791"}.bi-filetype-pptx::before{content:"\f792"}.bi-filetype-xlsx::before{content:"\f793"}.bi-1-circle-fill::before{content:"\f796"}.bi-1-circle::before{content:"\f797"}.bi-1-square-fill::before{content:"\f798"}.bi-1-square::before{content:"\f799"}.bi-2-circle-fill::before{content:"\f79c"}.bi-2-circle::before{content:"\f79d"}.bi-2-square-fill::before{content:"\f79e"}.bi-2-square::before{content:"\f79f"}.bi-3-circle-fill::before{content:"\f7a2"}.bi-3-circle::before{content:"\f7a3"}.bi-3-square-fill::before{content:"\f7a4"}.bi-3-square::before{content:"\f7a5"}.bi-4-circle-fill::before{content:"\f7a8"}.bi-4-circle::before{content:"\f7a9"}.bi-4-square-fill::before{content:"\f7aa"}.bi-4-square::before{content:"\f7ab"}.bi-5-circle-fill::before{content:"\f7ae"}.bi-5-circle::before{content:"\f7af"}.bi-5-square-fill::before{content:"\f7b0"}.bi-5-square::before{content:"\f7b1"}.bi-6-circle-fill::before{content:"\f7b4"}.bi-6-circle::before{content:"\f7b5"}.bi-6-square-fill::before{content:"\f7b6"}.bi-6-square::before{content:"\f7b7"}.bi-7-circle-fill::before{content:"\f7ba"}.bi-7-circle::before{content:"\f7bb"}.bi-7-square-fill::before{content:"\f7bc"}.bi-7-square::before{content:"\f7bd"}.bi-8-circle-fill::before{content:"\f7c0"}.bi-8-circle::before{content:"\f7c1"}.bi-8-square-fill::before{content:"\f7c2"}.bi-8-square::before{content:"\f7c3"}.bi-9-circle-fill::before{content:"\f7c6"}.bi-9-circle::before{content:"\f7c7"}.bi-9-square-fill::before{content:"\f7c8"}.bi-9-square::before{content:"\f7c9"}.bi-airplane-engines-fill::before{content:"\f7ca"}.bi-airplane-engines::before{content:"\f7cb"}.bi-airplane-fill::before{content:"\f7cc"}.bi-airplane::before{content:"\f7cd"}.bi-alexa::before{content:"\f7ce"}.bi-alipay::before{content:"\f7cf"}.bi-android::before{content:"\f7d0"}.bi-android2::before{content:"\f7d1"}.bi-box-fill::before{content:"\f7d2"}.bi-box-seam-fill::before{content:"\f7d3"}.bi-browser-chrome::before{content:"\f7d4"}.bi-browser-edge::before{content:"\f7d5"}.bi-browser-firefox::before{content:"\f7d6"}.bi-browser-safari::before{content:"\f7d7"}.bi-c-circle-fill::before{content:"\f7da"}.bi-c-circle::before{content:"\f7db"}.bi-c-square-fill::before{content:"\f7dc"}.bi-c-square::before{content:"\f7dd"}.bi-capsule-pill::before{content:"\f7de"}.bi-capsule::before{content:"\f7df"}.bi-car-front-fill::before{content:"\f7e0"}.bi-car-front::before{content:"\f7e1"}.bi-cassette-fill::before{content:"\f7e2"}.bi-cassette::before{content:"\f7e3"}.bi-cc-circle-fill::before{content:"\f7e6"}.bi-cc-circle::before{content:"\f7e7"}.bi-cc-square-fill::before{content:"\f7e8"}.bi-cc-square::before{content:"\f7e9"}.bi-cup-hot-fill::before{content:"\f7ea"}.bi-cup-hot::before{content:"\f7eb"}.bi-currency-rupee::before{content:"\f7ec"}.bi-dropbox::before{content:"\f7ed"}.bi-escape::before{content:"\f7ee"}.bi-fast-forward-btn-fill::before{content:"\f7ef"}.bi-fast-forward-btn::before{content:"\f7f0"}.bi-fast-forward-circle-fill::before{content:"\f7f1"}.bi-fast-forward-circle::before{content:"\f7f2"}.bi-fast-forward-fill::before{content:"\f7f3"}.bi-fast-forward::before{content:"\f7f4"}.bi-filetype-sql::before{content:"\f7f5"}.bi-fire::before{content:"\f7f6"}.bi-google-play::before{content:"\f7f7"}.bi-h-circle-fill::before{content:"\f7fa"}.bi-h-circle::before{content:"\f7fb"}.bi-h-square-fill::before{content:"\f7fc"}.bi-h-square::before{content:"\f7fd"}.bi-indent::before{content:"\f7fe"}.bi-lungs-fill::before{content:"\f7ff"}.bi-lungs::before{content:"\f800"}.bi-microsoft-teams::before{content:"\f801"}.bi-p-circle-fill::before{content:"\f804"}.bi-p-circle::before{content:"\f805"}.bi-p-square-fill::before{content:"\f806"}.bi-p-square::before{content:"\f807"}.bi-pass-fill::before{content:"\f808"}.bi-pass::before{content:"\f809"}.bi-prescription::before{content:"\f80a"}.bi-prescription2::before{content:"\f80b"}.bi-r-circle-fill::before{content:"\f80e"}.bi-r-circle::before{content:"\f80f"}.bi-r-square-fill::before{content:"\f810"}.bi-r-square::before{content:"\f811"}.bi-repeat-1::before{content:"\f812"}.bi-repeat::before{content:"\f813"}.bi-rewind-btn-fill::before{content:"\f814"}.bi-rewind-btn::before{content:"\f815"}.bi-rewind-circle-fill::before{content:"\f816"}.bi-rewind-circle::before{content:"\f817"}.bi-rewind-fill::before{content:"\f818"}.bi-rewind::before{content:"\f819"}.bi-train-freight-front-fill::before{content:"\f81a"}.bi-train-freight-front::before{content:"\f81b"}.bi-train-front-fill::before{content:"\f81c"}.bi-train-front::before{content:"\f81d"}.bi-train-lightrail-front-fill::before{content:"\f81e"}.bi-train-lightrail-front::before{content:"\f81f"}.bi-truck-front-fill::before{content:"\f820"}.bi-truck-front::before{content:"\f821"}.bi-ubuntu::before{content:"\f822"}.bi-unindent::before{content:"\f823"}.bi-unity::before{content:"\f824"}.bi-universal-access-circle::before{content:"\f825"}.bi-universal-access::before{content:"\f826"}.bi-virus::before{content:"\f827"}.bi-virus2::before{content:"\f828"}.bi-wechat::before{content:"\f829"}.bi-yelp::before{content:"\f82a"}.bi-sign-stop-fill::before{content:"\f82b"}.bi-sign-stop-lights-fill::before{content:"\f82c"}.bi-sign-stop-lights::before{content:"\f82d"}.bi-sign-stop::before{content:"\f82e"}.bi-sign-turn-left-fill::before{content:"\f82f"}.bi-sign-turn-left::before{content:"\f830"}.bi-sign-turn-right-fill::before{content:"\f831"}.bi-sign-turn-right::before{content:"\f832"}.bi-sign-turn-slight-left-fill::before{content:"\f833"}.bi-sign-turn-slight-left::before{content:"\f834"}.bi-sign-turn-slight-right-fill::before{content:"\f835"}.bi-sign-turn-slight-right::before{content:"\f836"}.bi-sign-yield-fill::before{content:"\f837"}.bi-sign-yield::before{content:"\f838"}.bi-ev-station-fill::before{content:"\f839"}.bi-ev-station::before{content:"\f83a"}.bi-fuel-pump-diesel-fill::before{content:"\f83b"}.bi-fuel-pump-diesel::before{content:"\f83c"}.bi-fuel-pump-fill::before{content:"\f83d"}.bi-fuel-pump::before{content:"\f83e"}.bi-0-circle-fill::before{content:"\f83f"}.bi-0-circle::before{content:"\f840"}.bi-0-square-fill::before{content:"\f841"}.bi-0-square::before{content:"\f842"}.bi-rocket-fill::before{content:"\f843"}.bi-rocket-takeoff-fill::before{content:"\f844"}.bi-rocket-takeoff::before{content:"\f845"}.bi-rocket::before{content:"\f846"}.bi-stripe::before{content:"\f847"}.bi-subscript::before{content:"\f848"}.bi-superscript::before{content:"\f849"}.bi-trello::before{content:"\f84a"}.bi-envelope-at-fill::before{content:"\f84b"}.bi-envelope-at::before{content:"\f84c"}.bi-regex::before{content:"\f84d"}.bi-text-wrap::before{content:"\f84e"}.bi-sign-dead-end-fill::before{content:"\f84f"}.bi-sign-dead-end::before{content:"\f850"}.bi-sign-do-not-enter-fill::before{content:"\f851"}.bi-sign-do-not-enter::before{content:"\f852"}.bi-sign-intersection-fill::before{content:"\f853"}.bi-sign-intersection-side-fill::before{content:"\f854"}.bi-sign-intersection-side::before{content:"\f855"}.bi-sign-intersection-t-fill::before{content:"\f856"}.bi-sign-intersection-t::before{content:"\f857"}.bi-sign-intersection-y-fill::before{content:"\f858"}.bi-sign-intersection-y::before{content:"\f859"}.bi-sign-intersection::before{content:"\f85a"}.bi-sign-merge-left-fill::before{content:"\f85b"}.bi-sign-merge-left::before{content:"\f85c"}.bi-sign-merge-right-fill::before{content:"\f85d"}.bi-sign-merge-right::before{content:"\f85e"}.bi-sign-no-left-turn-fill::before{content:"\f85f"}.bi-sign-no-left-turn::before{content:"\f860"}.bi-sign-no-parking-fill::before{content:"\f861"}.bi-sign-no-parking::before{content:"\f862"}.bi-sign-no-right-turn-fill::before{content:"\f863"}.bi-sign-no-right-turn::before{content:"\f864"}.bi-sign-railroad-fill::before{content:"\f865"}.bi-sign-railroad::before{content:"\f866"}.bi-building-add::before{content:"\f867"}.bi-building-check::before{content:"\f868"}.bi-building-dash::before{content:"\f869"}.bi-building-down::before{content:"\f86a"}.bi-building-exclamation::before{content:"\f86b"}.bi-building-fill-add::before{content:"\f86c"}.bi-building-fill-check::before{content:"\f86d"}.bi-building-fill-dash::before{content:"\f86e"}.bi-building-fill-down::before{content:"\f86f"}.bi-building-fill-exclamation::before{content:"\f870"}.bi-building-fill-gear::before{content:"\f871"}.bi-building-fill-lock::before{content:"\f872"}.bi-building-fill-slash::before{content:"\f873"}.bi-building-fill-up::before{content:"\f874"}.bi-building-fill-x::before{content:"\f875"}.bi-building-fill::before{content:"\f876"}.bi-building-gear::before{content:"\f877"}.bi-building-lock::before{content:"\f878"}.bi-building-slash::before{content:"\f879"}.bi-building-up::before{content:"\f87a"}.bi-building-x::before{content:"\f87b"}.bi-buildings-fill::before{content:"\f87c"}.bi-buildings::before{content:"\f87d"}.bi-bus-front-fill::before{content:"\f87e"}.bi-bus-front::before{content:"\f87f"}.bi-ev-front-fill::before{content:"\f880"}.bi-ev-front::before{content:"\f881"}.bi-globe-americas::before{content:"\f882"}.bi-globe-asia-australia::before{content:"\f883"}.bi-globe-central-south-asia::before{content:"\f884"}.bi-globe-europe-africa::before{content:"\f885"}.bi-house-add-fill::before{content:"\f886"}.bi-house-add::before{content:"\f887"}.bi-house-check-fill::before{content:"\f888"}.bi-house-check::before{content:"\f889"}.bi-house-dash-fill::before{content:"\f88a"}.bi-house-dash::before{content:"\f88b"}.bi-house-down-fill::before{content:"\f88c"}.bi-house-down::before{content:"\f88d"}.bi-house-exclamation-fill::before{content:"\f88e"}.bi-house-exclamation::before{content:"\f88f"}.bi-house-gear-fill::before{content:"\f890"}.bi-house-gear::before{content:"\f891"}.bi-house-lock-fill::before{content:"\f892"}.bi-house-lock::before{content:"\f893"}.bi-house-slash-fill::before{content:"\f894"}.bi-house-slash::before{content:"\f895"}.bi-house-up-fill::before{content:"\f896"}.bi-house-up::before{content:"\f897"}.bi-house-x-fill::before{content:"\f898"}.bi-house-x::before{content:"\f899"}.bi-person-add::before{content:"\f89a"}.bi-person-down::before{content:"\f89b"}.bi-person-exclamation::before{content:"\f89c"}.bi-person-fill-add::before{content:"\f89d"}.bi-person-fill-check::before{content:"\f89e"}.bi-person-fill-dash::before{content:"\f89f"}.bi-person-fill-down::before{content:"\f8a0"}.bi-person-fill-exclamation::before{content:"\f8a1"}.bi-person-fill-gear::before{content:"\f8a2"}.bi-person-fill-lock::before{content:"\f8a3"}.bi-person-fill-slash::before{content:"\f8a4"}.bi-person-fill-up::before{content:"\f8a5"}.bi-person-fill-x::before{content:"\f8a6"}.bi-person-gear::before{content:"\f8a7"}.bi-person-lock::before{content:"\f8a8"}.bi-person-slash::before{content:"\f8a9"}.bi-person-up::before{content:"\f8aa"}.bi-scooter::before{content:"\f8ab"}.bi-taxi-front-fill::before{content:"\f8ac"}.bi-taxi-front::before{content:"\f8ad"}.bi-amd::before{content:"\f8ae"}.bi-database-add::before{content:"\f8af"}.bi-database-check::before{content:"\f8b0"}.bi-database-dash::before{content:"\f8b1"}.bi-database-down::before{content:"\f8b2"}.bi-database-exclamation::before{content:"\f8b3"}.bi-database-fill-add::before{content:"\f8b4"}.bi-database-fill-check::before{content:"\f8b5"}.bi-database-fill-dash::before{content:"\f8b6"}.bi-database-fill-down::before{content:"\f8b7"}.bi-database-fill-exclamation::before{content:"\f8b8"}.bi-database-fill-gear::before{content:"\f8b9"}.bi-database-fill-lock::before{content:"\f8ba"}.bi-database-fill-slash::before{content:"\f8bb"}.bi-database-fill-up::before{content:"\f8bc"}.bi-database-fill-x::before{content:"\f8bd"}.bi-database-fill::before{content:"\f8be"}.bi-database-gear::before{content:"\f8bf"}.bi-database-lock::before{content:"\f8c0"}.bi-database-slash::before{content:"\f8c1"}.bi-database-up::before{content:"\f8c2"}.bi-database-x::before{content:"\f8c3"}.bi-database::before{content:"\f8c4"}.bi-houses-fill::before{content:"\f8c5"}.bi-houses::before{content:"\f8c6"}.bi-nvidia::before{content:"\f8c7"}.bi-person-vcard-fill::before{content:"\f8c8"}.bi-person-vcard::before{content:"\f8c9"}.bi-sina-weibo::before{content:"\f8ca"}.bi-tencent-qq::before{content:"\f8cb"}.bi-wikipedia::before{content:"\f8cc"}.bi-alphabet-uppercase::before{content:"\f2a5"}.bi-alphabet::before{content:"\f68a"}.bi-amazon::before{content:"\f68d"}.bi-arrows-collapse-vertical::before{content:"\f690"}.bi-arrows-expand-vertical::before{content:"\f695"}.bi-arrows-vertical::before{content:"\f698"}.bi-arrows::before{content:"\f6a2"}.bi-ban-fill::before{content:"\f6a3"}.bi-ban::before{content:"\f6b6"}.bi-bing::before{content:"\f6c2"}.bi-cake::before{content:"\f6e0"}.bi-cake2::before{content:"\f6ed"}.bi-cookie::before{content:"\f6ee"}.bi-copy::before{content:"\f759"}.bi-crosshair::before{content:"\f769"}.bi-crosshair2::before{content:"\f794"}.bi-emoji-astonished-fill::before{content:"\f795"}.bi-emoji-astonished::before{content:"\f79a"}.bi-emoji-grimace-fill::before{content:"\f79b"}.bi-emoji-grimace::before{content:"\f7a0"}.bi-emoji-grin-fill::before{content:"\f7a1"}.bi-emoji-grin::before{content:"\f7a6"}.bi-emoji-surprise-fill::before{content:"\f7a7"}.bi-emoji-surprise::before{content:"\f7ac"}.bi-emoji-tear-fill::before{content:"\f7ad"}.bi-emoji-tear::before{content:"\f7b2"}.bi-envelope-arrow-down-fill::before{content:"\f7b3"}.bi-envelope-arrow-down::before{content:"\f7b8"}.bi-envelope-arrow-up-fill::before{content:"\f7b9"}.bi-envelope-arrow-up::before{content:"\f7be"}.bi-feather::before{content:"\f7bf"}.bi-feather2::before{content:"\f7c4"}.bi-floppy-fill::before{content:"\f7c5"}.bi-floppy::before{content:"\f7d8"}.bi-floppy2-fill::before{content:"\f7d9"}.bi-floppy2::before{content:"\f7e4"}.bi-gitlab::before{content:"\f7e5"}.bi-highlighter::before{content:"\f7f8"}.bi-marker-tip::before{content:"\f802"}.bi-nvme-fill::before{content:"\f803"}.bi-nvme::before{content:"\f80c"}.bi-opencollective::before{content:"\f80d"}.bi-pci-card-network::before{content:"\f8cd"}.bi-pci-card-sound::before{content:"\f8ce"}.bi-radar::before{content:"\f8cf"}.bi-send-arrow-down-fill::before{content:"\f8d0"}.bi-send-arrow-down::before{content:"\f8d1"}.bi-send-arrow-up-fill::before{content:"\f8d2"}.bi-send-arrow-up::before{content:"\f8d3"}.bi-sim-slash-fill::before{content:"\f8d4"}.bi-sim-slash::before{content:"\f8d5"}.bi-sourceforge::before{content:"\f8d6"}.bi-substack::before{content:"\f8d7"}.bi-threads-fill::before{content:"\f8d8"}.bi-threads::before{content:"\f8d9"}.bi-transparency::before{content:"\f8da"}.bi-twitter-x::before{content:"\f8db"}.bi-type-h4::before{content:"\f8dc"}.bi-type-h5::before{content:"\f8dd"}.bi-type-h6::before{content:"\f8de"}.bi-backpack-fill::before{content:"\f8df"}.bi-backpack::before{content:"\f8e0"}.bi-backpack2-fill::before{content:"\f8e1"}.bi-backpack2::before{content:"\f8e2"}.bi-backpack3-fill::before{content:"\f8e3"}.bi-backpack3::before{content:"\f8e4"}.bi-backpack4-fill::before{content:"\f8e5"}.bi-backpack4::before{content:"\f8e6"}.bi-brilliance::before{content:"\f8e7"}.bi-cake-fill::before{content:"\f8e8"}.bi-cake2-fill::before{content:"\f8e9"}.bi-duffle-fill::before{content:"\f8ea"}.bi-duffle::before{content:"\f8eb"}.bi-exposure::before{content:"\f8ec"}.bi-gender-neuter::before{content:"\f8ed"}.bi-highlights::before{content:"\f8ee"}.bi-luggage-fill::before{content:"\f8ef"}.bi-luggage::before{content:"\f8f0"}.bi-mailbox-flag::before{content:"\f8f1"}.bi-mailbox2-flag::before{content:"\f8f2"}.bi-noise-reduction::before{content:"\f8f3"}.bi-passport-fill::before{content:"\f8f4"}.bi-passport::before{content:"\f8f5"}.bi-person-arms-up::before{content:"\f8f6"}.bi-person-raised-hand::before{content:"\f8f7"}.bi-person-standing-dress::before{content:"\f8f8"}.bi-person-standing::before{content:"\f8f9"}.bi-person-walking::before{content:"\f8fa"}.bi-person-wheelchair::before{content:"\f8fb"}.bi-shadows::before{content:"\f8fc"}.bi-suitcase-fill::before{content:"\f8fd"}.bi-suitcase-lg-fill::before{content:"\f8fe"}.bi-suitcase-lg::before{content:"\f8ff"}.bi-suitcase::before{content:"\f900"}.bi-suitcase2-fill::before{content:"\f901"}.bi-suitcase2::before{content:"\f902"}.bi-vignette::before{content:"\f903"}.bi-bluesky::before{content:"\f7f9"}.bi-tux::before{content:"\f904"}.bi-beaker-fill::before{content:"\f905"}.bi-beaker::before{content:"\f906"}.bi-flask-fill::before{content:"\f907"}.bi-flask-florence-fill::before{content:"\f908"}.bi-flask-florence::before{content:"\f909"}.bi-flask::before{content:"\f90a"}.bi-leaf-fill::before{content:"\f90b"}.bi-leaf::before{content:"\f90c"}.bi-measuring-cup-fill::before{content:"\f90d"}.bi-measuring-cup::before{content:"\f90e"}.bi-unlock2-fill::before{content:"\f90f"}.bi-unlock2::before{content:"\f910"}.bi-battery-low::before{content:"\f911"}.bi-anthropic::before{content:"\f912"}.bi-apple-music::before{content:"\f913"}.bi-claude::before{content:"\f914"}.bi-openai::before{content:"\f915"}.bi-perplexity::before{content:"\f916"}.bi-css::before{content:"\f917"}.bi-javascript::before{content:"\f918"}.bi-typescript::before{content:"\f919"}.bi-fork-knife::before{content:"\f91a"}.bi-globe-americas-fill::before{content:"\f91b"}.bi-globe-asia-australia-fill::before{content:"\f91c"}.bi-globe-central-south-asia-fill::before{content:"\f91d"}.bi-globe-europe-africa-fill::before{content:"\f91e"} \ No newline at end of file diff --git a/static/fonts/bootstrap-icons.woff b/static/fonts/bootstrap-icons.woff index 6e72a590a26bc71c7011e3c50da2ca766a853344..511b90564370629400dfe4e32a5d4844c87dbb40 100755 GIT binary patch literal 180288 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

I`4CPuc_DcDU{1efPI9{E?^ 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�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 DSpcj8 literal 164360 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͍DL09^UPJd{U1rzmAhp)eP! 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 diff --git a/static/fonts/bootstrap-icons.woff2 b/static/fonts/bootstrap-icons.woff2 index 3b957d5a764cc096fcee42de5ab6a48dfee9af4a..654e300e5e4e240347449be1bfe3ddba67932501 100755 GIT binary patch literal 134012 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�=y93oFh?_;e+7DYb*w2Na~W5)r47d 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 DmSElo literal 121340 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 z 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Ã-ERF?&y_pfYxO}cJT5#fJl}fxL8iJjg5hEI`5w1| z4jj3w1x_3U4yc2`ssnEup!_G!d2A0a@I{6#o9N@`^G?bm;jLk)oJ?V43+woLdqX9B z`MAFx53^t4oDLizw;xYzMc0H}G@Qh+XGaYWNV_RgjU6;gr0wR8og5R1b9FoYlATn5 zQmNtwR^OPOaX3Ap^-bB$&#yffJPrKczSPCnno8|;NeQ8FT?)Kh@lPm&wkGvM@7`ci znqvD~YX&8D{C^>o%L);}=?PDzjILP`^MdqQ%UXirxTwY&)zJWf-8poOCB6y5j(P7$ z3OL*>+GB~gE9~>8n5RalUQmJTHka!PB}lLZ?aF*Yu|3S z0JGW>wWo3Vvb2K66FMP12`Byz*C!nWqGCCJ{pb7?Ni)-za5B&N>{#EOy z*KgsVTvu5Z=m4!LPaZLAVXTe@_*X`gLfL3l;%O>$>7X2Clt(^}ro8llVP_Q9oY@5Q ztiXrTW~mh{NR%{RPaN%@T9EZvxFJ&l=aKr9#D}+3#R0O@qbZH}frCcR!kT~7>pu-F zj{SYE{*1Zo+qb@`m_>6{!Y;CF$&j@R4A+m#MoC z{J|nLJs&LQY2+54TN~9imGufz%cDl$u7N!a)1vHNRwzLMUNOx)&`&kYyIL@wNV{3V z+RvCa&&1*@Tu=bZ?5$Xf`azocNrrO3|6#A!x&oGBxjd=?kL0DP;0JNhA-dULooaz#28>HW|f-dj>r?_uPS}g@j%yq-e1Do*G-SX8dcuiBlXkqn#fnj?( z!Cx_2hqAt0pczI!H|wBef3FpJ+?N&}^TK)y3#OWG9=k;c<(dMXc}Dge z%(9nfJ<<5Or<&3X9K+2Bau>6}w+up67dyqsmwI4&Fw?RGsDkwVXz)>g_GIRcMlZ&d z%q~2CW=f&DR+ea7`n2}_qlCB_>j3^_+BB*@faH_-L%J8BF){?1f7EvrE{ru81crU@ zkj@VLC!RS-pbIa&t1n-v0AsE(z;if+kVH$U1cVCi8P>opaoyh$!Hko#g107UovEyi z=G^Qlu{H=?AYW<9=@GxfG_(X76=V`bYnJ36b%;(FPPP-rvVkb>*KwfuWl^=IAR zZ=%aI!Q0vCrnC4546)8jif*;m;3G8lEM32C5jWW_6TEZPDZQf%I#D510>ffg(YI@X z5X?J}v3#VDN0+o(Nl|RX_s5+-p;QwzEEZ}ldoVRM@jf!jLMKC{hb{UeJ1um5F?3;l zziPbL$mc!_lox_D4hlJ9;5=H1%2X2=f`V9R(H{eikdDpal?X>Wy{umAHHF<>(HQ|E z`Uq^{JAXarZ7#u#bT)WtvWf#kNs$wPYiC;_vDxA~90Bry_>8jE?x~-@n&mC5#)olM z*wzM4+9fA`36&~K&IiSP4whhekUlm$$`n5C+njts2%l}3#D2Q%{8=)@iVmtwdA0rE z#!eb}fxR0f3xBz4a_$zpd3|KJpT0cU?r)8L0lL`3XK>!w)98483_H9eDIdW4z?Aj& zzkHDKMy%+$w+}MkRK!CI} W{i+SOEA$_gR$T^}fuiz{0000rhX=L* diff --git a/static/js/ace/ace.js b/static/js/ace/ace.js index 28b95b76..b9b8d3e2 100644 --- a/static/js/ace/ace.js +++ b/static/js/ace/ace.js @@ -1,4 +1,4 @@ -(function(){function o(n){var i=e;n&&(e[n]||(e[n]={}),i=e[n]);if(!i.define||!i.define.packaged)t.original=i.define,i.define=t,i.define.packaged=!0;if(!i.require||!i.require.packaged)r.original=i.require,i.require=r,i.require.packaged=!0}var ACE_NAMESPACE="",e=function(){return this}();!e&&typeof window!="undefined"&&(e=window);if(!ACE_NAMESPACE&&typeof requirejs!="undefined")return;var t=function(e,n,r){if(typeof e!="string"){t.original?t.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(r=n),t.modules[e]||(t.payloads[e]=r,t.modules[e]=null)};t.modules={},t.payloads={};var n=function(e,t,n){if(typeof t=="string"){var i=s(e,t);if(i!=undefined)return n&&n(),i}else if(Object.prototype.toString.call(t)==="[object Array]"){var o=[];for(var u=0,a=t.length;un.length)t=n.length;t-=e.length;var r=n.indexOf(e,t);return r!==-1&&r===t}),String.prototype.repeat||r(String.prototype,"repeat",function(e){var t="",n=this;while(e>0){e&1&&(t+=n);if(e>>=1)n+=n}return t}),String.prototype.includes||r(String.prototype,"includes",function(e,t){return this.indexOf(e,t)!=-1}),Object.assign||(Object.assign=function(e){if(e===undefined||e===null)throw new TypeError("Cannot convert undefined or null to object");var t=Object(e);for(var n=1;n>>0,r=arguments[1],i=r>>0,s=i<0?Math.max(n+i,0):Math.min(i,n),o=arguments[2],u=o===undefined?n:o>>0,a=u<0?Math.max(n+u,0):Math.min(u,n);while(s0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n65535?2:1}}),define("ace/lib/useragent",["require","exports","module"],function(e,t,n){"use strict";t.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},t.getOS=function(){return t.isMac?t.OS.MAC:t.isLinux?t.OS.LINUX:t.OS.WINDOWS};var r=typeof navigator=="object"?navigator:{},i=(/mac|win|linux/i.exec(r.platform)||["other"])[0].toLowerCase(),s=r.userAgent||"",o=r.appName||"";t.isWin=i=="win",t.isMac=i=="mac",t.isLinux=i=="linux",t.isIE=o=="Microsoft Internet Explorer"||o.indexOf("MSAppHost")>=0?parseFloat((s.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((s.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),t.isOldIE=t.isIE&&t.isIE<9,t.isGecko=t.isMozilla=s.match(/ Gecko\/\d+/),t.isOpera=typeof opera=="object"&&Object.prototype.toString.call(window["opera"])=="[object Opera]",t.isWebKit=parseFloat(s.split("WebKit/")[1])||undefined,t.isChrome=parseFloat(s.split(" Chrome/")[1])||undefined,t.isSafari=parseFloat(s.split(" Safari/")[1])&&!t.isChrome||undefined,t.isEdge=parseFloat(s.split(" Edge/")[1])||undefined,t.isAIR=s.indexOf("AdobeAIR")>=0,t.isAndroid=s.indexOf("Android")>=0,t.isChromeOS=s.indexOf(" CrOS ")>=0,t.isIOS=/iPad|iPhone|iPod/.test(s)&&!window.MSStream,t.isIOS&&(t.isMac=!0),t.isMobile=t.isIOS||t.isAndroid}),define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(e,t,n){"use strict";function u(){var e=o;o=null,e&&e.forEach(function(e){a(e[0],e[1])})}function a(e,n,r){if(typeof document=="undefined")return;if(o)if(r)u();else if(r===!1)return o.push([e,n]);if(s)return;var i=r;if(!r||!r.getRootNode)i=document;else{i=r.getRootNode();if(!i||i==r)i=document}var a=i.ownerDocument||i;if(n&&t.hasCssString(n,i))return null;n&&(e+="\n/*# sourceURL=ace/css/"+n+" */");var f=t.createElement("style");f.appendChild(a.createTextNode(e)),n&&(f.id=n),i==a&&(i=t.getDocumentHead(a)),i.insertBefore(f,i.firstChild)}var r=e("./useragent"),i="http://www.w3.org/1999/xhtml";t.buildDom=function l(e,t,n){if(typeof e=="string"&&e){var r=document.createTextNode(e);return t&&t.appendChild(r),r}if(!Array.isArray(e))return e&&e.appendChild&&t&&t.appendChild(e),e;if(typeof e[0]!="string"||!e[0]){var i=[];for(var s=0;s1&&(e.style.left=2*n-r+"px")}if(e.style.right){var n=parseFloat(e.style.right),r=window.innerWidth-t.right;Math.abs(n-r)>1&&(e.style.right=2*n-r+"px")}if(e.style.top){var n=parseFloat(e.style.top),r=+t.top;Math.abs(n-r)>1&&(e.style.top=2*n-r+"px")}if(e.style.bottom){var n=parseFloat(e.style.bottom),r=window.innerHeight-t.bottom;Math.abs(n-r)>1&&(e.style.bottom=2*n-r+"px")}},t.scrollbarWidth=function(e){var n=t.createElement("ace_inner");n.style.width="100%",n.style.minWidth="0px",n.style.height="200px",n.style.display="block";var r=t.createElement("ace_outer"),i=r.style;i.position="absolute",i.left="-10000px",i.overflow="hidden",i.width="200px",i.minWidth="0px",i.height="150px",i.display="block",r.appendChild(n);var s=e&&e.documentElement||document&&document.documentElement;if(!s)return 0;s.appendChild(r);var o=n.offsetWidth;i.overflow="scroll";var u=n.offsetWidth;return o===u&&(u=r.clientWidth),s.removeChild(r),o-u},t.computedStyle=function(e,t){return window.getComputedStyle(e,"")||{}},t.setStyle=function(e,t,n){e[t]!==n&&(e[t]=n)},t.HAS_CSS_ANIMATION=!1,t.HAS_CSS_TRANSFORMS=!1,t.HI_DPI=r.isWin?typeof window!="undefined"&&window.devicePixelRatio>=1.5:!0,r.isChromeOS&&(t.HI_DPI=!1);if(typeof document!="undefined"){var f=document.createElement("div");t.HI_DPI&&f.style.transform!==undefined&&(t.HAS_CSS_TRANSFORMS=!0),!r.isEdge&&typeof f.style.animationName!="undefined"&&(t.HAS_CSS_ANIMATION=!0),f=null}t.HAS_CSS_TRANSFORMS?t.translate=function(e,t,n){e.style.transform="translate("+Math.round(t)+"px, "+Math.round(n)+"px)"}:t.translate=function(e,t,n){e.style.top=Math.round(n)+"px",e.style.left=Math.round(t)+"px"}}),define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("./dom");t.get=function(e,t){var n=new XMLHttpRequest;n.open("GET",e,!0),n.onreadystatechange=function(){n.readyState===4&&t(n.responseText)},n.send(null)},t.loadScript=function(e,t){var n=r.getDocumentHead(),i=document.createElement("script");i.src=e,n.appendChild(i),i.onload=i.onreadystatechange=function(e,n){if(n||!i.readyState||i.readyState=="loaded"||i.readyState=="complete")i=i.onload=i.onreadystatechange=null,n||t()}},t.qualifyURL=function(e){var t=document.createElement("a");return t.href=e,t.href}}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){"use strict";var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o1&&(i=n[n.length-2]);var o=u[t+"Path"];return o==null?o=u.basePath:r=="/"&&(t=r=""),o&&o.slice(-1)!="/"&&(o+="/"),o+t+r+i+this.get("suffix")},t.setModuleUrl=function(e,t){return u.$moduleUrls[e]=t};var a=function(t,n){if(t==="ace/theme/textmate"||t==="./theme/textmate")return n(null,e("./theme/textmate"));if(f)return f(t,n);console.error("loader is not configured")},f;t.setLoader=function(e){f=e},t.dynamicModules=Object.create(null),t.$loading={},t.$loaded={},t.loadModule=function(e,n){var r;if(Array.isArray(e))var s=e[0],o=e[1];else if(typeof e=="string")var o=e;var u=function(e){if(e&&!t.$loading[o])return n&&n(e);t.$loading[o]||(t.$loading[o]=[]),t.$loading[o].push(n);if(t.$loading[o].length>1)return;var r=function(){a(o,function(e,n){n&&(t.$loaded[o]=n),t._emit("load.module",{name:o,module:n});var r=t.$loading[o];t.$loading[o]=null,r.forEach(function(e){e&&e(n)})})};if(!t.get("packaged"))return r();i.loadScript(t.moduleUrl(o,s),r),l()};if(t.dynamicModules[o])t.dynamicModules[o]().then(function(e){e.default?u(e.default):u(e)});else{try{r=this.$require(o)}catch(f){}u(r||t.$loaded[o])}},t.$require=function(e){if(typeof n["require"]=="function"){var t="require";return n[t](e)}},t.setModuleLoader=function(e,n){t.dynamicModules[e]=n};var l=function(){!u.basePath&&!u.workerPath&&!u.modePath&&!u.themePath&&!Object.keys(u.$moduleUrls).length&&(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),l=function(){})};t.version="1.45.0"}),define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(e,t,n){"use strict";function s(t){if(!i||!i.document)return;r.set("packaged",t||e.packaged||n.packaged||i.define&&define.packaged);var s={},u="",a=document.currentScript||document._currentScript,f=a&&a.ownerDocument||document;a&&a.src&&(u=a.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");var l=f.getElementsByTagName("script");for(var c=0;c ["+this.end.row+"/"+this.end.column+"]"},e.prototype.contains=function(e,t){return this.compare(e,t)==0},e.prototype.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},e.prototype.comparePoint=function(e){return this.compare(e.row,e.column)},e.prototype.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},e.prototype.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},e.prototype.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},e.prototype.isStart=function(e,t){return this.start.row==e&&this.start.column==t},e.prototype.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},e.prototype.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},e.prototype.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},e.prototype.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},e.prototype.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},e.prototype.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?tthis.end.column?1:0:ethis.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},e.prototype.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},e.prototype.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.clipRows=function(t,n){if(this.end.row>n)var r={row:n+1,column:0};else if(this.end.rown)var i={row:n+1,column:0};else if(this.start.row1?(u++,u>4&&(u=1)):u=1;if(i.isIE){var o=Math.abs(e.clientX-a)>5||Math.abs(e.clientY-f)>5;if(!l||o)u=1;l&&clearTimeout(l),l=setTimeout(function(){l=null},n[u-1]||600),u==1&&(a=e.clientX,f=e.clientY)}e._clicks=u,r[s]("mousedown",e);if(u>4)u=0;else if(u>1)return r[s](h[u],e)}var u=0,a,f,l,h={2:"dblclick",3:"tripleclick",4:"quadclick"};Array.isArray(e)||(e=[e]),e.forEach(function(e){c(e,"mousedown",p,o)})},t.getModifierString=function(e){return r.KEY_MODS[p(e)]},t.addCommandKeyListener=function(e,n,r){var i=null;c(e,"keydown",function(e){s[e.keyCode]=(s[e.keyCode]||0)+1;var t=d(n,e,e.keyCode);return i=e.defaultPrevented,t},r),c(e,"keypress",function(e){i&&(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey)&&(t.stopEvent(e),i=null)},r),c(e,"keyup",function(e){s[e.keyCode]=null},r),s||(v(),c(window,"focus",v))};if(typeof window=="object"&&window.postMessage&&!i.isOldIE){var m=1;t.nextTick=function(e,n){n=n||window;var r="zero-timeout-message-"+m++,i=function(s){s.data==r&&(t.stopPropagation(s),h(n,"message",i),e())};c(n,"message",i),n.postMessage(r,"*")}}t.$idleBlocked=!1,t.onIdle=function(e,n){return setTimeout(function r(){t.$idleBlocked?setTimeout(r,100):e()},n)},t.$idleBlockId=null,t.blockIdle=function(e){t.$idleBlockId&&clearTimeout(t.$idleBlockId),t.$idleBlocked=!0,t.$idleBlockId=setTimeout(function(){t.$idleBlocked=!1},e||100)},t.nextFrame=typeof window=="object"&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),t.nextFrame?t.nextFrame=t.nextFrame.bind(window):t.nextFrame=function(e){setTimeout(e,17)}}),define("ace/clipboard",["require","exports","module"],function(e,t,n){"use strict";var r;n.exports={lineMode:!1,pasteCancelled:function(){return r&&r>Date.now()-50?!0:r=!1},cancel:function(){r=Date.now()}}}),define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/config","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(e,t,n){"use strict";var r=e("../lib/event"),i=e("../config").nls,s=e("../lib/useragent"),o=e("../lib/dom"),u=e("../lib/lang"),a=e("../clipboard"),f=s.isChrome<18,l=s.isIE,c=s.isChrome>63,h=400,p=e("../lib/keys"),d=p.KEY_MODS,v=s.isIOS,m=v?/\s/:/\n/,g=s.isMobile,y=function(){function e(e,t){var n=this;this.host=t,this.text=o.createElement("textarea"),this.text.className="ace_text-input",this.text.setAttribute("wrap","off"),this.text.setAttribute("autocomplete","off"),this.text.setAttribute("autocorrect","off"),this.text.setAttribute("autocapitalize","off"),this.text.setAttribute("spellcheck","false"),this.text.style.opacity="0",e.insertBefore(this.text,e.firstChild),this.copied=!1,this.pasted=!1,this.inComposition=!1,this.sendingText=!1,this.tempStyle="",g||(this.text.style.fontSize="1px"),this.commandMode=!1,this.ignoreFocusEvents=!1,this.lastValue="",this.lastSelectionStart=0,this.lastSelectionEnd=0,this.lastRestoreEnd=0,this.rowStart=Number.MAX_SAFE_INTEGER,this.rowEnd=Number.MIN_SAFE_INTEGER,this.numberOfExtraLines=0;try{this.$isFocused=document.activeElement===this.text}catch(i){}this.cancelComposition=this.cancelComposition.bind(this),this.setAriaOptions({role:"textbox"}),r.addListener(this.text,"blur",function(e){if(n.ignoreFocusEvents)return;t.onBlur(e),n.$isFocused=!1},t),r.addListener(this.text,"focus",function(e){if(n.ignoreFocusEvents)return;n.$isFocused=!0;if(s.isEdge)try{if(!document.hasFocus())return}catch(e){}t.onFocus(e),s.isEdge?setTimeout(n.resetSelection.bind(n)):n.resetSelection()},t),this.$focusScroll=!1,t.on("beforeEndOperation",function(){var e=t.curOp,r=e&&e.command&&e.command.name;if(r=="insertstring")return;var i=r&&(e.docChanged||e.selectionChanged);n.inComposition&&i&&(n.lastValue=n.text.value="",n.onCompositionEnd()),n.resetSelection()}),t.on("changeSelection",this.setAriaLabel.bind(this)),this.resetSelection=v?this.$resetSelectionIOS:this.$resetSelection,this.$isFocused&&t.onFocus(),this.inputHandler=null,this.afterContextMenu=!1,r.addCommandKeyListener(this.text,function(e,r,i){if(n.inComposition)return;return t.onCommandKey(e,r,i)},t),r.addListener(this.text,"select",this.onSelect.bind(this),t),r.addListener(this.text,"input",this.onInput.bind(this),t),r.addListener(this.text,"cut",this.onCut.bind(this),t),r.addListener(this.text,"copy",this.onCopy.bind(this),t),r.addListener(this.text,"paste",this.onPaste.bind(this),t),(!("oncut"in this.text)||!("oncopy"in this.text)||!("onpaste"in this.text))&&r.addListener(e,"keydown",function(e){if(s.isMac&&!e.metaKey||!e.ctrlKey)return;switch(e.keyCode){case 67:n.onCopy(e);break;case 86:n.onPaste(e);break;case 88:n.onCut(e)}},t),this.syncComposition=u.delayedCall(this.onCompositionUpdate.bind(this),50).schedule.bind(null,null),r.addListener(this.text,"compositionstart",this.onCompositionStart.bind(this),t),r.addListener(this.text,"compositionupdate",this.onCompositionUpdate.bind(this),t),r.addListener(this.text,"keyup",this.onKeyup.bind(this),t),r.addListener(this.text,"keydown",this.syncComposition.bind(this),t),r.addListener(this.text,"compositionend",this.onCompositionEnd.bind(this),t),this.closeTimeout,r.addListener(this.text,"mouseup",this.$onContextMenu.bind(this),t),r.addListener(this.text,"mousedown",function(e){e.preventDefault(),n.onContextMenuClose()},t),r.addListener(t.renderer.scroller,"contextmenu",this.$onContextMenu.bind(this),t),r.addListener(this.text,"contextmenu",this.$onContextMenu.bind(this),t),v&&this.addIosSelectionHandler(e,t,this.text)}return e.prototype.addIosSelectionHandler=function(e,t,n){var r=this,i=null,s=!1;n.addEventListener("keydown",function(e){i&&clearTimeout(i),s=!0},!0),n.addEventListener("keyup",function(e){i=setTimeout(function(){s=!1},100)},!0);var o=function(e){if(document.activeElement!==n)return;if(s||r.inComposition||t.$mouseHandler.isMousePressed)return;if(r.copied)return;var i=n.selectionStart,o=n.selectionEnd,u=null,a=0;if(i==0)u=p.up;else if(i==1)u=p.home;else if(o>r.lastSelectionEnd&&r.lastValue[o]=="\n")u=p.end;else if(ir.lastSelectionEnd&&r.lastValue.slice(0,o).split("\n").length>2)u=p.down;else if(o>r.lastSelectionEnd&&r.lastValue[o-1]==" ")u=p.right,a=d.option;else if(o>r.lastSelectionEnd||o==r.lastSelectionEnd&&r.lastSelectionEnd!=r.lastSelectionStart&&i==o)u=p.right;i!==o&&(a|=d.shift);if(u){var f=t.onCommandKey({},a,u);if(!f&&t.commands){u=p.keyCodeToString(u);var l=t.commands.findKeyCommand(a,u);l&&t.execCommand(l)}r.lastSelectionStart=i,r.lastSelectionEnd=o,r.resetSelection("")}};document.addEventListener("selectionchange",o),t.on("destroy",function(){document.removeEventListener("selectionchange",o)})},e.prototype.onContextMenuClose=function(){var e=this;clearTimeout(this.closeTimeout),this.closeTimeout=setTimeout(function(){e.tempStyle&&(e.text.style.cssText=e.tempStyle,e.tempStyle=""),e.host.renderer.$isMousePressed=!1,e.host.renderer.$keepTextAreaAtCursor&&e.host.renderer.$moveTextAreaToCursor()},0)},e.prototype.$onContextMenu=function(e){this.host.textInput.onContextMenu(e),this.onContextMenuClose()},e.prototype.onKeyup=function(e){e.keyCode==27&&this.text.value.lengthh+100||m.test(n)||g&&this.lastSelectionStart<1&&this.lastSelectionStart==this.lastSelectionEnd)&&this.resetSelection()},e.prototype.sendText=function(e,t){this.afterContextMenu&&(this.afterContextMenu=!1);if(this.pasted)return this.resetSelection(),e&&this.host.onPaste(e),this.pasted=!1,"";var n=this.text.selectionStart,r=this.text.selectionEnd,i=this.lastSelectionStart,o=this.lastValue.length-this.lastSelectionEnd,u=e,a=e.length-n,f=e.length-r,l=0;while(i>0&&this.lastValue[l]==e[l])l++,i--;u=u.slice(l),l=1;while(o>0&&this.lastValue.length-l>this.lastSelectionStart-1&&this.lastValue[this.lastValue.length-l]==e[e.length-l])l++,o--;a-=l-1,f-=l-1;var c=u.length-l+1;c<0&&(i=-c,c=0),u=u.slice(0,c);if(!t&&!u&&!a&&!i&&!o&&!f)return"";this.sendingText=!0;var h=!1;return s.isAndroid&&u==". "&&(u=" ",h=!0),u&&!i&&!o&&!a&&!f||this.commandMode?this.host.onTextInput(u):this.host.onTextInput(u,{extendLeft:i,extendRight:o,restoreStart:a,restoreEnd:f}),this.sendingText=!1,this.lastValue=e,this.lastSelectionStart=n,this.lastSelectionEnd=r,this.lastRestoreEnd=f,h?"\n":u},e.prototype.onSelect=function(e){var t=this;if(this.inComposition)return;var n=function(e){return e.selectionStart===0&&e.selectionEnd>=t.lastValue.length&&e.value===t.lastValue&&t.lastValue&&e.selectionEnd!==t.lastSelectionEnd};this.copied?this.copied=!1:n(this.text)?(this.host.selectAll(),this.resetSelection()):g&&this.text.selectionStart!=this.lastSelectionStart&&this.resetSelection()},e.prototype.$resetSelectionIOS=function(e){if(!this.$isFocused||this.copied&&!e||this.sendingText)return;e||(e="");var t="\n ab"+e+"cde fg\n";t!=this.text.value&&(this.text.value=this.lastValue=t);var n=4,r=4+(e.length||(this.host.selection.isEmpty()?0:1));(this.lastSelectionStart!=n||this.lastSelectionEnd!=r)&&this.text.setSelectionRange(n,r),this.lastSelectionStart=n,this.lastSelectionEnd=r},e.prototype.$resetSelection=function(){var e=this;if(this.inComposition||this.sendingText)return;if(!this.$isFocused&&!this.afterContextMenu)return;this.inComposition=!0;var t=0,n=0,r="",i=function(t,n){var r=n;for(var i=1;i<=t-e.rowStart&&i<2*e.numberOfExtraLines+1;i++)r+=e.host.session.getLine(t-i).length+1;return r};if(this.host.session){var s=this.host.selection,o=s.getRange(),u=s.cursor.row;if(u===this.rowEnd+1)this.rowStart=this.rowEnd+1,this.rowEnd=this.rowStart+2*this.numberOfExtraLines;else if(u===this.rowStart-1)this.rowEnd=this.rowStart-1,this.rowStart=this.rowEnd-2*this.numberOfExtraLines;else if(uthis.rowEnd+1)this.rowStart=u>this.numberOfExtraLines?u-this.numberOfExtraLines:0,this.rowEnd=u>this.numberOfExtraLines?u+this.numberOfExtraLines:2*this.numberOfExtraLines;var a=[];for(var f=this.rowStart;f<=this.rowEnd;f++)a.push(this.host.session.getLine(f));r=a.join("\n"),t=i(o.start.row,o.start.column),n=i(o.end.row,o.end.column);if(o.start.rowthis.rowEnd){var c=this.host.session.getLine(this.rowEnd+1);n=o.end.row>this.rowEnd+1?c.length:o.end.column,n+=r.length+1,r=r+"\n"+c}else g&&u>0&&(r="\n"+r,n+=1,t+=1);r.length>h&&(t1),e.preventDefault()},e.prototype.startSelect=function(e,t){e=e||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var n=this.editor;if(!this.mousedownEvent)return;this.mousedownEvent.getShiftKey()?n.selection.selectToPosition(e):t||n.selection.moveToPosition(e),t||this.select(),n.setStyle("ace_selecting"),this.setState("select")},e.prototype.select=function(){var e,t=this.editor,n=t.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var r=this.$clickSelection.comparePoint(n);if(r==-1)e=this.$clickSelection.end;else if(r==1)e=this.$clickSelection.start;else{var i=a(this.$clickSelection,n,t.session);n=i.cursor,e=i.anchor}t.selection.setSelectionAnchor(e.row,e.column)}t.selection.selectToPosition(n),t.renderer.scrollCursorIntoView()},e.prototype.extendSelectionBy=function(e){var t,n=this.editor,r=n.renderer.screenToTextCoordinates(this.x,this.y),i=n.selection[e](r.row,r.column);if(this.$clickSelection){var s=this.$clickSelection.comparePoint(i.start),o=this.$clickSelection.comparePoint(i.end);if(s==-1&&o<=0){t=this.$clickSelection.end;if(i.end.row!=r.row||i.end.column!=r.column)r=i.start}else if(o==1&&s>=0){t=this.$clickSelection.start;if(i.start.row!=r.row||i.start.column!=r.column)r=i.end}else if(s==-1&&o==1)r=i.end,t=i.start;else{var u=a(this.$clickSelection,r,n.session);r=u.cursor,t=u.anchor}n.selection.setSelectionAnchor(t.row,t.column)}n.selection.selectToPosition(r),n.renderer.scrollCursorIntoView()},e.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},e.prototype.focusWait=function(){var e=u(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(e>i||t-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},e.prototype.onDoubleClick=function(e){var t=e.getDocumentPosition(),n=this.editor,r=n.session,i=r.getBracketRange(t);i?(i.isEmpty()&&(i.start.column--,i.end.column++),this.setState("select")):(i=n.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=i,this.select()},e.prototype.onTripleClick=function(e){var t=e.getDocumentPosition(),n=this.editor;this.setState("selectByLines");var r=n.getSelectionRange();r.isMultiLine()&&r.contains(t.row,t.column)?(this.$clickSelection=n.selection.getLineRange(r.start.row),this.$clickSelection.end=n.selection.getLineRange(r.end.row).end):this.$clickSelection=n.selection.getLineRange(t.row),this.select()},e.prototype.onQuadClick=function(e){var t=this.editor;t.selectAll(),this.$clickSelection=t.getSelectionRange(),this.setState("selectAll")},e.prototype.onMouseWheel=function(e){if(e.getAccelKey())return;e.getShiftKey()&&e.wheelY&&!e.wheelX&&(e.wheelX=e.wheelY,e.wheelY=0);var t=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var n=this.$lastScroll,r=e.domEvent.timeStamp,i=r-n.t,o=i?e.wheelX/i:n.vx,u=i?e.wheelY/i:n.vy;i=1&&t.renderer.isScrollableBy(e.wheelX*e.speed,0)&&(f=!0),a<=1&&t.renderer.isScrollableBy(0,e.wheelY*e.speed)&&(f=!0);if(f)n.allowed=r;else if(r-n.allowedn.clientHeight;r||t.preventDefault()}}),define("ace/tooltip",["require","exports","module","ace/lib/dom","ace/lib/event","ace/range","ace/lib/scroll"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=this&&this.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},s=e("./lib/dom"),o=e("./lib/event"),u=e("./range").Range,a=e("./lib/scroll").preventParentScroll,f="ace_tooltip",l=function(){function e(e){this.isOpen=!1,this.$element=null,this.$parentNode=e}return e.prototype.$init=function(){return this.$element=s.createElement("div"),this.$element.className=f,this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},e.prototype.getElement=function(){return this.$element||this.$init()},e.prototype.setText=function(e){this.getElement().textContent=e},e.prototype.setHtml=function(e){this.getElement().innerHTML=e},e.prototype.setPosition=function(e,t){this.getElement().style.left=e+"px",this.getElement().style.top=t+"px"},e.prototype.setClassName=function(e){s.addCssClass(this.getElement(),e)},e.prototype.setTheme=function(e){this.theme&&(this.theme.isDark&&s.removeCssClass(this.getElement(),"ace_dark"),this.theme.cssClass&&s.removeCssClass(this.getElement(),this.theme.cssClass)),e.isDark&&s.addCssClass(this.getElement(),"ace_dark"),e.cssClass&&s.addCssClass(this.getElement(),e.cssClass),this.theme={isDark:e.isDark,cssClass:e.cssClass}},e.prototype.show=function(e,t,n){e!=null&&this.setText(e),t!=null&&n!=null&&this.setPosition(t,n),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},e.prototype.hide=function(e){this.isOpen&&(this.getElement().style.display="none",this.getElement().className=f,this.isOpen=!1)},e.prototype.getHeight=function(){return this.getElement().offsetHeight},e.prototype.getWidth=function(){return this.getElement().offsetWidth},e.prototype.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)},e}(),c=function(){function e(){this.popups=[]}return e.prototype.addPopup=function(e){this.popups.push(e),this.updatePopups()},e.prototype.removePopup=function(e){var t=this.popups.indexOf(e);t!==-1&&(this.popups.splice(t,1),this.updatePopups())},e.prototype.updatePopups=function(){var e,t,n,r;this.popups.sort(function(e,t){return t.priority-e.priority});var s=[];try{for(var o=i(this.popups),u=o.next();!u.done;u=o.next()){var a=u.value,f=!0;try{for(var l=(n=void 0,i(s)),c=l.next();!c.done;c=l.next()){var h=c.value;if(this.doPopupsOverlap(h,a)){f=!1;break}}}catch(p){n={error:p}}finally{try{c&&!c.done&&(r=l.return)&&r.call(l)}finally{if(n)throw n.error}}f?s.push(a):a.hide()}}catch(d){e={error:d}}finally{try{u&&!u.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}},e.prototype.doPopupsOverlap=function(e,t){var n=e.getElement().getBoundingClientRect(),r=t.getElement().getBoundingClientRect();return n.leftr.left&&n.topr.top},e}(),h=new c;t.popupManager=h,t.Tooltip=l;var p=function(e){function t(t){t===void 0&&(t=document.body);var n=e.call(this,t)||this;n.timeout=undefined,n.lastT=0,n.idleTime=350,n.lastEvent=undefined,n.onMouseOut=n.onMouseOut.bind(n),n.onMouseMove=n.onMouseMove.bind(n),n.waitForHover=n.waitForHover.bind(n),n.hide=n.hide.bind(n);var r=n.getElement();return r.style.whiteSpace="pre-wrap",r.style.pointerEvents="auto",r.addEventListener("mouseout",n.onMouseOut),r.tabIndex=-1,r.addEventListener("blur",function(){r.contains(document.activeElement)||this.hide()}.bind(n)),r.addEventListener("wheel",a),n}return r(t,e),t.prototype.addToEditor=function(e){e.on("mousemove",this.onMouseMove),e.on("mousedown",this.hide);var t=e.renderer.getMouseEventTarget();t&&typeof t.removeEventListener=="function"&&t.addEventListener("mouseout",this.onMouseOut,!0)},t.prototype.removeFromEditor=function(e){e.off("mousemove",this.onMouseMove),e.off("mousedown",this.hide);var t=e.renderer.getMouseEventTarget();t&&typeof t.removeEventListener=="function"&&t.removeEventListener("mouseout",this.onMouseOut,!0),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},t.prototype.onMouseMove=function(e,t){this.lastEvent=e,this.lastT=Date.now();var n=t.$mouseHandler.isMousePressed;if(this.isOpen){var r=this.lastEvent&&this.lastEvent.getDocumentPosition();(!this.range||!this.range.contains(r.row,r.column)||n||this.isOutsideOfText(this.lastEvent))&&this.hide()}if(this.timeout||n)return;this.lastEvent=e,this.timeout=setTimeout(this.waitForHover,this.idleTime)},t.prototype.waitForHover=function(){this.timeout&&clearTimeout(this.timeout);var e=Date.now()-this.lastT;if(this.idleTime-e>10){this.timeout=setTimeout(this.waitForHover,this.idleTime-e);return}this.timeout=null,this.lastEvent&&!this.isOutsideOfText(this.lastEvent)&&this.$gatherData(this.lastEvent,this.lastEvent.editor)},t.prototype.isOutsideOfText=function(e){var t=e.editor,n=e.getDocumentPosition(),r=t.session.getLine(n.row);if(n.column==r.length){var i=t.renderer.pixelToScreenCoordinates(e.clientX,e.clientY),s=t.session.documentToScreenPosition(n.row,n.column);if(s.column!=i.column||s.row!=i.row)return!0}return!1},t.prototype.setDataProvider=function(e){this.$gatherData=e},t.prototype.showForRange=function(e,t,n,r){if(r&&r!=this.lastEvent)return;if(this.isOpen&&document.activeElement==this.getElement())return;var i=e.renderer;this.isOpen||(h.addPopup(this),this.$registerCloseEvents(),this.setTheme(i.theme)),this.isOpen=!0,this.range=u.fromPoints(t.start,t.end);var o=i.textToScreenCoordinates(t.start.row,t.start.column),a=i.scroller.getBoundingClientRect();o.pageX=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},s=e("../lib/dom"),o=e("./mouse_event").MouseEvent,u=e("../tooltip").HoverTooltip,a=e("../config").nls,f=e("../range").Range;t.GutterHandler=l;var c=function(e){function t(n){var r=e.call(this,n.container)||this;r.id="gt"+ ++t.$uid,r.editor=n,r.visibleTooltipRow;var i=r.getElement();return i.setAttribute("role","tooltip"),i.setAttribute("id",r.id),i.style.pointerEvents="auto",r.idleTime=50,r.onDomMouseMove=r.onDomMouseMove.bind(r),r.onDomMouseOut=r.onDomMouseOut.bind(r),r.setClassName("ace_gutter-tooltip"),r}return r(t,e),t.prototype.onDomMouseMove=function(e){var t=new o(e,this.editor);this.onMouseMove(t,this.editor)},t.prototype.onDomMouseOut=function(e){var t=new o(e,this.editor);this.onMouseOut(t)},t.prototype.addToEditor=function(t){var n=t.renderer.$gutter;n.addEventListener("mousemove",this.onDomMouseMove),n.addEventListener("mouseout",this.onDomMouseOut),e.prototype.addToEditor.call(this,t)},t.prototype.removeFromEditor=function(t){var n=t.renderer.$gutter;n.removeEventListener("mousemove",this.onDomMouseMove),n.removeEventListener("mouseout",this.onDomMouseOut),e.prototype.removeFromEditor.call(this,t)},t.prototype.destroy=function(){this.editor&&this.removeFromEditor(this.editor),e.prototype.destroy.call(this)},Object.defineProperty(t,"annotationLabels",{get:function(){return{error:{singular:a("gutter-tooltip.aria-label.error.singular","error"),plural:a("gutter-tooltip.aria-label.error.plural","errors")},security:{singular:a("gutter-tooltip.aria-label.security.singular","security finding"),plural:a("gutter-tooltip.aria-label.security.plural","security findings")},warning:{singular:a("gutter-tooltip.aria-label.warning.singular","warning"),plural:a("gutter-tooltip.aria-label.warning.plural","warnings")},info:{singular:a("gutter-tooltip.aria-label.info.singular","information message"),plural:a("gutter-tooltip.aria-label.info.plural","information messages")},hint:{singular:a("gutter-tooltip.aria-label.hint.singular","suggestion"),plural:a("gutter-tooltip.aria-label.hint.plural","suggestions")}}},enumerable:!1,configurable:!0}),t.prototype.showTooltip=function(e){var n,r=this.editor.renderer.$gutterLayer,i=r.$annotations[e],o;i?o={displayText:Array.from(i.displayText),type:Array.from(i.type)}:o={displayText:[],type:[]};var u=r.session.getFoldLine(e);if(u&&r.$showFoldedAnnotations){var a={error:[],security:[],warning:[],info:[],hint:[]},l={error:1,security:2,warning:3,info:4,hint:5},c;for(var h=e+1;h<=u.end.row;h++){if(!r.$annotations[h])continue;for(var p=0;p2)return n.childNodes[2]}},t.prototype.$findCellByRow=function(e){return this.editor.renderer.$gutterLayer.$lines.cells.find(function(t){return t.row===e})},t.prototype.hide=function(t){if(!this.isOpen)return;this.$element.removeAttribute("aria-live");if(this.visibleTooltipRow!=undefined){var n=this.$findLinkedAnnotationNode(this.visibleTooltipRow);n&&n.removeAttribute("aria-describedby")}this.visibleTooltipRow=undefined,this.editor._signal("hideGutterTooltip",this),e.prototype.hide.call(this,t)},t.annotationsToSummaryString=function(e){var n,r,s=[],o=["error","security","warning","info","hint"];try{for(var u=i(o),a=u.next();!a.done;a=u.next()){var f=a.value;if(!e[f].length)continue;var l=e[f].length===1?t.annotationLabels[f].singular:t.annotationLabels[f].plural;s.push("".concat(e[f].length," ").concat(l))}}catch(c){n={error:c}}finally{try{a&&!a.done&&(r=u.return)&&r.call(u)}finally{if(n)throw n.error}}return s.join(", ")},t.prototype.isOutsideOfText=function(e){var t=e.editor,n=t.renderer.$gutter.getBoundingClientRect();return!(e.clientX>=n.left&&e.clientX<=n.right&&e.clientY>=n.top&&e.clientY<=n.bottom)},t}(u);c.$uid=0,t.GutterTooltip=c}),define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,n){"use strict";function f(e){function T(e,n){var r=Date.now(),i=!n||e.row!=n.row,s=!n||e.column!=n.column;if(!S||i||s)t.moveCursorToPosition(e),S=r,x={x:p,y:d};else{var o=l(x.x,x.y,p,d);o>a?S=null:r-S>=u&&(t.renderer.scrollCursorIntoView(),S=null)}}function N(e,n){var r=Date.now(),i=t.renderer.layerConfig.lineHeight,s=t.renderer.layerConfig.characterWidth,u=t.renderer.scroller.getBoundingClientRect(),a={x:{left:p-u.left,right:u.right-p},y:{top:d-u.top,bottom:u.bottom-d}},f=Math.min(a.x.left,a.x.right),l=Math.min(a.y.top,a.y.bottom),c={row:e.row,column:e.column};f/s<=2&&(c.column+=a.x.left=o&&t.renderer.scrollCursorIntoView(c):E=r:E=null}function C(){var e=g;g=t.renderer.screenToTextCoordinates(p,d),T(g,e),N(g,e)}function k(){m=t.selection.toOrientedRange(),h=t.session.addMarker(m,"ace_selection",t.getSelectionStyle()),t.clearSelection(),t.isFocused()&&t.renderer.$cursorLayer.setBlinking(!1),clearInterval(v),C(),v=setInterval(C,20),y=0,i.addListener(document,"mousemove",O)}function L(){clearInterval(v),t.session.removeMarker(h),h=null,t.selection.fromOrientedRange(m),t.isFocused()&&!w&&t.$resetCursorStyle(),m=null,g=null,y=0,E=null,S=null,i.removeListener(document,"mousemove",O)}function O(){A==null&&(A=setTimeout(function(){A!=null&&h&&L()},20))}function M(e){var t=e.types;return!t||Array.prototype.some.call(t,function(e){return e=="text/plain"||e=="Text"})}function _(e){var t=["copy","copymove","all","uninitialized"],n=["move","copymove","linkmove","all","uninitialized"],r=s.isMac?e.altKey:e.ctrlKey,i="uninitialized";try{i=e.dataTransfer.effectAllowed.toLowerCase()}catch(e){}var o="none";return r&&t.indexOf(i)>=0?o="copy":n.indexOf(i)>=0?o="move":t.indexOf(i)>=0&&(o="copy"),o}var t=e.editor,n=r.createElement("div");n.style.cssText="top:-100px;position:absolute;z-index:2147483647;opacity:0.5",n.textContent="\u00a0";var f=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];f.forEach(function(t){e[t]=this[t]},this),t.on("mousedown",this.onMouseDown.bind(e));var c=t.container,h,p,d,v,m,g,y=0,b,w,E,S,x;this.onDragStart=function(e){if(this.cancelDrag||!c.draggable){var r=this;return setTimeout(function(){r.startSelect(),r.captureMouse(e)},0),e.preventDefault()}m=t.getSelectionRange();var i=e.dataTransfer;i.effectAllowed=t.getReadOnly()?"copy":"copyMove",t.container.appendChild(n),i.setDragImage&&i.setDragImage(n,0,0),setTimeout(function(){t.container.removeChild(n)}),i.clearData(),i.setData("Text",t.session.getTextRange()),w=!0,this.setState("drag")},this.onDragEnd=function(e){c.draggable=!1,w=!1,this.setState(null);if(!t.getReadOnly()){var n=e.dataTransfer.dropEffect;!b&&n=="move"&&t.session.remove(t.getSelectionRange()),t.$resetCursorStyle()}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(e){if(t.getReadOnly()||!M(e.dataTransfer))return;return p=e.clientX,d=e.clientY,h||k(),y++,e.dataTransfer.dropEffect=b=_(e),i.preventDefault(e)},this.onDragOver=function(e){if(t.getReadOnly()||!M(e.dataTransfer))return;return p=e.clientX,d=e.clientY,h||(k(),y++),A!==null&&(A=null),e.dataTransfer.dropEffect=b=_(e),i.preventDefault(e)},this.onDragLeave=function(e){y--;if(y<=0&&h)return L(),b=null,i.preventDefault(e)},this.onDrop=function(e){if(!g)return;var n=e.dataTransfer;if(w)switch(b){case"move":m.contains(g.row,g.column)?m={start:g,end:g}:m=t.moveText(m,g);break;case"copy":m=t.moveText(m,g,!0)}else{var r=n.getData("Text");m={start:g,end:t.session.insert(g,r)},t.focus(),b=null}return L(),i.preventDefault(e)},i.addListener(c,"dragstart",this.onDragStart.bind(e),t),i.addListener(c,"dragend",this.onDragEnd.bind(e),t),i.addListener(c,"dragenter",this.onDragEnter.bind(e),t),i.addListener(c,"dragover",this.onDragOver.bind(e),t),i.addListener(c,"dragleave",this.onDragLeave.bind(e),t),i.addListener(c,"drop",this.onDrop.bind(e),t);var A=null}function l(e,t,n,r){return Math.sqrt(Math.pow(n-e,2)+Math.pow(r-t,2))}var r=e("../lib/dom"),i=e("../lib/event"),s=e("../lib/useragent"),o=200,u=200,a=5;(function(){this.dragWait=function(){var e=Date.now()-this.mousedownEvent.time;e>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var e=this.editor.container;e.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(e){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var e=this.editor,t=e.container;t.draggable=!0,e.renderer.$cursorLayer.setBlinking(!1),e.setStyle("ace_dragging");var n=s.isWin?"default":"move";e.renderer.setCursorStyle(n),this.setState("dragReady")},this.onMouseDrag=function(e){var t=this.editor.container;if(s.isIE&&this.state=="dragReady"){var n=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>3&&t.dragDrop()}if(this.state==="dragWait"){var n=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>0&&(t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(e){if(!this.$dragEnabled)return;this.mousedownEvent=e;var t=this.editor,n=e.inSelection(),r=e.getButton(),i=e.domEvent.detail||1;if(i===1&&r===0&&n){if(e.editor.inMultiSelectMode&&(e.getAccelKey()||e.getShiftKey()))return;this.mousedownEvent.time=Date.now();var o=e.domEvent.target||e.domEvent.srcElement;"unselectable"in o&&(o.unselectable="on");if(t.getDragDelay()){if(s.isWebKit){this.cancelDrag=!0;var u=t.container;u.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(e,this.onMouseDrag.bind(this)),e.defaultPrevented=!0}}}).call(f.prototype),t.DragdropHandler=f}),define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(e,t,n){"use strict";var r=e("./mouse_event").MouseEvent,i=e("../lib/event"),s=e("../lib/dom");t.addTouchListeners=function(e,t){function b(){var e=window.navigator&&window.navigator.clipboard,r=!1,i=function(){var n=t.getCopyText(),i=t.session.getUndoManager().hasUndo();y.replaceChild(s.buildDom(r?["span",!n&&o("selectall")&&["span",{"class":"ace_mobile-button",action:"selectall"},"Select All"],n&&o("copy")&&["span",{"class":"ace_mobile-button",action:"copy"},"Copy"],n&&o("cut")&&["span",{"class":"ace_mobile-button",action:"cut"},"Cut"],e&&o("paste")&&["span",{"class":"ace_mobile-button",action:"paste"},"Paste"],i&&o("undo")&&["span",{"class":"ace_mobile-button",action:"undo"},"Undo"],o("find")&&["span",{"class":"ace_mobile-button",action:"find"},"Find"],o("openCommandPalette")&&["span",{"class":"ace_mobile-button",action:"openCommandPalette"},"Palette"]]:["span"]),y.firstChild)},o=function(e){return t.commands.canExecute(e,t)},u=function(n){var s=n.target.getAttribute("action");if(s=="more"||!r)return r=!r,i();if(s=="paste")e.readText().then(function(e){t.execCommand(s,e)});else if(s){if(s=="cut"||s=="copy")e?e.writeText(t.getCopyText()):document.execCommand("copy");t.execCommand(s)}y.firstChild.style.display="none",r=!1,s!="openCommandPalette"&&t.focus()};y=s.buildDom(["div",{"class":"ace_mobile-menu",onclick:u},["span"],["span",{"class":"ace_mobile-button",action:"more"},"..."]],t.container),y.addEventListener("touchstart",function(e){n="menu",e.stopPropagation(),e.preventDefault(),t.textInput.focus()}),y.addEventListener("touchend",function(e){e.stopPropagation(),e.preventDefault(),u(e)})}function w(){if(!t.getOption("enableMobileMenu")){y&&E();return}y||b();var e=t.selection.cursor,n=t.renderer.textToScreenCoordinates(e.row,e.column),r=t.renderer.textToScreenCoordinates(0,0).pageX,i=t.renderer.scrollLeft,s=t.container.getBoundingClientRect();y.style.top=n.pageY-s.top-3+"px",n.pageX-s.left=2?t.selection.getLineRange(p.row):t.session.getBracketRange(p);e&&!e.isEmpty()?t.selection.setRange(e):t.selection.selectWord(),n="wait"}function T(){h+=60,c=setInterval(function(){h--<=0&&(clearInterval(c),c=null),Math.abs(v)<.01&&(v=0),Math.abs(m)<.01&&(m=0),h<20&&(v=.9*v),h<20&&(m=.9*m);var e=t.session.getScrollTop();t.renderer.scrollBy(10*v,10*m),e==t.session.getScrollTop()&&(h=0)},10)}var n="scroll",o,u,a,f,l,c,h=0,p,d=0,v=0,m=0,g,y;i.addListener(e,"contextmenu",function(e){if(!g)return;var n=t.textInput.getElement();n.focus()},t),i.addListener(e,"touchstart",function(e){var i=e.touches;if(l||i.length>1){clearTimeout(l),l=null,a=-1,n="zoom";return}g=t.$mouseHandler.isMousePressed=!0;var s=t.renderer.layerConfig.lineHeight,c=t.renderer.layerConfig.lineHeight,y=e.timeStamp;f=y;var b=i[0],w=b.clientX,E=b.clientY;Math.abs(o-w)+Math.abs(u-E)>s&&(a=-1),o=e.clientX=w,u=e.clientY=E,v=m=0;var T=new r(e,t);p=T.getDocumentPosition();if(y-a<500&&i.length==1&&!h)d++,e.preventDefault(),e.button=0,x();else{d=0;var N=t.selection.cursor,C=t.selection.isEmpty()?N:t.selection.anchor,k=t.renderer.$cursorLayer.getPixelPosition(N,!0),L=t.renderer.$cursorLayer.getPixelPosition(C,!0),A=t.renderer.scroller.getBoundingClientRect(),O=t.renderer.layerConfig.offset,M=t.renderer.scrollLeft,_=function(e,t){return e/=c,t=t/s-.75,e*e+t*t};if(e.clientXP?"cursor":"anchor"),P<3.5?n="anchor":D<3.5?n="cursor":n="scroll",l=setTimeout(S,450)}a=y},t),i.addListener(e,"touchend",function(e){g=t.$mouseHandler.isMousePressed=!1,c&&clearInterval(c),n=="zoom"?(n="",h=0):l?(t.selection.moveToPosition(p),h=0,w()):n=="scroll"?(T(),E()):w(),clearTimeout(l),l=null},t),i.addListener(e,"touchmove",function(e){l&&(clearTimeout(l),l=null);var i=e.touches;if(i.length>1||n=="zoom")return;var s=i[0],a=o-s.clientX,c=u-s.clientY;if(n=="wait"){if(!(a*a+c*c>4))return e.preventDefault();n="cursor"}o=s.clientX,u=s.clientY,e.clientX=s.clientX,e.clientY=s.clientY;var h=e.timeStamp,p=h-f;f=h;if(n=="scroll"){var d=new r(e,t);d.speed=1,d.wheelX=a,d.wheelY=c,10*Math.abs(a)0)if(g==16){for(w=b;w-1){for(w=b;w=0;C--){if(r[C]!=N)break;t[C]=s}}}function I(e,t,n){if(o=e){u=i+1;while(u=e)u++;for(a=i,l=u-1;a=t.length||(o=n[r-1])!=b&&o!=w||(c=t[r+1])!=b&&c!=w)return E;return u&&(c=w),c==o?c:E;case k:o=r>0?n[r-1]:S;if(o==b&&r+10&&n[r-1]==b)return b;if(u)return E;p=r+1,h=t.length;while(p=1425&&d<=2303||d==64286;o=t[p];if(v&&(o==y||o==T))return y}if(r<1||(o=t[r-1])==S)return E;return n[r-1];case S:return u=!1,f=!0,s;case x:return l=!0,E;case O:case M:case D:case P:case _:u=!1;case H:return E}}function R(e){var t=e.charCodeAt(0),n=t>>8;return n==0?t>191?g:B[t]:n==5?/[\u0591-\u05f4]/.test(e)?y:g:n==6?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(e)?A:/[\u0660-\u0669\u066b-\u066c]/.test(e)?w:t==1642?L:/[\u06f0-\u06f9]/.test(e)?b:T:n==32&&t<=8287?j[t&255]:n==254?t>=65136?T:E:E}function U(e){return e>="\u064b"&&e<="\u0655"}var r=["\u0621","\u0641"],i=["\u063a","\u064a"],s=0,o=0,u=!1,a=!1,f=!1,l=!1,c=!1,h=!1,p=[[0,3,0,1,0,0,0],[0,3,0,1,2,2,0],[0,3,0,17,2,0,1],[0,3,5,5,4,1,0],[0,3,21,21,4,0,1],[0,3,5,5,4,2,0]],d=[[2,0,1,1,0,1,0],[2,0,1,1,0,2,0],[2,0,2,1,3,2,0],[2,0,2,33,3,1,1]],v=0,m=1,g=0,y=1,b=2,w=3,E=4,S=5,x=6,T=7,N=8,C=9,k=10,L=11,A=12,O=13,M=14,_=15,D=16,P=17,H=18,B=[H,H,H,H,H,H,H,H,H,x,S,x,N,S,H,H,H,H,H,H,H,H,H,H,H,H,H,H,S,S,S,x,N,E,E,L,L,L,E,E,E,E,E,k,C,k,C,C,b,b,b,b,b,b,b,b,b,b,C,E,E,E,E,E,E,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,E,E,E,E,E,E,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,E,E,E,E,H,H,H,H,H,H,S,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,C,E,L,L,L,L,E,E,E,E,g,E,E,H,E,E,L,L,b,b,E,g,E,E,E,b,g,E,E,E,E,E],j=[N,N,N,N,N,N,N,N,N,N,N,H,H,H,g,y,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,N,S,O,M,_,D,P,C,L,L,L,L,L,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,C,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,N];t.L=g,t.R=y,t.EN=b,t.ON_R=3,t.AN=4,t.R_H=5,t.B=6,t.RLE=7,t.DOT="\u00b7",t.doBidiReorder=function(e,n,r){if(e.length<2)return{};var i=e.split(""),o=new Array(i.length),u=new Array(i.length),a=[];s=r?m:v,F(i,a,i.length,n);for(var f=0;fT&&n[f]0&&i[f-1]==="\u0644"&&/\u0622|\u0623|\u0625|\u0627/.test(i[f])&&(a[f-1]=a[f]=t.R_H,f++);i[i.length-1]===t.DOT&&(a[i.length-1]=t.B),i[0]==="\u202b"&&(a[0]=t.RLE);for(var f=0;f=0&&(e=this.session.$docRowCache[n])}return e},e.prototype.getSplitIndex=function(){var e=0,t=this.session.$screenRowCache;if(t.length){var n,r=this.session.$getRowCacheIndex(t,this.currentRow);while(this.currentRow-e>0){n=this.session.$getRowCacheIndex(t,this.currentRow-e-1);if(n!==r)break;r=n,e++}}else e=this.currentRow;return e},e.prototype.markAsDirty=function(){this.currentRow=null},e.prototype.setShowInvisibles=function(e){this.showInvisibles=e,this.currentRow=null},e.prototype.setEolChar=function(e){this.EOL=e},e.prototype.setContentWidth=function(e){this.contentWidth=e},e.prototype.isRtlLine=function(e){return this.$isRtl?!0:e!=undefined?this.session.getLine(e).charAt(0)==this.RLE:this.isRtlDir},e.prototype.setRtlDirection=function(e,t){var n=e.getCursorPosition();for(var r=e.selection.getSelectionAnchor().row;r<=n.row;r++)!t&&e.session.getLine(r).charAt(0)===e.session.$bidiHandler.RLE?e.session.doc.removeInLine(r,0,1):t&&e.session.getLine(r).charAt(0)!==e.session.$bidiHandler.RLE&&e.session.doc.insert({column:0,row:r},e.session.$bidiHandler.RLE)},e}();t.BidiHandler=o}),define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/lang"),s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=function(){function e(e){this.session=e,this.doc=e.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var t=this;this.cursor.on("change",function(e){t.$cursorChanged=!0,t.$silent||t._emit("changeCursor"),!t.$isEmpty&&!t.$silent&&t._emit("changeSelection"),!t.$keepDesiredColumnOnChange&&e.old.column!=e.value.column&&(t.$desiredColumn=null)}),this.anchor.on("change",function(){t.$anchorChanged=!0,!t.$isEmpty&&!t.$silent&&t._emit("changeSelection")})}return e.prototype.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},e.prototype.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},e.prototype.getCursor=function(){return this.lead.getPosition()},e.prototype.setAnchor=function(e,t){this.$isEmpty=!1,this.anchor.setPosition(e,t)},e.prototype.getAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},e.prototype.getSelectionLead=function(){return this.lead.getPosition()},e.prototype.isBackwards=function(){var e=this.anchor,t=this.lead;return e.row>t.row||e.row==t.row&&e.column>t.column},e.prototype.getRange=function(){var e=this.anchor,t=this.lead;return this.$isEmpty?o.fromPoints(t,t):this.isBackwards()?o.fromPoints(t,e):o.fromPoints(e,t)},e.prototype.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},e.prototype.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},e.prototype.setRange=function(e,t){var n=t?e.end:e.start,r=t?e.start:e.end;this.$setSelection(n.row,n.column,r.row,r.column)},e.prototype.$setSelection=function(e,t,n,r){if(this.$silent)return;var i=this.$isEmpty,s=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(e,t),this.cursor.setPosition(n,r),this.$isEmpty=!o.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||i!=this.$isEmpty||s)&&this._emit("changeSelection")},e.prototype.$moveSelection=function(e){var t=this.lead;this.$isEmpty&&this.setSelectionAnchor(t.row,t.column),e.call(this)},e.prototype.selectTo=function(e,t){this.$moveSelection(function(){this.moveCursorTo(e,t)})},e.prototype.selectToPosition=function(e){this.$moveSelection(function(){this.moveCursorToPosition(e)})},e.prototype.moveTo=function(e,t){this.clearSelection(),this.moveCursorTo(e,t)},e.prototype.moveToPosition=function(e){this.clearSelection(),this.moveCursorToPosition(e)},e.prototype.selectUp=function(){this.$moveSelection(this.moveCursorUp)},e.prototype.selectDown=function(){this.$moveSelection(this.moveCursorDown)},e.prototype.selectRight=function(){this.$moveSelection(this.moveCursorRight)},e.prototype.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},e.prototype.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},e.prototype.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},e.prototype.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},e.prototype.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},e.prototype.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},e.prototype.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},e.prototype.getWordRange=function(e,t){if(typeof t=="undefined"){var n=e||this.lead;e=n.row,t=n.column}return this.session.getWordRange(e,t)},e.prototype.selectWord=function(){this.setSelectionRange(this.getWordRange())},e.prototype.selectAWord=function(){var e=this.getCursor(),t=this.session.getAWordRange(e.row,e.column);this.setSelectionRange(t)},e.prototype.getLineRange=function(e,t){var n=typeof e=="number"?e:this.lead.row,r,i=this.session.getFoldLine(n);return i?(n=i.start.row,r=i.end.row):r=n,t===!0?new o(n,0,r,this.session.getLine(r).length):new o(n,0,r+1,0)},e.prototype.selectLine=function(){this.setSelectionRange(this.getLineRange())},e.prototype.moveCursorUp=function(){this.moveCursorBy(-1,0)},e.prototype.moveCursorDown=function(){this.moveCursorBy(1,0)},e.prototype.wouldMoveIntoSoftTab=function(e,t,n){var r=e.column,i=e.column+t;return n<0&&(r=e.column-t,i=e.column),this.session.isTabStop(e)&&this.doc.getLine(e.row).slice(r,i).split(" ").length-1==t},e.prototype.moveCursorLeft=function(){var e=this.lead.getPosition(),t;if(t=this.session.getFoldAt(e.row,e.column,-1))this.moveCursorTo(t.start.row,t.start.column);else if(e.column===0)e.row>0&&this.moveCursorTo(e.row-1,this.doc.getLine(e.row-1).length);else{var n=this.session.getTabSize();this.wouldMoveIntoSoftTab(e,n,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-n):this.moveCursorBy(0,-1)}},e.prototype.moveCursorRight=function(){var e=this.lead.getPosition(),t;if(t=this.session.getFoldAt(e.row,e.column,1))this.moveCursorTo(t.end.row,t.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(t.column=r)}}this.moveCursorTo(t.row,t.column)},e.prototype.moveCursorFileEnd=function(){var e=this.doc.getLength()-1,t=this.doc.getLine(e).length;this.moveCursorTo(e,t)},e.prototype.moveCursorFileStart=function(){this.moveCursorTo(0,0)},e.prototype.moveCursorLongWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),r=n.substring(t);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var i=this.session.getFoldAt(e,t,1);if(i){this.moveCursorTo(i.end.row,i.end.column);return}this.session.nonTokenRe.exec(r)&&(t+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,r=n.substring(t));if(t>=n.length){this.moveCursorTo(e,n.length),this.moveCursorRight(),e0&&this.moveCursorWordLeft();return}this.session.tokenRe.exec(s)&&(t-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(e,t)},e.prototype.$shortWordEndIndex=function(e){var t=0,n,r=/\s/,i=this.session.tokenRe;i.lastIndex=0;if(this.session.tokenRe.exec(e))t=this.session.tokenRe.lastIndex;else{while((n=e[t])&&r.test(n))t++;if(t<1){i.lastIndex=0;while((n=e[t])&&!i.test(n)){i.lastIndex=0,t++;if(r.test(n)){if(t>2){t--;break}while((n=e[t])&&r.test(n))t++;if(t>2)break}}}}return i.lastIndex=0,t},e.prototype.moveCursorShortWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),r=n.substring(t),i=this.session.getFoldAt(e,t,1);if(i)return this.moveCursorTo(i.end.row,i.end.column);if(t==n.length){var s=this.doc.getLength();do e++,r=this.doc.getLine(e);while(e0&&/^\s*$/.test(r));t=r.length,/\s+$/.test(r)||(r="")}var s=i.stringReverse(r),o=this.$shortWordEndIndex(s);return this.moveCursorTo(e,t-o)},e.prototype.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},e.prototype.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},e.prototype.moveCursorBy=function(e,t){var n=this.session.documentToScreenPosition(this.lead.row,this.lead.column),r,i=this.session.$fontMetrics,s=t===0&&e!==0&&i;t===0&&(s&&this.$desiredColumn==null&&(r=i.textWidth(n.row,n.column),isFinite(r)&&(this.$desiredColumn=r/i.config.characterWidth)),this.$desiredColumn?n.column=this.$desiredColumn:this.$desiredColumn=n.column);if(e!=0&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var o=this.session.lineWidgets[this.lead.row];e<0?e-=o.rowsAbove||0:e>0&&(e+=o.rowCount-(o.rowsAbove||0))}var u=n.row+e;if(s&&this.$desiredColumn!=null){r=this.$desiredColumn*i.config.characterWidth;var a=i.renderer&&i.renderer.$blockCursor;n.column=i.$pixelToColumn(u,n.column,r,a,!0)}var f=this.session.screenToDocumentPosition(u,n.column);this.moveCursorTo(f.row,f.column+t,t===0)},e.prototype.moveCursorToPosition=function(e){this.moveCursorTo(e.row,e.column)},e.prototype.moveCursorTo=function(e,t,n){var r=this.session.getFoldAt(e,t,1);r&&(e=r.start.row,t=r.start.column),this.$keepDesiredColumnOnChange=!0;var i=this.session.getLine(e);/[\uDC00-\uDFFF]/.test(i.charAt(t))&&i.charAt(t-1)&&(this.lead.row==e&&this.lead.column==t+1?t-=1:t+=1),this.lead.setPosition(e,t),this.$keepDesiredColumnOnChange=!1,n||(this.$desiredColumn=null)},e.prototype.moveCursorToScreen=function(e,t,n){var r=this.session.screenToDocumentPosition(e,t);this.moveCursorTo(r.row,r.column,n)},e.prototype.detach=function(){this.lead.detach(),this.anchor.detach()},e.prototype.fromOrientedRange=function(e){this.setSelectionRange(e,e.cursor==e.start),this.$desiredColumn=e.desiredColumn||this.$desiredColumn},e.prototype.toOrientedRange=function(e){var t=this.getRange();return e?(e.start.column=t.start.column,e.start.row=t.start.row,e.end.column=t.end.column,e.end.row=t.end.row):e=t,e.cursor=this.isBackwards()?e.start:e.end,e.desiredColumn=this.$desiredColumn,e},e.prototype.getRangeOfMovements=function(e){var t=this.getCursor();try{e(this);var n=this.getCursor();return o.fromPoints(t,n)}catch(r){return o.fromPoints(t,t)}finally{this.moveCursorToPosition(t)}},e.prototype.toJSON=function(){if(this.rangeCount)var e=this.ranges.map(function(e){var t=e.clone();return t.isBackwards=e.cursor==e.start,t});else{var e=this.getRange();e.isBackwards=this.isBackwards()}return e},e.prototype.fromJSON=function(e){if(e.start==undefined){if(this.rangeList&&e.length>1){this.toSingleRange(e[0]);for(var t=e.length;t--;){var n=o.fromPoints(e[t].start,e[t].end);e[t].isBackwards&&(n.cursor=n.start),this.addRange(n,!0)}return}e=e[0]}this.rangeList&&this.toSingleRange(e),this.setSelectionRange(e,e.isBackwards)},e.prototype.isEqual=function(e){if((e.length||this.rangeCount)&&e.length!=this.rangeCount)return!1;if(!e.length||!this.ranges)return this.getRange().isEqual(e);for(var t=this.ranges.length;t--;)if(!this.ranges[t].isEqual(e[t]))return!1;return!0},e}();u.prototype.setSelectionAnchor=u.prototype.setAnchor,u.prototype.getSelectionAnchor=u.prototype.getAnchor,u.prototype.setSelectionRange=u.prototype.setRange,r.implement(u.prototype,s),t.Selection=u}),define("ace/tokenizer",["require","exports","module","ace/lib/report_error"],function(e,t,n){"use strict";var r=e("./lib/report_error").reportError,i=2e3,s=function(){function e(e){this.splitRegex,this.states=e,this.regExps={},this.matchMappings={};for(var t in this.states){var n=this.states[t],r=[],i=0,s=this.matchMappings[t]={defaultToken:"text"},o="g",u=[];for(var a=0;a1?f.onMatch=this.$applyToken:f.onMatch=f.token),c>1&&(/\\\d/.test(f.regex)?l=f.regex.replace(/\\([0-9]+)/g,function(e,t){return"\\"+(parseInt(t,10)+i+1)}):(c=1,l=this.removeCapturingGroups(f.regex)),!f.splitRegex&&typeof f.token!="string"&&u.push(f)),s[i]=a,i+=c,r.push(l),f.onMatch||(f.onMatch=null)}r.length||(s[0]=0,r.push("$")),u.forEach(function(e){e.splitRegex=this.createSplitterRegexp(e.regex,o)},this),this.regExps[t]=new RegExp("("+r.join(")|(")+")|($)",o)}}return e.prototype.$setMaxTokenCount=function(e){i=e|0},e.prototype.$applyToken=function(e){var t=this.splitRegex.exec(e).slice(1),n=this.token.apply(this,t);if(typeof n=="string")return[{type:n,value:e}];var r=[];for(var i=0,s=n.length;i1)continue;if(f)f=h!="]";else if(h=="[")f=!0;else if(h=="(")a++;else if(h==")"&&--a==0){u=c.index+1;break}}if(u==-1)break;e=e.substring(0,o)+e.substr(u)}return e.charAt(0)!="^"&&(e="^"+e),e.charAt(e.length-1)!="$"&&(e+="$"),new RegExp(e,(t||"").replace("g",""))},e.prototype.getLineTokens=function(e,t){if(t&&typeof t!="string"){var n=t.slice(0);t=n[0],t==="#tmp"&&(n.shift(),t=n.shift())}else var n=[];var r=t||"start",s=this.states[r];s||(r="start",s=this.states[r]);var o=this.matchMappings[r],u=this.regExps[r];u.lastIndex=0;var a,f=[],l=0,c=0,h={type:null,value:""};while(a=u.exec(e)){var p=o.defaultToken,d=null,v=a[0],m=u.lastIndex;if(m-v.length>l){var g=e.substring(l,m-v.length);h.type==p?h.value+=g:(h.type&&f.push(h),h={type:p,value:g})}for(var y=0;yi){c>2*e.length&&this.reportError("infinite loop with in ace tokenizer",{startState:t,line:e});while(l1&&n[0]!==r&&n.unshift("#tmp",r),{tokens:f,state:n.length?n:r}},e}();s.prototype.reportError=r,t.Tokenizer=s}),define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/deep_copy"],function(e,t,n){"use strict";var r=e("../lib/deep_copy").deepCopy,i;i=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}},function(){this.addRules=function(e,t){if(!t){for(var n in e)this.$rules[n]=e[n];return}for(var n in e){var r=e[n];for(var i=0;i=this.$rowTokens.length){this.$row+=1,e||(e=this.$session.getLength());if(this.$row>=e)return this.$row=e-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},e.prototype.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},e.prototype.getCurrentTokenRow=function(){return this.$row},e.prototype.getCurrentTokenColumn=function(){var e=this.$rowTokens,t=this.$tokenIndex,n=e[t].start;if(n!==undefined)return n;n=0;while(t>0)t-=1,n+=e[t].value.length;return n},e.prototype.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},e.prototype.getCurrentTokenRange=function(){var e=this.$rowTokens[this.$tokenIndex],t=this.getCurrentTokenColumn();return new r(this.$row,t,this.$row,t+e.value.length)},e}();t.TokenIterator=i}),define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,o=e("../../lib/lang"),u=["text","paren.rparen","rparen","paren","punctuation.operator"],a=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],f,l={},c={'"':'"',"'":"'"},h=function(e){var t=-1;e.multiSelect&&(t=e.selection.index,l.rangeCount!=e.multiSelect.rangeCount&&(l={rangeCount:e.multiSelect.rangeCount}));if(l[t])return f=l[t];f=l[t]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},p=function(e,t,n,r){var i=e.end.row-e.start.row;return{text:n+t+r,selection:[0,e.start.column+1,i,e.end.column+(i?0:1)]}},d;d=function(e){e=e||{},this.add("braces","insertion",function(t,n,r,i,s){var u=r.getCursorPosition(),a=i.doc.getLine(u.row);if(s=="{"){h(r);var l=r.getSelectionRange(),c=i.doc.getTextRange(l),v=i.getTokenAt(u.row,u.column);if(c!==""&&c!=="{"&&r.getWrapBehavioursEnabled())return p(l,c,"{","}");if(v&&/(?:string)\.quasi|\.xml/.test(v.type)){var m=[/tag\-(?:open|name)/,/attribute\-name/];if(m.some(function(e){return e.test(v.type)})||/(string)\.quasi/.test(v.type)&&v.value[u.column-v.start-1]!=="$")return;return d.recordAutoInsert(r,i,"}"),{text:"{}",selection:[1,1]}}if(d.isSaneInsertion(r,i))return/[\]\}\)]/.test(a[u.column])||r.inMultiSelectMode||e.braces?(d.recordAutoInsert(r,i,"}"),{text:"{}",selection:[1,1]}):(d.recordMaybeInsert(r,i,"{"),{text:"{",selection:[1,1]})}else if(s=="}"){h(r);var g=a.substring(u.column,u.column+1);if(g=="}"){var y=i.$findOpeningBracket("}",{column:u.column+1,row:u.row});if(y!==null&&d.isAutoInsertedClosing(u,a,s))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else{if(s=="\n"||s=="\r\n"){h(r);var b="";d.isMaybeInsertedClosing(u,a)&&(b=o.stringRepeat("}",f.maybeInsertedBrackets),d.clearMaybeInsertedClosing());var g=a.substring(u.column,u.column+1);if(g==="}"){var w=i.findMatchingBracket({row:u.row,column:u.column+1},"}");if(!w)return null;var E=this.$getIndent(i.getLine(w.row))}else{if(!b){d.clearMaybeInsertedClosing();return}var E=this.$getIndent(a)}var S=E+i.getTabString();return{text:"\n"+S+"\n"+E+b,selection:[1,S.length,1,S.length]}}d.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="{"){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.end.column,i.end.column+1);if(u=="}")return i.end.column++,i;f.maybeInsertedBrackets--}}),this.add("parens","insertion",function(e,t,n,r,i){if(i=="("){h(n);var s=n.getSelectionRange(),o=r.doc.getTextRange(s);if(o!==""&&n.getWrapBehavioursEnabled())return p(s,o,"(",")");if(d.isSaneInsertion(n,r))return d.recordAutoInsert(n,r,")"),{text:"()",selection:[1,1]}}else if(i==")"){h(n);var u=n.getCursorPosition(),a=r.doc.getLine(u.row),f=a.substring(u.column,u.column+1);if(f==")"){var l=r.$findOpeningBracket(")",{column:u.column+1,row:u.row});if(l!==null&&d.isAutoInsertedClosing(u,a,i))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="("){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u==")")return i.end.column++,i}}),this.add("brackets","insertion",function(e,t,n,r,i){if(i=="["){h(n);var s=n.getSelectionRange(),o=r.doc.getTextRange(s);if(o!==""&&n.getWrapBehavioursEnabled())return p(s,o,"[","]");if(d.isSaneInsertion(n,r))return d.recordAutoInsert(n,r,"]"),{text:"[]",selection:[1,1]}}else if(i=="]"){h(n);var u=n.getCursorPosition(),a=r.doc.getLine(u.row),f=a.substring(u.column,u.column+1);if(f=="]"){var l=r.$findOpeningBracket("]",{column:u.column+1,row:u.row});if(l!==null&&d.isAutoInsertedClosing(u,a,i))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="["){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u=="]")return i.end.column++,i}}),this.add("string_dquotes","insertion",function(e,t,n,r,i){var s=r.$mode.$quotes||c;if(i.length==1&&s[i]){if(this.lineCommentStart&&this.lineCommentStart.indexOf(i)!=-1)return;h(n);var o=i,u=n.getSelectionRange(),a=r.doc.getTextRange(u);if(a!==""&&(a.length!=1||!s[a])&&n.getWrapBehavioursEnabled())return p(u,a,o,o);if(!a){var f=n.getCursorPosition(),l=r.doc.getLine(f.row),d=l.substring(f.column-1,f.column),v=l.substring(f.column,f.column+1),m=r.getTokenAt(f.row,f.column),g=r.getTokenAt(f.row,f.column+1);if(d=="\\"&&m&&/escape/.test(m.type))return null;var y=m&&/string|escape/.test(m.type),b=!g||/string|escape/.test(g.type),w;if(v==o)w=y!==b,w&&/string\.end/.test(g.type)&&(w=!1);else{if(y&&!b)return null;if(y&&b)return null;var E=r.$mode.tokenRe;E.lastIndex=0;var S=E.test(d);E.lastIndex=0;var x=E.test(v),T=r.$mode.$pairQuotesAfter,N=T&&T[o]&&T[o].test(d);if(!N&&S||x)return null;if(v&&!/[\s;,.})\]\\]/.test(v))return null;var C=l[f.column-2];if(!(d!=o||C!=o&&!E.test(C)))return null;w=!0}return{text:w?o+o:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(e,t,n,r,i){var s=r.$mode.$quotes||c,o=r.doc.getTextRange(i);if(!i.isMultiLine()&&s.hasOwnProperty(o)){h(n);var u=r.doc.getLine(i.start.row),a=u.substring(i.start.column+1,i.start.column+2);if(a==o)return i.end.column++,i}}),e.closeDocComment!==!1&&this.add("doc comment end","insertion",function(e,t,n,r,i){if(e==="doc-start"&&(i==="\n"||i==="\r\n")&&n.selection.isEmpty()){var s=n.getCursorPosition();if(s.column===0)return;var o=r.doc.getLine(s.row),u=r.doc.getLine(s.row+1),a=r.getTokens(s.row),f=0;for(var l=0;l=s.column){if(f===s.column){if(!/\.doc/.test(c.type))return;if(/\*\//.test(c.value)){var h=a[l+1];if(!h||!/\.doc/.test(h.type))return}}var p=s.column-(f-c.value.length),d=c.value.indexOf("*/"),v=c.value.indexOf("/**",d>-1?d+2:0);if(v!==-1&&p>v&&p=d&&p<=v||!/\.doc/.test(c.type))return;break}}var m=this.$getIndent(o);if(/\s*\*/.test(u))return/^\s*\*/.test(o)?{text:i+m+"* ",selection:[1,2+m.length,1,2+m.length]}:{text:i+m+" * ",selection:[1,3+m.length,1,3+m.length]};if(/\/\*\*/.test(o.substring(0,s.column)))return{text:i+m+" * "+i+" "+m+"*/",selection:[1,4+m.length,1,4+m.length]}}})},d.isSaneInsertion=function(e,t){var n=e.getCursorPosition(),r=new s(t,n.row,n.column);if(!this.$matchTokenType(r.getCurrentToken()||"text",u)){if(/[)}\]]/.test(e.session.getLine(n.row)[n.column]))return!0;var i=new s(t,n.row,n.column+1);if(!this.$matchTokenType(i.getCurrentToken()||"text",u))return!1}return r.stepForward(),r.getCurrentTokenRow()!==n.row||this.$matchTokenType(r.getCurrentToken()||"text",a)},d.$matchTokenType=function(e,t){return t.indexOf(e.type||e)>-1},d.recordAutoInsert=function(e,t,n){var r=e.getCursorPosition(),i=t.doc.getLine(r.row);this.isAutoInsertedClosing(r,i,f.autoInsertedLineEnd[0])||(f.autoInsertedBrackets=0),f.autoInsertedRow=r.row,f.autoInsertedLineEnd=n+i.substr(r.column),f.autoInsertedBrackets++},d.recordMaybeInsert=function(e,t,n){var r=e.getCursorPosition(),i=t.doc.getLine(r.row);this.isMaybeInsertedClosing(r,i)||(f.maybeInsertedBrackets=0),f.maybeInsertedRow=r.row,f.maybeInsertedLineStart=i.substr(0,r.column)+n,f.maybeInsertedLineEnd=i.substr(r.column),f.maybeInsertedBrackets++},d.isAutoInsertedClosing=function(e,t,n){return f.autoInsertedBrackets>0&&e.row===f.autoInsertedRow&&n===f.autoInsertedLineEnd[0]&&t.substr(e.column)===f.autoInsertedLineEnd},d.isMaybeInsertedClosing=function(e,t){return f.maybeInsertedBrackets>0&&e.row===f.maybeInsertedRow&&t.substr(e.column)===f.maybeInsertedLineEnd&&t.substr(0,e.column)==f.maybeInsertedLineStart},d.popAutoInsertedClosing=function(){f.autoInsertedLineEnd=f.autoInsertedLineEnd.substr(1),f.autoInsertedBrackets--},d.clearMaybeInsertedClosing=function(){f&&(f.maybeInsertedBrackets=0,f.maybeInsertedRow=-1)},r.inherits(d,i),t.CstyleBehaviour=d}),define("ace/unicode",["require","exports","module"],function(e,t,n){"use strict";var r=[48,9,8,25,5,0,2,25,48,0,11,0,5,0,6,22,2,30,2,457,5,11,15,4,8,0,2,0,18,116,2,1,3,3,9,0,2,2,2,0,2,19,2,82,2,138,2,4,3,155,12,37,3,0,8,38,10,44,2,0,2,1,2,1,2,0,9,26,6,2,30,10,7,61,2,9,5,101,2,7,3,9,2,18,3,0,17,58,3,100,15,53,5,0,6,45,211,57,3,18,2,5,3,11,3,9,2,1,7,6,2,2,2,7,3,1,3,21,2,6,2,0,4,3,3,8,3,1,3,3,9,0,5,1,2,4,3,11,16,2,2,5,5,1,3,21,2,6,2,1,2,1,2,1,3,0,2,4,5,1,3,2,4,0,8,3,2,0,8,15,12,2,2,8,2,2,2,21,2,6,2,1,2,4,3,9,2,2,2,2,3,0,16,3,3,9,18,2,2,7,3,1,3,21,2,6,2,1,2,4,3,8,3,1,3,2,9,1,5,1,2,4,3,9,2,0,17,1,2,5,4,2,2,3,4,1,2,0,2,1,4,1,4,2,4,11,5,4,4,2,2,3,3,0,7,0,15,9,18,2,2,7,2,2,2,22,2,9,2,4,4,7,2,2,2,3,8,1,2,1,7,3,3,9,19,1,2,7,2,2,2,22,2,9,2,4,3,8,2,2,2,3,8,1,8,0,2,3,3,9,19,1,2,7,2,2,2,22,2,15,4,7,2,2,2,3,10,0,9,3,3,9,11,5,3,1,2,17,4,23,2,8,2,0,3,6,4,0,5,5,2,0,2,7,19,1,14,57,6,14,2,9,40,1,2,0,3,1,2,0,3,0,7,3,2,6,2,2,2,0,2,0,3,1,2,12,2,2,3,4,2,0,2,5,3,9,3,1,35,0,24,1,7,9,12,0,2,0,2,0,5,9,2,35,5,19,2,5,5,7,2,35,10,0,58,73,7,77,3,37,11,42,2,0,4,328,2,3,3,6,2,0,2,3,3,40,2,3,3,32,2,3,3,6,2,0,2,3,3,14,2,56,2,3,3,66,5,0,33,15,17,84,13,619,3,16,2,25,6,74,22,12,2,6,12,20,12,19,13,12,2,2,2,1,13,51,3,29,4,0,5,1,3,9,34,2,3,9,7,87,9,42,6,69,11,28,4,11,5,11,11,39,3,4,12,43,5,25,7,10,38,27,5,62,2,28,3,10,7,9,14,0,89,75,5,9,18,8,13,42,4,11,71,55,9,9,4,48,83,2,2,30,14,230,23,280,3,5,3,37,3,5,3,7,2,0,2,0,2,0,2,30,3,52,2,6,2,0,4,2,2,6,4,3,3,5,5,12,6,2,2,6,67,1,20,0,29,0,14,0,17,4,60,12,5,0,4,11,18,0,5,0,3,9,2,0,4,4,7,0,2,0,2,0,2,3,2,10,3,3,6,4,5,0,53,1,2684,46,2,46,2,132,7,6,15,37,11,53,10,0,17,22,10,6,2,6,2,6,2,6,2,6,2,6,2,6,2,6,2,31,48,0,470,1,36,5,2,4,6,1,5,85,3,1,3,2,2,89,2,3,6,40,4,93,18,23,57,15,513,6581,75,20939,53,1164,68,45,3,268,4,27,21,31,3,13,13,1,2,24,9,69,11,1,38,8,3,102,3,1,111,44,25,51,13,68,12,9,7,23,4,0,5,45,3,35,13,28,4,64,15,10,39,54,10,13,3,9,7,22,4,1,5,66,25,2,227,42,2,1,3,9,7,11171,13,22,5,48,8453,301,3,61,3,105,39,6,13,4,6,11,2,12,2,4,2,0,2,1,2,1,2,107,34,362,19,63,3,53,41,11,5,15,17,6,13,1,25,2,33,4,2,134,20,9,8,25,5,0,2,25,12,88,4,5,3,5,3,5,3,2],i=0,s=[];for(var o=0;o2?r%f!=f-1:r%f==0}}var E=Infinity;w(function(e,t){var n=e.search(/\S/);n!==-1?(ne.length&&(E=e.length)}),u==Infinity&&(u=E,s=!1,o=!1),l&&u%f!=0&&(u=Math.floor(u/f)*f),w(o?m:v)},this.toggleBlockComment=function(e,t,n,r){var i=this.blockComment;if(!i)return;!i.start&&i[0]&&(i=i[0]);var s=new f(t,r.row,r.column),o=s.getCurrentToken(),u=t.selection,a=t.selection.toOrientedRange(),c,h;if(o&&/comment/.test(o.type)){var p,d;while(o&&/comment/.test(o.type)){var v=o.value.indexOf(i.start);if(v!=-1){var m=s.getCurrentTokenRow(),g=s.getCurrentTokenColumn()+v;p=new l(m,g,m,g+i.start.length);break}o=s.stepBackward()}var s=new f(t,r.row,r.column),o=s.getCurrentToken();while(o&&/comment/.test(o.type)){var v=o.value.indexOf(i.end);if(v!=-1){var m=s.getCurrentTokenRow(),g=s.getCurrentTokenColumn()+v;d=new l(m,g,m,g+i.end.length);break}o=s.stepForward()}d&&t.remove(d),p&&(t.remove(p),c=p.start.row,h=-i.start.length)}else h=i.start.length,c=n.start.row,t.insert(n.end,i.end),t.insert(n.start,i.start);a.start.row==c&&(a.start.column+=h),a.end.row==c&&(a.end.column+=h),t.selection.fromOrientedRange(a)},this.getNextLineIndent=function(e,t,n){return this.$getIndent(t)},this.checkOutdent=function(e,t,n){return!1},this.autoOutdent=function(e,t,n){},this.$getIndent=function(e){return e.match(/^\s*/)[0]},this.createWorker=function(e){return null},this.createModeDelegates=function(e){this.$embeds=[],this.$modes={};for(var t in e)if(e[t]){var n=e[t],i=n.prototype.$id,s=r.$modes[i];s||(r.$modes[i]=s=new n),r.$modes[t]||(r.$modes[t]=s),this.$embeds.push(t),this.$modes[t]=s}var o=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],u=function(e){(function(t){var n=o[e],r=t[n];t[o[e]]=function(){return this.$delegator(n,arguments,r)}})(a)},a=this;for(var t=0;tt[n].column&&n++,s.unshift(n,0),t.splice.apply(t,s),this.$updateRows()}},e.prototype.$updateRows=function(){var e=this.session.lineWidgets;if(!e)return;var t=!0;e.forEach(function(e,n){if(e){t=!1,e.row=n;while(e.$oldWidget)e.$oldWidget.row=n,e=e.$oldWidget}}),t&&(this.session.lineWidgets=null)},e.prototype.$registerLineWidget=function(e){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var t=this.session.lineWidgets[e.row];return t&&(e.$oldWidget=t,t.el&&t.el.parentNode&&(t.el.parentNode.removeChild(t.el),t._inDocument=!1)),this.session.lineWidgets[e.row]=e,e},e.prototype.addLineWidget=function(e){this.$registerLineWidget(e),e.session=this.session;if(!this.editor)return e;var t=this.editor.renderer;e.html&&!e.el&&(e.el=r.createElement("div"),e.el.innerHTML=e.html),e.text&&!e.el&&(e.el=r.createElement("div"),e.el.textContent=e.text),e.el&&(r.addCssClass(e.el,"ace_lineWidgetContainer"),e.className&&r.addCssClass(e.el,e.className),e.el.style.position="absolute",e.el.style.zIndex="5",t.container.appendChild(e.el),e._inDocument=!0,e.coverGutter||(e.el.style.zIndex="3"),e.pixelHeight==null&&(e.pixelHeight=e.el.offsetHeight)),e.rowCount==null&&(e.rowCount=e.pixelHeight/t.layerConfig.lineHeight);var n=this.session.getFoldAt(e.row,0);e.$fold=n;if(n){var i=this.session.lineWidgets;e.row==n.end.row&&!i[n.start.row]?i[n.start.row]=e:e.hidden=!0}return this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows(),this.renderWidgets(null,t),this.onWidgetChanged(e),e},e.prototype.removeLineWidget=function(e){e._inDocument=!1,e.session=null,e.el&&e.el.parentNode&&e.el.parentNode.removeChild(e.el);if(e.editor&&e.editor.destroy)try{e.editor.destroy()}catch(t){}if(this.session.lineWidgets){var n=this.session.lineWidgets[e.row];if(n==e)this.session.lineWidgets[e.row]=e.$oldWidget,e.$oldWidget&&this.onWidgetChanged(e.$oldWidget);else while(n){if(n.$oldWidget==e){n.$oldWidget=e.$oldWidget;break}n=n.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows()},e.prototype.getWidgetsAtRow=function(e){var t=this.session.lineWidgets,n=t&&t[e],r=[];while(n)r.push(n),n=n.$oldWidget;return r},e.prototype.onWidgetChanged=function(e){this.session._changedWidgets.push(e),this.editor&&this.editor.renderer.updateFull()},e.prototype.measureWidgets=function(e,t){var n=this.session._changedWidgets,r=t.layerConfig;if(!n||!n.length)return;var i=Infinity;for(var s=0;s0&&!r[i])i--;this.firstRow=n.firstRow,this.lastRow=n.lastRow,t.$cursorLayer.config=n;for(var o=i;o<=s;o++){var u=r[o];if(!u||!u.el)continue;if(u.hidden){u.el.style.top=-100-(u.pixelHeight||0)+"px";continue}u._inDocument||(u._inDocument=!0,t.container.appendChild(u.el));var a=t.$cursorLayer.getPixelPosition({row:o,column:0},!0).top;u.coverLine||(a+=n.lineHeight*this.session.getRowLineCount(u.row)),u.el.style.top=a-n.offset+"px";var f=u.coverGutter?0:t.gutterWidth;u.fixedWidth||(f-=t.scrollLeft),u.el.style.left=f+"px",u.fullWidth&&u.screenWidth&&(u.el.style.minWidth=n.width+2*n.padding+"px"),u.fixedWidth?u.el.style.right=t.scrollBar.getWidth()+"px":u.el.style.right=""}},e}();t.LineWidgets=i}),define("ace/apply_delta",["require","exports","module"],function(e,t,n){"use strict";function r(e,t){throw console.log("Invalid Delta:",e),"Invalid Delta: "+t}function i(e,t){return t.row>=0&&t.row=0&&t.column<=e[t.row].length}function s(e,t){t.action!="insert"&&t.action!="remove"&&r(t,"delta.action must be 'insert' or 'remove'"),t.lines instanceof Array||r(t,"delta.lines must be an Array"),(!t.start||!t.end)&&r(t,"delta.start/end must be an present");var n=t.start;i(e,t.start)||r(t,"delta.start must be contained in document");var s=t.end;t.action=="remove"&&!i(e,s)&&r(t,"delta.end must contained in document for 'remove' actions");var o=s.row-n.row,u=s.column-(o==0?n.column:0);(o!=t.lines.length-1||t.lines[o].length!=u)&&r(t,"delta.range must match delta lines")}t.applyDelta=function(e,t,n){var r=t.start.row,i=t.start.column,s=e[r]||"";switch(t.action){case"insert":var o=t.lines;if(o.length===1)e[r]=s.substring(0,i)+t.lines[0]+s.substring(i);else{var u=[r,1].concat(t.lines);e.splice.apply(e,u),e[r]=s.substring(0,i)+e[r],e[r+t.lines.length-1]+=s.substring(i)}break;case"remove":var a=t.end.column,f=t.end.row;r===f?e[r]=s.substring(0,i)+s.substring(a):e.splice(r,f-r+1,s.substring(0,i)+e[f].substring(a))}}}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"use strict";function o(e,t,n){var r=n?e.column<=t.column:e.columnthis.row)return;var t=u(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(t.row,t.column,!0)},e.prototype.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._signal("change",{old:i,value:r})},e.prototype.detach=function(){this.document.off("change",this.$onChange)},e.prototype.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},e.prototype.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n},e}();s.prototype.$insertRight=!1,r.implement(s.prototype,i),t.Anchor=s}),define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./apply_delta").applyDelta,s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=e("./anchor").Anchor,a=function(){function e(e){this.$lines=[""],e.length===0?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)}return e.prototype.setValue=function(e){var t=this.getLength()-1;this.remove(new o(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e||"")},e.prototype.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},e.prototype.createAnchor=function(e,t){return new u(this,e,t)},e.prototype.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},e.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},e.prototype.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e,this._signal("changeNewLineMode")},e.prototype.getNewLineMode=function(){return this.$newLineMode},e.prototype.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},e.prototype.getLine=function(e){return this.$lines[e]||""},e.prototype.getLines=function(e,t){return this.$lines.slice(e,t+1)},e.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},e.prototype.getLength=function(){return this.$lines.length},e.prototype.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},e.prototype.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{t=this.getLines(e.start.row,e.end.row),t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column))}return t},e.prototype.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},e.prototype.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},e.prototype.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},e.prototype.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},e.prototype.insertInLine=function(e,t){var n=this.clippedPos(e.row,e.column),r=this.pos(e.row,e.column+t.length);return this.applyDelta({start:n,end:r,action:"insert",lines:[t]},!0),this.clonePos(r)},e.prototype.clippedPos=function(e,t){var n=this.getLength();e===undefined?e=n:e<0?e=0:e>=n&&(e=n-1,t=undefined);var r=this.getLine(e);return t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:e,column:t}},e.prototype.clonePos=function(e){return{row:e.row,column:e.column}},e.prototype.pos=function(e,t){return{row:e,column:t}},e.prototype.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},e.prototype.insertFullLines=function(e,t){e=Math.min(Math.max(e,0),this.getLength());var n=0;e0,r=t=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},e.prototype.replace=function(e,t){e instanceof o||(e=o.fromPoints(e.start,e.end));if(t.length===0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);var n;return t?n=this.insert(e.start,t):n=e.start,n},e.prototype.applyDeltas=function(e){for(var t=0;t=0;t--)this.revertDelta(e[t])},e.prototype.applyDelta=function(e,t){var n=e.action=="insert";if(n?e.lines.length<=1&&!e.lines[0]:!o.comparePoints(e.start,e.end))return;n&&e.lines.length>2e4?this.$splitAndapplyLargeDelta(e,2e4):(i(this.$lines,e,t),this._signal("change",e))},e.prototype.$safeApplyDelta=function(e){var t=this.$lines.length;(e.action=="remove"&&e.start.row20){n.running=setTimeout(n.$worker,20);break}}n.currentLine=t,r==-1&&(r=t),s<=r&&n.fireUpdateEvent(s,r)}}return e.prototype.setTokenizer=function(e){this.tokenizer=e,this.lines=[],this.states=[],this.start(0)},e.prototype.setDocument=function(e){this.doc=e,this.lines=[],this.states=[],this.stop()},e.prototype.fireUpdateEvent=function(e,t){var n={first:e,last:t};this._signal("update",{data:n})},e.prototype.start=function(e){this.currentLine=Math.min(e||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},e.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},e.prototype.$updateOnChange=function(e){var t=e.start.row,n=e.end.row-t;if(n===0)this.lines[t]=null;else if(e.action=="remove")this.lines.splice(t,n+1,null),this.states.splice(t,n+1,null);else{var r=Array(n+1);r.unshift(t,1),this.lines.splice.apply(this.lines,r),this.states.splice.apply(this.states,r)}this.currentLine=Math.min(t,this.currentLine,this.doc.getLength()),this.stop()},e.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},e.prototype.getTokens=function(e){return this.lines[e]||this.$tokenizeRow(e)},e.prototype.getState=function(e){return this.currentLine==e&&this.$tokenizeRow(e),this.states[e]||"start"},e.prototype.$tokenizeRow=function(e){var t=this.doc.getLine(e),n=this.states[e-1],r=this.tokenizer.getLineTokens(t,n,e);return this.states[e]+""!=r.state+""?(this.states[e]=r.state,this.lines[e+1]=null,this.currentLine>e+1&&(this.currentLine=e+1)):this.currentLine==e&&(this.currentLine=e+1),this.lines[e]=r.tokens},e.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},e}();r.implement(s.prototype,i),t.BackgroundTokenizer=s}),define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(e,t,n){"use strict";var r=e("./lib/lang"),i=e("./range").Range,s=function(){function e(e,t,n){n===void 0&&(n="text"),this.setRegexp(e),this.clazz=t,this.type=n,this.docLen=0}return e.prototype.setRegexp=function(e){if(this.regExp+""==e+"")return;this.regExp=e,this.cache=[]},e.prototype.update=function(e,t,n,s){if(!this.regExp)return;var o=s.firstRow,u=s.lastRow,a={},f=n.$editor&&n.$editor.$search,l=f&&f.$isMultilineSearch(n.$editor.getLastSearchOptions()),c=n.getValue().length,h=c!=this.docLen;for(var p=o;p<=u;p++){var d=this.cache[p];if(d==null||h){if(l){d=[];var v=f.$multiLineForward(n,this.regExp,p,u);if(v){var m=v.endRow<=u?v.endRow-1:u;m>p&&(p=m),d.push(new i(v.startRow,v.startCol,v.endRow,v.endCol))}d.length>this.MAX_RANGES&&(d=d.slice(0,this.MAX_RANGES))}else d=r.getMatchOffsets(n.getLine(p),this.regExp),d.length>this.MAX_RANGES&&(d=d.slice(0,this.MAX_RANGES)),d=d.map(function(e){return new i(p,e.offset,p,e.offset+e.length)});this.cache[p]=d.length?d:""}if(d.length===0)continue;for(var g=d.length;g--;){var y=d[g].toScreenRange(n),b=y.toString();if(a[b])continue;a[b]=!0,t.drawSingleLineMarker(e,y,this.clazz,s)}}this.docLen=c},e}();s.prototype.MAX_RANGES=500,t.SearchHighlight=s}),define("ace/undomanager",["require","exports","module","ace/range"],function(e,t,n){"use strict";function i(e,t){for(var n=t;n--;){var r=e[n];if(r&&!r[0].ignore){while(n0){a.row+=i,a.column+=a.row==r.row?s:0;continue}!t&&l<=0&&(a.row=n.row,a.column=n.column,l===0&&(a.bias=1))}}function f(e){return{row:e.row,column:e.column}}function l(e){return{start:f(e.start),end:f(e.end),action:e.action,lines:e.lines.slice()}}function c(e){e=e||this;if(Array.isArray(e))return e.map(c).join("\n");var t="";e.action?(t=e.action=="insert"?"+":"-",t+="["+e.lines+"]"):e.value&&(Array.isArray(e.value)?t=e.value.map(h).join("\n"):t=h(e.value)),e.start&&(t+=h(e));if(e.id||e.rev)t+=" ("+(e.id||e.rev)+")";return t}function h(e){return e.start.row+":"+e.start.column+"=>"+e.end.row+":"+e.end.column}function p(e,t){var n=e.action=="insert",r=t.action=="insert";if(n&&r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.start,e.start)<=0))return null;m(e,t,1)}else if(n&&!r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.end,e.start)<=0))return null;m(e,t,-1)}else if(!n&&r)if(o(t.start,e.start)>=0)m(t,e,1);else{if(!(o(t.start,e.start)<=0))return null;m(e,t,1)}else if(!n&&!r)if(o(t.start,e.start)>=0)m(t,e,1);else{if(!(o(t.end,e.start)<=0))return null;m(e,t,-1)}return[t,e]}function d(e,t){for(var n=e.length;n--;)for(var r=0;r=0?m(e,t,-1):o(e.start,t.start)<=0?m(t,e,1):(m(e,s.fromPoints(t.start,e.start),-1),m(t,e,1));else if(!n&&r)o(t.start,e.end)>=0?m(t,e,-1):o(t.start,e.start)<=0?m(e,t,1):(m(t,s.fromPoints(e.start,t.start),-1),m(e,t,1));else if(!n&&!r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.end,e.start)<=0)){var i,u;return o(e.start,t.start)<0&&(i=e,e=y(e,t.start)),o(e.end,t.end)>0&&(u=y(e,t.end)),g(t.end,e.start,e.end,-1),u&&!i&&(e.lines=u.lines,e.start=u.start,e.end=u.end,u=e),[t,i,u].filter(Boolean)}m(e,t,-1)}return[t,e]}function m(e,t,n){g(e.start,t.start,t.end,n),g(e.end,t.start,t.end,n)}function g(e,t,n,r){e.row==(r==1?t:n).row&&(e.column+=r*(n.column-t.column)),e.row+=r*(n.row-t.row)}function y(e,t){var n=e.lines,r=e.end;e.end=f(t);var i=e.end.row-e.start.row,s=n.splice(i,n.length),o=i?t.column:t.column-e.start.column;n.push(s[0].substring(0,o)),s[0]=s[0].substr(o);var u={start:f(t),end:r,lines:s,action:e.action};return u}function b(e,t){t=l(t);for(var n=e.length;n--;){var r=e[n];for(var i=0;ithis.$undoDepth-1&&this.$undoStack.splice(0,r-this.$undoDepth+1),this.$undoStack.push(this.lastDeltas),e.id=this.$rev=++this.$maxRev}if(e.action=="remove"||e.action=="insert")this.$lastDelta=e;this.lastDeltas.push(e)},e.prototype.addSelection=function(e,t){this.selections.push({value:e,rev:t||this.$rev})},e.prototype.startNewGroup=function(){return this.lastDeltas=null,this.$rev},e.prototype.markIgnored=function(e,t){t==null&&(t=this.$rev+1);var n=this.$undoStack;for(var r=n.length;r--;){var i=n[r][0];if(i.id<=e)break;i.id0},e.prototype.canRedo=function(){return this.$redoStack.length>0},e.prototype.bookmark=function(e){e==undefined&&(e=this.$rev),this.mark=e},e.prototype.isAtBookmark=function(){return this.$rev===this.mark},e.prototype.toJSON=function(){return{$redoStack:this.$redoStack,$undoStack:this.$undoStack}},e.prototype.fromJSON=function(e){this.reset();if(!e)return;this.$undoStack=e.$undoStack||[],this.$redoStack=e.$redoStack||[]},e.prototype.$prettyPrint=function(e){return e?c(e):c(this.$undoStack)+"\n---\n"+c(this.$redoStack)},e}();r.prototype.hasUndo=r.prototype.canUndo,r.prototype.hasRedo=r.prototype.canRedo,r.prototype.isClean=r.prototype.isAtBookmark,r.prototype.markClean=r.prototype.bookmark;var s=e("./range").Range,o=s.comparePoints,u=s.comparePoints;t.UndoManager=r}),define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){function e(e,t){this.foldData=e,Array.isArray(t)?this.folds=t:t=this.folds=[t];var n=t[t.length-1];this.range=new r(t[0].start.row,t[0].start.column,n.end.row,n.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(e){e.setFoldLine(this)},this)}return e.prototype.shiftRow=function(e){this.start.row+=e,this.end.row+=e,this.folds.forEach(function(t){t.start.row+=e,t.end.row+=e})},e.prototype.addFold=function(e){if(e.sameRow){if(e.start.rowthis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(e),this.folds.sort(function(e,t){return-e.range.compareEnd(t.start.row,t.start.column)}),this.range.compareEnd(e.start.row,e.start.column)>0?(this.end.row=e.end.row,this.end.column=e.end.column):this.range.compareStart(e.end.row,e.end.column)<0&&(this.start.row=e.start.row,this.start.column=e.start.column)}else if(e.start.row==this.end.row)this.folds.push(e),this.end.row=e.end.row,this.end.column=e.end.column;else{if(e.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(e),this.start.row=e.start.row,this.start.column=e.start.column}e.foldLine=this},e.prototype.containsRow=function(e){return e>=this.start.row&&e<=this.end.row},e.prototype.walk=function(e,t,n){var r=0,i=this.folds,s,o,u,a=!0;t==null&&(t=this.end.row,n=this.end.column);for(var f=0;f0)continue;var a=i(e,o.start);return u===0?t&&a!==0?-s-2:s:a>0||a===0&&!t?s:-s-1}return-s-1},e.prototype.add=function(e){var t=!e.isEmpty(),n=this.pointIndex(e.start,t);n<0&&(n=-n-1);var r=this.pointIndex(e.end,t,n);return r<0?r=-r-1:r++,this.ranges.splice(n,r-n,e)},e.prototype.addList=function(e){var t=[];for(var n=e.length;n--;)t.push.apply(t,this.add(e[n]));return t},e.prototype.substractPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges.splice(t,1)},e.prototype.merge=function(){var e=[],t=this.ranges;t=t.sort(function(e,t){return i(e.start,t.start)});var n=t[0],r;for(var s=1;s=0},e.prototype.containsPoint=function(e){return this.pointIndex(e)>=0},e.prototype.rangeAtPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges[t]},e.prototype.clipRows=function(e,t){var n=this.ranges;if(n[0].start.row>t||n[n.length-1].start.row=r)break}if(e.action=="insert"){var f=i-r,l=-t.column+n.column;for(;or)break;a.start.row==r&&a.start.column>=t.column&&(a.start.column==t.column&&this.$bias<=0||(a.start.column+=l,a.start.row+=f));if(a.end.row==r&&a.end.column>=t.column){if(a.end.column==t.column&&this.$bias<0)continue;a.end.column==t.column&&l>0&&oa.start.column&&a.end.column==s[o+1].start.column&&(a.end.column-=l),a.end.column+=l,a.end.row+=f}}}else{var f=r-i,l=t.column-n.column;for(;oi)break;if(a.end.rowt.column)a.end.column=t.column,a.end.row=t.row}else a.end.column+=l,a.end.row+=f;else a.end.row>i&&(a.end.row+=f);if(a.start.rowt.column)a.start.column=t.column,a.start.row=t.row}else a.start.column+=l,a.start.row+=f;else a.start.row>i&&(a.start.row+=f)}}if(f!=0&&o=e)return i;if(i.end.row>e)return null}return null},this.getNextFoldLine=function(e,t){var n=this.$foldData,r=0;t&&(r=n.indexOf(t)),r==-1&&(r=0);for(r;r=e)return i}return null},this.getFoldedRowCount=function(e,t){var n=this.$foldData,r=t-e+1;for(var i=0;i=t){u=e?r-=t-u:r=0);break}o>=e&&(u>=e?r-=o-u:r-=o-e+1)}return r},this.$addFoldLine=function(e){return this.$foldData.push(e),this.$foldData.sort(function(e,t){return e.start.row-t.start.row}),e},this.addFold=function(e,t){var n=this.$foldData,r=!1,o;e instanceof s?o=e:(o=new s(t,e),o.collapseChildren=t.collapseChildren),this.$clipRangeToDocument(o.range);var u=o.start.row,a=o.start.column,f=o.end.row,l=o.end.column,c=this.getFoldAt(u,a,1),h=this.getFoldAt(f,l,-1);if(c&&h==c)return c.addSubFold(o);c&&!c.range.isStart(u,a)&&this.removeFold(c),h&&!h.range.isEnd(f,l)&&this.removeFold(h);var p=this.getFoldsInRange(o.range);p.length>0&&(this.removeFolds(p),o.collapseChildren||p.forEach(function(e){o.addSubFold(e)}));for(var d=0;d0&&this.foldAll(e.start.row+1,e.end.row,e.collapseChildren-1),e.subFolds=[]},this.expandFolds=function(e){e.forEach(function(e){this.expandFold(e)},this)},this.unfold=function(e,t){var n,i;if(e==null)n=new r(0,0,this.getLength(),0),t==null&&(t=!0);else if(typeof e=="number")n=new r(e,0,e,this.getLine(e).length);else if("row"in e)n=r.fromPoints(e,e);else{if(Array.isArray(e))return i=[],e.forEach(function(e){i=i.concat(this.unfold(e))},this),i;n=e}i=this.getFoldsInRangeList(n);var s=i;while(i.length==1&&r.comparePoints(i[0].start,n.start)<0&&r.comparePoints(i[0].end,n.end)>0)this.expandFolds(i),i=this.getFoldsInRangeList(n);t!=0?this.removeFolds(i):this.expandFolds(i);if(s.length)return s},this.isRowFolded=function(e,t){return!!this.getFoldLine(e,t)},this.getRowFoldEnd=function(e,t){var n=this.getFoldLine(e,t);return n?n.end.row:e},this.getRowFoldStart=function(e,t){var n=this.getFoldLine(e,t);return n?n.start.row:e},this.getFoldDisplayLine=function(e,t,n,r,i){r==null&&(r=e.start.row),i==null&&(i=0),t==null&&(t=e.end.row),n==null&&(n=this.getLine(t).length);var s=this.doc,o="";return e.walk(function(e,t,n,u){if(tc)break}while(s&&a.test(s.type));s=i.stepBackward()}else s=i.getCurrentToken();f.end.row=i.getCurrentTokenRow(),f.end.column=i.getCurrentTokenColumn();if(f.start.row==f.end.row&&f.start.column>f.end.column)return;return f}},this.foldAll=function(e,t,n,r){n==undefined&&(n=1e5);var i=this.foldWidgets;if(!i)return;t=t||this.getLength(),e=e||0;for(var s=e;s=e&&(s=o.end.row,o.collapseChildren=n,this.addFold("...",o))}},this.foldToLevel=function(e){this.foldAll();while(e-->0)this.unfold(null,!1)},this.foldAllComments=function(){var e=this;this.foldAll(null,null,null,function(t){var n=e.getTokens(t);for(var r=0;r=0){var s=n[r];s==null&&(s=n[r]=this.getFoldWidget(r));if(s=="start"){var o=this.getFoldWidgetRange(r);i||(i=o);if(o&&o.end.row>=e)break}r--}return{range:r!==-1&&o,firstRange:i}},this.onFoldWidgetClick=function(e,t){t instanceof u&&(t=t.domEvent);var n={children:t.shiftKey,all:t.ctrlKey||t.metaKey,siblings:t.altKey},r=this.$toggleFoldWidget(e,n);if(!r){var i=t.target||t.srcElement;i&&/ace_fold-widget/.test(i.className)&&(i.className+=" ace_invalid")}},this.$toggleFoldWidget=function(e,t){if(!this.getFoldWidget)return;var n=this.getFoldWidget(e),r=this.getLine(e),i=n==="end"?-1:1,s=this.getFoldAt(e,i===-1?0:r.length,i);if(s)return t.children||t.all?this.removeFold(s):this.expandFold(s),s;var o=this.getFoldWidgetRange(e,!0);if(o&&!o.isMultiLine()){s=this.getFoldAt(o.start.row,o.start.column,1);if(s&&o.isEqual(s.range))return this.removeFold(s),s}if(t.siblings){var u=this.getParentFoldRangeData(e);if(u.range)var a=u.range.start.row+1,f=u.range.end.row;this.foldAll(a,f,t.all?1e4:0)}else t.children?(f=o?o.end.row:this.getLength(),this.foldAll(e+1,f,t.all?1e4:0)):o&&(t.all&&(o.collapseChildren=1e4),this.addFold("...",o));return o},this.toggleFoldWidget=function(e){var t=this.selection.getCursor().row;t=this.getRowFoldStart(t);var n=this.$toggleFoldWidget(t,{});if(n)return;var r=this.getParentFoldRangeData(t,!0);n=r.range||r.firstRange;if(n){t=n.start.row;var i=this.getFoldAt(t,this.getLine(t).length,1);i?this.removeFold(i):this.addFold("...",n)}},this.updateFoldWidgets=function(e){var t=e.start.row,n=e.end.row-t;if(n===0)this.foldWidgets[t]=null;else if(e.action=="remove")this.foldWidgets.splice(t,n+1,null);else{var r=Array(n+1);r.unshift(t,1),this.foldWidgets.splice.apply(this.foldWidgets,r)}},this.tokenizerUpdateFoldWidgets=function(e){var t=e.data;t.first!=t.last&&this.foldWidgets.length>t.first&&this.foldWidgets.splice(t.first,this.foldWidgets.length)}}var r=e("../range").Range,i=e("./fold_line").FoldLine,s=e("./fold").Fold,o=e("../token_iterator").TokenIterator,u=e("../mouse/mouse_event").MouseEvent;t.Folding=a}),define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,t,n){"use strict";function s(){this.findMatchingBracket=function(e,t){if(e.column==0)return null;var n=t||this.getLine(e.row).charAt(e.column-1);if(n=="")return null;var r=n.match(/([\(\[\{])|([\)\]\}])/);return r?r[1]?this.$findClosingBracket(r[1],e):this.$findOpeningBracket(r[2],e):null},this.getBracketRange=function(e){var t=this.getLine(e.row),n=!0,r,s=t.charAt(e.column-1),o=s&&s.match(/([\(\[\{])|([\)\]\}])/);o||(s=t.charAt(e.column),e={row:e.row,column:e.column+1},o=s&&s.match(/([\(\[\{])|([\)\]\}])/),n=!1);if(!o)return null;if(o[1]){var u=this.$findClosingBracket(o[1],e);if(!u)return null;r=i.fromPoints(e,u),n||(r.end.column++,r.start.column--),r.cursor=r.end}else{var u=this.$findOpeningBracket(o[2],e);if(!u)return null;r=i.fromPoints(u,e),n||(r.start.column++,r.end.column--),r.cursor=r.start}return r},this.getMatchingBracketRanges=function(e,t){var n=this.getLine(e.row),r=/([\(\[\{])|([\)\]\}])/,s=!t&&n.charAt(e.column-1),o=s&&s.match(r);o||(s=(t===undefined||t)&&n.charAt(e.column),e={row:e.row,column:e.column+1},o=s&&s.match(r));if(!o)return null;var u=new i(e.row,e.column-1,e.row,e.column),a=o[1]?this.$findClosingBracket(o[1],e):this.$findOpeningBracket(o[2],e);if(!a)return[u];var f=new i(a.row,a.column,a.row,a.column+1);return[u,f]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(e,t,n){var i=this.$brackets[e],s=1,o=new r(this,t.row,t.column),u=o.getCurrentToken();u||(u=o.stepForward());if(!u)return;n||(n=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)").replace(/-close\b/,"-(close|open)")+")+"));var a=t.column-o.getCurrentTokenColumn()-2,f=u.value;for(;;){while(a>=0){var l=f.charAt(a);if(l==i){s-=1;if(s==0)return{row:o.getCurrentTokenRow(),column:a+o.getCurrentTokenColumn()}}else l==e&&(s+=1);a-=1}do u=o.stepBackward();while(u&&!n.test(u.type));if(u==null)break;f=u.value,a=f.length-1}return null},this.$findClosingBracket=function(e,t,n){var i=this.$brackets[e],s=1,o=new r(this,t.row,t.column),u=o.getCurrentToken();u||(u=o.stepForward());if(!u)return;n||(n=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)").replace(/-open\b/,"-(close|open)")+")+"));var a=t.column-o.getCurrentTokenColumn();for(;;){var f=u.value,l=f.length;while(a"?r=!0:t.type.indexOf("tag-name")!==-1&&(n=!0));while(t&&!n);return t},this.$findClosingTag=function(e,t){var n,r=t.value,s=t.value,o=0,u=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);t=e.stepForward();var a=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+t.value.length),f=!1;do{n=t;if(n.type.indexOf("tag-close")!==-1&&!f){var l=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);f=!0}t=e.stepForward();if(t){if(t.value===">"&&!f){var l=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);f=!0}if(t.type.indexOf("tag-name")!==-1){r=t.value;if(s===r)if(n.value==="<")o++;else if(n.value==="")return;var p=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1)}}}else if(s===r&&t.value==="/>"){o--;if(o<0)var c=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+2),h=c,p=h,l=new i(a.end.row,a.end.column,a.end.row,a.end.column+1)}}}while(t&&o>=0);if(u&&l&&c&&p&&a&&h)return{openTag:new i(u.start.row,u.start.column,l.end.row,l.end.column),closeTag:new i(c.start.row,c.start.column,p.end.row,p.end.column),openTagName:a,closeTagName:h}},this.$findOpeningTag=function(e,t){var n=e.getCurrentToken(),r=t.value,s=0,o=e.getCurrentTokenRow(),u=e.getCurrentTokenColumn(),a=u+2,f=new i(o,u,o,a);e.stepForward();var l=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+t.value.length);t.type.indexOf("tag-close")===-1&&(t=e.stepForward());if(!t||t.value!==">")return;var c=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);e.stepBackward(),e.stepBackward();do{t=n,o=e.getCurrentTokenRow(),u=e.getCurrentTokenColumn(),a=u+t.value.length,n=e.stepBackward();if(t)if(t.type.indexOf("tag-name")!==-1){if(r===t.value)if(n.value==="<"){s++;if(s>0){var h=new i(o,u,o,a),p=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);do t=e.stepForward();while(t&&t.value!==">");var d=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1)}}else n.value===""){var v=0,m=n;while(m){if(m.type.indexOf("tag-name")!==-1&&m.value===r){s--;break}if(m.value==="<")break;m=e.stepBackward(),v++}for(var g=0;g=4352&&e<=4447||e>=4515&&e<=4519||e>=4602&&e<=4607||e>=9001&&e<=9002||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12283||e>=12288&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12589||e>=12593&&e<=12686||e>=12688&&e<=12730||e>=12736&&e<=12771||e>=12784&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=13054||e>=13056&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=55216&&e<=55238||e>=55243&&e<=55291||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=65281&&e<=65376||e>=65504&&e<=65510}var r=e("./lib/oop"),i=e("./lib/lang"),s=e("./bidihandler").BidiHandler,o=e("./config"),u=e("./lib/event_emitter").EventEmitter,a=e("./selection").Selection,f=e("./mode/text").Mode,l=e("./range").Range,c=e("./line_widgets").LineWidgets,h=e("./document").Document,p=e("./background_tokenizer").BackgroundTokenizer,d=e("./search_highlight").SearchHighlight,v=e("./undomanager").UndoManager,m=function(){function e(t,n){this.doc,this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$editor=null,this.prevOp={},this.$foldData=[],this.id="session"+ ++e.$uid,this.$foldData.toString=function(){return this.join("\n")},this.$gutterCustomWidgets={},this.bgTokenizer=new p((new f).getTokenizer(),this);var r=this;this.bgTokenizer.on("update",function(e){r._signal("tokenizerUpdate",e)}),this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this);if(typeof t!="object"||!t.getLine)t=new h(t);this.setDocument(t),this.selection=new a(this),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.selection.on("changeCursor",this.$onSelectionChange),this.$bidiHandler=new s(this),o.resetOptions(this),this.setMode(n),o._signal("session",this),this.destroyed=!1,this.$initOperationListeners()}return e.prototype.$initOperationListeners=function(){var e=this;this.curOp=null,this.on("change",function(){e.curOp||(e.startOperation(),e.curOp.selectionBefore=e.$lastSel),e.curOp.docChanged=!0},!0),this.on("changeSelection",function(){e.curOp||(e.startOperation(),e.curOp.selectionBefore=e.$lastSel),e.curOp.selectionChanged=!0},!0),this.$operationResetTimer=i.delayedCall(this.endOperation.bind(this,!0))},e.prototype.startOperation=function(e){if(this.curOp){if(!e||this.curOp.command)return;this.prevOp=this.curOp}e||(e={}),this.$operationResetTimer.schedule(),this.curOp={command:e.command||{},args:e.args},this.curOp.selectionBefore=this.selection.toJSON(),this._signal("startOperation",e)},e.prototype.endOperation=function(e){if(this.curOp){if(e&&e.returnValue===!1){this.curOp=null,this._signal("endOperation",e);return}if(e==1&&this.curOp.command&&this.curOp.command.name=="mouse")return;var t=this.selection.toJSON();this.curOp.selectionAfter=t,this.$lastSel=this.selection.toJSON(),this.getUndoManager().addSelection(t),this._signal("beforeEndOperation"),this.prevOp=this.curOp,this.curOp=null,this._signal("endOperation",e)}},e.prototype.setDocument=function(e){this.doc&&this.doc.off("change",this.$onChange),this.doc=e,e.on("change",this.$onChange,!0),this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},e.prototype.getDocument=function(){return this.doc},Object.defineProperty(e.prototype,"widgetManager",{get:function(){var e=new c(this);return this.widgetManager=e,this.$editor&&e.attach(this.$editor),e},set:function(e){Object.defineProperty(this,"widgetManager",{writable:!0,enumerable:!0,configurable:!0,value:e})},enumerable:!1,configurable:!0}),e.prototype.$resetRowCache=function(e){if(!e){this.$docRowCache=[],this.$screenRowCache=[];return}var t=this.$docRowCache.length,n=this.$getRowCacheIndex(this.$docRowCache,e)+1;t>n&&(this.$docRowCache.splice(n,t),this.$screenRowCache.splice(n,t))},e.prototype.$getRowCacheIndex=function(e,t){var n=0,r=e.length-1;while(n<=r){var i=n+r>>1,s=e[i];if(t>s)n=i+1;else{if(!(t=t)break}return r=n[s],r?(r.index=s,r.start=i-r.value.length,r):null},e.prototype.setUndoManager=function(e){this.$undoManager=e,this.$informUndoManager&&this.$informUndoManager.cancel();if(e){var t=this;e.addSession(this),this.$syncInformUndoManager=function(){t.$informUndoManager.cancel(),t.mergeUndoDeltas=!1},this.$informUndoManager=i.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},e.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},e.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},e.prototype.getTabString=function(){return this.getUseSoftTabs()?i.stringRepeat(" ",this.getTabSize()):" "},e.prototype.setUseSoftTabs=function(e){this.setOption("useSoftTabs",e)},e.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},e.prototype.setTabSize=function(e){this.setOption("tabSize",e)},e.prototype.getTabSize=function(){return this.$tabSize},e.prototype.isTabStop=function(e){return this.$useSoftTabs&&e.column%this.$tabSize===0},e.prototype.setNavigateWithinSoftTabs=function(e){this.setOption("navigateWithinSoftTabs",e)},e.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},e.prototype.setOverwrite=function(e){this.setOption("overwrite",e)},e.prototype.getOverwrite=function(){return this.$overwrite},e.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},e.prototype.addGutterDecoration=function(e,t){this.$decorations[e]||(this.$decorations[e]=""),this.$decorations[e]+=" "+t,this._signal("changeBreakpoint",{})},e.prototype.removeGutterCustomWidget=function(e){this.$editor&&this.$editor.renderer.$gutterLayer.$removeCustomWidget(e)},e.prototype.addGutterCustomWidget=function(e,t){this.$editor&&this.$editor.renderer.$gutterLayer.$addCustomWidget(e,t)},e.prototype.removeGutterDecoration=function(e,t){this.$decorations[e]=(this.$decorations[e]||"").replace(" "+t,""),this._signal("changeBreakpoint",{})},e.prototype.getBreakpoints=function(){return this.$breakpoints},e.prototype.setBreakpoints=function(e){this.$breakpoints=[];for(var t=0;t0&&(r=!!n.charAt(t-1).match(this.tokenRe)),r||(r=!!n.charAt(t).match(this.tokenRe));if(r)var i=this.tokenRe;else if(/^\s+$/.test(n.slice(t-1,t+1)))var i=/\s/;else var i=this.nonTokenRe;var s=t;if(s>0){do s--;while(s>=0&&n.charAt(s).match(i));s++}var o=t;while(oe&&(e=t.screenWidth)}),this.lineWidgetWidth=e},e.prototype.$computeWidth=function(e){if(this.$modified||e){this.$modified=!1;if(this.$useWrapMode)return this.screenWidth=this.$wrapLimit;var t=this.doc.getAllLines(),n=this.$rowLengthCache,r=0,i=0,s=this.$foldData[i],o=s?s.start.row:Infinity,u=t.length;for(var a=0;ao){a=s.end.row+1;if(a>=u)break;s=this.$foldData[i++],o=s?s.start.row:Infinity}n[a]==null&&(n[a]=this.$getStringScreenWidth(t[a])[0]),n[a]>r&&(r=n[a])}this.screenWidth=r}},e.prototype.getLine=function(e){return this.doc.getLine(e)},e.prototype.getLines=function(e,t){return this.doc.getLines(e,t)},e.prototype.getLength=function(){return this.doc.getLength()},e.prototype.getTextRange=function(e){return this.doc.getTextRange(e||this.selection.getRange())},e.prototype.insert=function(e,t){return this.doc.insert(e,t)},e.prototype.remove=function(e){return this.doc.remove(e)},e.prototype.removeFullLines=function(e,t){return this.doc.removeFullLines(e,t)},e.prototype.undoChanges=function(e,t){if(!e.length)return;this.$fromUndo=!0;for(var n=e.length-1;n!=-1;n--){var r=e[n];r.action=="insert"||r.action=="remove"?this.doc.revertDelta(r):r.folds&&this.addFolds(r.folds)}!t&&this.$undoSelect&&(e.selectionBefore?this.selection.fromJSON(e.selectionBefore):this.selection.setRange(this.$getUndoSelection(e,!0))),this.$fromUndo=!1},e.prototype.redoChanges=function(e,t){if(!e.length)return;this.$fromUndo=!0;for(var n=0;ne.end.column&&(s.start.column+=u),s.end.row==e.end.row&&s.end.column>e.end.column&&(s.end.column+=u)),o&&s.start.row>=e.end.row&&(s.start.row+=o,s.end.row+=o)}s.end=this.insert(s.start,r);if(i.length){var a=e.start,f=s.start,o=f.row-a.row,u=f.column-a.column;this.addFolds(i.map(function(e){return e=e.clone(),e.start.row==a.row&&(e.start.column+=u),e.end.row==a.row&&(e.end.column+=u),e.start.row+=o,e.end.row+=o,e}))}return s},e.prototype.indentRows=function(e,t,n){n=n.replace(/\t/g,this.getTabString());for(var r=e;r<=t;r++)this.doc.insertInLine({row:r,column:0},n)},e.prototype.outdentRows=function(e){var t=e.collapseRows(),n=new l(0,0,0,0),r=this.getTabSize();for(var i=t.start.row;i<=t.end.row;++i){var s=this.getLine(i);n.start.row=i,n.end.row=i;for(var o=0;o0){var r=this.getRowFoldEnd(t+n);if(r>this.doc.getLength()-1)return 0;var i=r-t}else{e=this.$clipRowToDocument(e),t=this.$clipRowToDocument(t);var i=t-e+1}var s=new l(e,0,t,Number.MAX_VALUE),o=this.getFoldsInRange(s).map(function(e){return e=e.clone(),e.start.row+=i,e.end.row+=i,e}),u=n==0?this.doc.getLines(e,t):this.doc.removeFullLines(e,t);return this.doc.insertFullLines(e+i,u),o.length&&this.addFolds(o),i},e.prototype.moveLinesUp=function(e,t){return this.$moveLines(e,t,-1)},e.prototype.moveLinesDown=function(e,t){return this.$moveLines(e,t,1)},e.prototype.duplicateLines=function(e,t){return this.$moveLines(e,t,0)},e.prototype.$clipRowToDocument=function(e){return Math.max(0,Math.min(e,this.doc.getLength()-1))},e.prototype.$clipColumnToRow=function(e,t){return t<0?0:Math.min(this.doc.getLine(e).length,t)},e.prototype.$clipPositionToDocument=function(e,t){t=Math.max(0,t);if(e<0)e=0,t=0;else{var n=this.doc.getLength();e>=n?(e=n-1,t=this.doc.getLine(n-1).length):t=Math.min(this.doc.getLine(e).length,t)}return{row:e,column:t}},e.prototype.$clipRangeToDocument=function(e){e.start.row<0?(e.start.row=0,e.start.column=0):e.start.column=this.$clipColumnToRow(e.start.row,e.start.column);var t=this.doc.getLength()-1;return e.end.row>t?(e.end.row=t,e.end.column=this.doc.getLine(t).length):e.end.column=this.$clipColumnToRow(e.end.row,e.end.column),e},e.prototype.setUseWrapMode=function(e){if(e!=this.$useWrapMode){this.$useWrapMode=e,this.$modified=!0,this.$resetRowCache(0);if(e){var t=this.getLength();this.$wrapData=Array(t),this.$updateWrapData(0,t-1)}this._signal("changeWrapMode")}},e.prototype.getUseWrapMode=function(){return this.$useWrapMode},e.prototype.setWrapLimitRange=function(e,t){if(this.$wrapLimitRange.min!==e||this.$wrapLimitRange.max!==t)this.$wrapLimitRange={min:e,max:t},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode")},e.prototype.adjustWrapLimit=function(e,t){var n=this.$wrapLimitRange;n.max<0&&(n={min:t,max:t});var r=this.$constrainWrapLimit(e,n.min,n.max);return r!=this.$wrapLimit&&r>1?(this.$wrapLimit=r,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},e.prototype.$constrainWrapLimit=function(e,t,n){return t&&(e=Math.max(t,e)),n&&(e=Math.min(n,e)),e},e.prototype.getWrapLimit=function(){return this.$wrapLimit},e.prototype.setWrapLimit=function(e){this.setWrapLimitRange(e,e)},e.prototype.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},e.prototype.$updateInternalDataOnChange=function(e){var t=this.$useWrapMode,n=e.action,r=e.start,i=e.end,s=r.row,o=i.row,u=o-s,a=null;this.$updating=!0;if(u!=0)if(n==="remove"){this[t?"$wrapData":"$rowLengthCache"].splice(s,u);var f=this.$foldData;a=this.getFoldsInRange(e),this.removeFolds(a);var l=this.getFoldLine(i.row),c=0;if(l){l.addRemoveChars(i.row,i.column,r.column-i.column),l.shiftRow(-u);var h=this.getFoldLine(s);h&&h!==l&&(h.merge(l),l=h),c=f.indexOf(l)+1}for(c;c=i.row&&l.shiftRow(-u)}o=s}else{var p=Array(u);p.unshift(s,0);var d=t?this.$wrapData:this.$rowLengthCache;d.splice.apply(d,p);var f=this.$foldData,l=this.getFoldLine(s),c=0;if(l){var v=l.range.compareInside(r.row,r.column);v==0?(l=l.split(r.row,r.column),l&&(l.shiftRow(u),l.addRemoveChars(o,0,i.column-r.column))):v==-1&&(l.addRemoveChars(s,0,i.column-r.column),l.shiftRow(u)),c=f.indexOf(l)+1}for(c;c=s&&l.shiftRow(u)}}else{u=Math.abs(e.start.column-e.end.column),n==="remove"&&(a=this.getFoldsInRange(e),this.removeFolds(a),u=-u);var l=this.getFoldLine(s);l&&l.addRemoveChars(s,r.column,u)}return t&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,t?this.$updateWrapData(s,o):this.$updateRowLengthCache(s,o),a},e.prototype.$updateRowLengthCache=function(e,t){this.$rowLengthCache[e]=null,this.$rowLengthCache[t]=null},e.prototype.$updateWrapData=function(e,t){var n=this.doc.getAllLines(),r=this.getTabSize(),i=this.$wrapData,s=this.$wrapLimit,o,u,a=e;t=Math.min(t,n.length-1);while(a<=t)u=this.getFoldLine(a,u),u?(o=[],u.walk(function(e,t,r,i){var s;if(e!=null){s=this.$getDisplayTokens(e,o.length),s[0]=b;for(var u=1;ut-h){var p=s+t-h;if(e[p-1]>=S&&e[p]>=S){c(p);continue}if(e[p]==b||e[p]==w){for(p;p!=s-1;p--)if(e[p]==b)break;if(p>s){c(p);continue}p=s+t;for(p;p>2)),s-1);while(p>d&&e[p]d&&e[p]d&&e[p]==E)p--}else while(p>d&&e[p]d){c(++p);continue}p=s+t,e[p]==y&&p--,c(p-h)}return r},e.prototype.$getDisplayTokens=function(e,t){var n=[],r;t=t||0;for(var i=0;i39&&s<48||s>57&&s<64?n.push(E):s>=4352&&N(s)?n.push(g,y):n.push(g)}return n},e.prototype.$getStringScreenWidth=function(e,t,n){if(t==0)return[0,0];t==null&&(t=Infinity),n=n||0;var r,i;for(i=0;it)break}return[n,i]},e.prototype.getRowLength=function(e){var t=1;return this.lineWidgets&&(t+=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0),!this.$useWrapMode||!this.$wrapData[e]?t:this.$wrapData[e].length+t},e.prototype.getRowLineCount=function(e){return!this.$useWrapMode||!this.$wrapData[e]?1:this.$wrapData[e].length+1},e.prototype.getRowWrapIndent=function(e){if(this.$useWrapMode){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE),n=this.$wrapData[t.row];return n.length&&n[0]=0)var o=a[f],r=this.$docRowCache[f],c=e>a[l-1];else var c=!l;var h=this.getLength()-1,p=this.getNextFoldLine(r),d=p?p.start.row:Infinity;while(o<=e){u=this.getRowLength(r);if(o+u>e||r>=h)break;o+=u,r++,r>d&&(r=p.end.row+1,p=this.getNextFoldLine(r,p),d=p?p.start.row:Infinity),c&&(this.$docRowCache.push(r),this.$screenRowCache.push(o))}if(p&&p.start.row<=r)n=this.getFoldDisplayLine(p),r=p.start.row;else{if(o+u<=e||r>h)return{row:h,column:this.getLine(h).length};n=this.getLine(r),p=null}var v=0,m=Math.floor(e-o);if(this.$useWrapMode){var g=this.$wrapData[r];g&&(s=g[m],m>0&&g.length&&(v=g.indent,i=g[m-1]||g[g.length-1],n=n.substring(i)))}return i+=this.$getStringScreenWidth(n,t-v)[1],this.$useWrapMode&&i>=s&&(i=s-1),p?p.idxToPosition(i):{row:r,column:i}},e.prototype.documentToScreenPosition=function(e,t){if(typeof t=="undefined")var n=this.$clipPositionToDocument(e.row,e.column);else n=this.$clipPositionToDocument(e,t);e=n.row,t=n.column;var r=0,i=null,s=null;s=this.getFoldAt(e,t,1),s&&(e=s.start.row,t=s.start.column);var o,u=0,a=this.$docRowCache,f=this.$getRowCacheIndex(a,e),l=a.length;if(l&&f>=0)var u=a[f],r=this.$screenRowCache[f],c=e>a[l-1];else var c=!l;var h=this.getNextFoldLine(u),p=h?h.start.row:Infinity;while(u=p){o=h.end.row+1;if(o>e)break;h=this.getNextFoldLine(o,h),p=h?h.start.row:Infinity}else o=u+1;r+=this.getRowLength(u),u=o,c&&(this.$docRowCache.push(u),this.$screenRowCache.push(r))}var d="";h&&u>=p?(d=this.getFoldDisplayLine(h,e,t),i=h.start.row):(d=this.getLine(e).substring(0,t),i=e);var v=0;if(this.$useWrapMode){var m=this.$wrapData[i];if(m){var g=0;while(d.length>=m[g])r++,g++;d=d.substring(m[g-1]||0,d.length),v=g>0?m.indent:0}}return this.lineWidgets&&this.lineWidgets[u]&&this.lineWidgets[u].rowsAbove&&(r+=this.lineWidgets[u].rowsAbove),{row:r,column:v+this.$getStringScreenWidth(d)[0]}},e.prototype.documentToScreenColumn=function(e,t){return this.documentToScreenPosition(e,t).column},e.prototype.documentToScreenRow=function(e,t){return this.documentToScreenPosition(e,t).row},e.prototype.getScreenLength=function(){var e=0,t=null;if(!this.$useWrapMode){e=this.getLength();var n=this.$foldData;for(var r=0;ro&&(s=t.end.row+1,t=this.$foldData[r++],o=t?t.start.row:Infinity)}}return this.lineWidgets&&(e+=this.$getWidgetScreenLength()),e},e.prototype.$setFontMetrics=function(e){if(!this.$enableVarChar)return;this.$getStringScreenWidth=function(t,n,r){if(n===0)return[0,0];n||(n=Infinity),r=r||0;var i,s;for(s=0;sn)break}return[r,s]}},e.prototype.getPrecedingCharacter=function(){var e=this.selection.getCursor();if(e.column===0)return e.row===0?"":this.doc.getNewLineCharacter();var t=this.getLine(e.row);return t[e.column-1]},e.prototype.destroy=function(){this.destroyed||(this.bgTokenizer.setDocument(null),this.bgTokenizer.cleanup(),this.destroyed=!0),this.endOperation(),this.$stopWorker(),this.removeAllListeners(),this.doc&&this.doc.off("change",this.$onChange),this.selection&&(this.selection.off("changeCursor",this.$onSelectionChange),this.selection.off("changeSelection",this.$onSelectionChange)),this.selection.detach()},e}();m.$uid=0,m.prototype.$modes=o.$modes,m.prototype.getValue=m.prototype.toString,m.prototype.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},m.prototype.$overwrite=!1,m.prototype.$mode=null,m.prototype.$modeId=null,m.prototype.$scrollTop=0,m.prototype.$scrollLeft=0,m.prototype.$wrapLimit=80,m.prototype.$useWrapMode=!1,m.prototype.$wrapLimitRange={min:null,max:null},m.prototype.lineWidgets=null,m.prototype.isFullWidth=N,r.implement(m.prototype,u);var g=1,y=2,b=3,w=4,E=9,S=10,x=11,T=12;e("./edit_session/folding").Folding.call(m.prototype),e("./edit_session/bracket_match").BracketMatch.call(m.prototype),o.defineOptions(m.prototype,"session",{wrap:{set:function(e){!e||e=="off"?e=!1:e=="free"?e=!0:e=="printMargin"?e=-1:typeof e=="string"&&(e=parseInt(e,10)||!1);if(this.$wrap==e)return;this.$wrap=e;if(!e)this.setUseWrapMode(!1);else{var t=typeof e=="number"?e:null;this.setWrapLimitRange(t,t),this.setUseWrapMode(!0)}},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(e){e=e=="auto"?this.$mode.type!="text":e!="text",e!=this.$wrapAsCode&&(this.$wrapAsCode=e,this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0)))},initialValue:"auto"},indentedSoftWrap:{set:function(){this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0))},initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(e){this.$useWorker=e,this.$stopWorker(),e&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(e){e=parseInt(e),e>0&&this.$tabSize!==e&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=e,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(e){this.setFoldStyle(e)},handlesSet:!0},overwrite:{set:function(e){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(e){this.doc.setNewLineMode(e)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(e){this.setMode(e)},get:function(){return this.$modeId},handlesSet:!0}}),t.EditSession=m}),define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,n){"use strict";function u(e,t){function i(e,r){r===void 0&&(r=!0);var i=n&&t.$supportsUnicodeFlag?new RegExp("[\\p{L}\\p{N}_]","u"):new RegExp("\\w");if(i.test(e)||t.regExp)return n&&t.$supportsUnicodeFlag?r?"(?<=^|[^\\p{L}\\p{N}_])":"(?=[^\\p{L}\\p{N}_]|$)":"\\b";return""}var n=r.supportsLookbehind(),s=Array.from(e),o=s[0],u=s[s.length-1];return i(o)+e+i(u,!1)}function a(e,t,n){var r=null,i=0;while(i<=e.length){t.lastIndex=i;var s=t.exec(e);if(!s)break;var o=s.index+s[0].length;if(o>e.length-n)break;if(!r||o>r.index+r[0].length)r=s;i=s.index+1}return r}function f(e,t){var n=5e3,r={row:t,column:0},i=e.doc.positionToIndex(r),s=i+n,o=e.doc.indexToPosition(s),u=o.row;return u+1}var r=e("./lib/lang"),i=e("./lib/oop"),s=e("./range").Range,o=function(){function e(){this.$options={}}return e.prototype.set=function(e){return i.mixin(this.$options,e),this},e.prototype.getOptions=function(){return r.copyObject(this.$options)},e.prototype.setOptions=function(e){this.$options=e},e.prototype.find=function(e){var t=this.$options,n=this.$matchIterator(e,t);if(!n)return!1;var r=null;return n.forEach(function(e,n,i,o){return r=new s(e,n,i,o),n==o&&t.start&&t.start.start&&t.skipCurrent!=0&&r.isEqual(t.start)?(r=null,!1):!0}),r},e.prototype.findAll=function(e){var t=this.$options;if(!t.needle)return[];this.$assembleRegExp(t);var n=t.range,i=n?e.getLines(n.start.row,n.end.row):e.doc.getAllLines(),o=[],u=t.re;if(t.$isMultiLine){var a=u.length,f=i.length-a,l;e:for(var c=u.offset||0;c<=f;c++){for(var h=0;hv)continue;o.push(l=new s(c,v,c+a-1,m)),a>2&&(c=c+a-2)}}else for(var g,y=0;yy&&(y=w),o.push(new s(g.startRow,g.startCol,g.endRow,g.endCol))}}else{g=r.getMatchOffsets(i[y],u);for(var h=0;hx&&o[h].end.row==T)h--;o=o.slice(y,h+1);for(y=0,h=o.length;y=i){n+="\\";break}var o=e.charCodeAt(r);switch(o){case t.Backslash:n+="\\";break;case t.n:n+="\n";break;case t.t:n+=" "}continue}if(s===t.DollarSign){r++;if(r>=i){n+="$";break}var u=e.charCodeAt(r);if(u===t.DollarSign){n+="$$";continue}if(u===t.Digit0||u===t.Ampersand){n+="$&";continue}if(t.Digit1<=u&&u<=t.Digit9){n+="$"+e[r];continue}}n+=e[r]}return n||e},e.prototype.replace=function(e,t){var n=this.$options,r=this.$assembleRegExp(n);if(n.$isMultiLine)return t;if(!r)return;var i=this.$isMultilineSearch(n);i&&(e=e.replace(/\r\n|\r|\n/g,"\n"));var s=r.exec(e);if(!s||!i&&s[0].length!=e.length)return null;t=n.regExp?this.parseReplaceString(t):t.replace(/\$/g,"$$$$"),t=e.replace(r,t);if(n.preserveCase){t=t.split("");for(var o=Math.min(e.length,e.length);o--;){var u=e[o];u&&u.toLowerCase()!=u?t[o]=t[o].toUpperCase():t[o]=t[o].toLowerCase()}t=t.join("")}return t},e.prototype.$assembleRegExp=function(e,t){if(e.needle instanceof RegExp)return e.re=e.needle;var n=e.needle;if(!e.needle)return e.re=!1;e.regExp||(n=r.escapeRegExp(n));var i=e.caseSensitive?"gm":"gmi";try{new RegExp(n,"u"),e.$supportsUnicodeFlag=!0,i+="u"}catch(s){e.$supportsUnicodeFlag=!1}e.wholeWord&&(n=u(n,e)),e.$isMultiLine=!t&&/[\n\r]/.test(n);if(e.$isMultiLine)return e.re=this.$assembleMultilineRegExp(n,i);try{var o=new RegExp(n,i)}catch(s){o=!1}return e.re=o},e.prototype.$assembleMultilineRegExp=function(e,t){var n=e.replace(/\r\n|\r|\n/g,"$\n^").split("\n"),r=[];for(var i=0;ir)break;var a=e.getLine(o++);i=i==null?a:i+"\n"+a}var l=t.exec(i);t.lastIndex=0;if(l){var c=i.slice(0,l.index).split("\n"),h=l[0].split("\n"),p=n+c.length-1,d=c[c.length-1].length,v=p+h.length-1,m=h.length==1?d+h[0].length:h[h.length-1].length;return{startRow:p,startCol:d,endRow:v,endCol:m}}}return null},e.prototype.$multiLineBackward=function(e,t,n,r,i){var s,o=f(e,r),u=e.getLine(r).length-n;for(var l=r;l>=i;){for(var c=0;c=i;c++){var h=e.getLine(l--);s=s==null?h:h+"\n"+s}var p=a(s,t,u);if(p){var d=s.slice(0,p.index).split("\n"),v=p[0].split("\n"),m=l+d.length,g=d[d.length-1].length,y=m+v.length-1,b=v.length==1?g+v[0].length:v[v.length-1].length;return{startRow:m,startCol:g,endRow:y,endCol:b}}}return null},e.prototype.$matchIterator=function(e,t){var n=this.$assembleRegExp(t);if(!n)return!1;var i=this.$isMultilineSearch(t),s=this.$multiLineForward,o=this.$multiLineBackward,u=t.backwards==1,a=t.skipCurrent!=0,f=n.unicode,l=t.range,c=t.start;c||(c=l?l[u?"end":"start"]:e.selection.getRange()),c.start&&(c=c[a!=u?"end":"start"]);var h=l?l.start.row:0,p=l?l.end.row:e.getLength()-1;if(u)var d=function(e){var n=c.row;if(m(n,c.column,e))return;for(n--;n>=h;n--)if(m(n,Number.MAX_VALUE,e))return;if(t.wrap==0)return;for(n=p,h=c.row;n>=h;n--)if(m(n,Number.MAX_VALUE,e))return};else var d=function(e){var n=c.row;if(m(n,c.column,e))return;for(n+=1;n<=p;n++)if(m(n,0,e))return;if(t.wrap==0)return;for(n=h,p=c.row;n<=p;n++)if(m(n,0,e))return};if(t.$isMultiLine)var v=n.length,m=function(t,r,i){var s=u?t-v+1:t;if(s<0||s+v>e.getLength())return;var o=e.getLine(s),a=o.search(n[0]);if(!u&&ar)return;if(i(s,a,s+v-1,l))return!0};else if(u)var m=function(t,s,u){if(i){var a=o(e,n,s,t,h);if(!a)return!1;if(u(a.startRow,a.startCol,a.endRow,a.endCol))return!0}else{var l=e.getLine(t),c=[],p,d=0;n.lastIndex=0;while(p=n.exec(l)){var v=p[0].length;d=p.index;if(!v){if(d>=l.length)break;n.lastIndex=d+=r.skipEmptyMatch(l,d,f)}if(p.index+v>s)break;c.push(p.index,v)}for(var m=c.length-1;m>=0;m-=2){var g=c[m-1],v=c[m];if(u(t,g,t,g+v))return!0}}};else var m=function(t,o,u){n.lastIndex=o;if(i){var a=s(e,n,t,p);if(a){var l=a.endRow<=p?a.endRow-1:p;l>t&&(t=l)}if(!a)return!1;if(u(a.startRow,a.startCol,a.endRow,a.endCol))return!0}else{var c=e.getLine(t),h,d;while(d=n.exec(c)){var v=d[0].length;h=d.index;if(u(t,h,t,h+v))return!0;if(!v){n.lastIndex=h+=r.skipEmptyMatch(c,h,f);if(h>=c.length)return!1}}}};return{forEach:d}},e}();t.Search=o}),define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,n){"use strict";function a(e){return typeof e=="object"&&e.bindKey&&e.bindKey.position||(e.isDefault?-100:0)}var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("../lib/keys"),s=e("../lib/useragent"),o=i.KEY_MODS,u=function(){function e(e,t){this.$init(e,t,!1)}return e.prototype.$init=function(e,t,n){this.platform=t||(s.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(e),this.$singleCommand=n},e.prototype.addCommand=function(e){this.commands[e.name]&&this.removeCommand(e),this.commands[e.name]=e,e.bindKey&&this._buildKeyHash(e)},e.prototype.removeCommand=function(e,t){var n=e&&(typeof e=="string"?e:e.name);e=this.commands[n],t||delete this.commands[n];var r=this.commandKeyBinding;for(var i in r){var s=r[i];if(s==e)delete r[i];else if(Array.isArray(s)){var o=s.indexOf(e);o!=-1&&(s.splice(o,1),s.length==1&&(r[i]=s[0]))}}},e.prototype.bindKey=function(e,t,n){typeof e=="object"&&e&&(n==undefined&&(n=e.position),e=e[this.platform]);if(!e)return;if(typeof t=="function")return this.addCommand({exec:t,bindKey:e,name:t.name||e});e.split("|").forEach(function(e){var r="";if(e.indexOf(" ")!=-1){var i=e.split(/\s+/);e=i.pop(),i.forEach(function(e){var t=this.parseKeys(e),n=o[t.hashId]+t.key;r+=(r?" ":"")+n,this._addCommandToBinding(r,"chainKeys")},this),r+=" "}var s=this.parseKeys(e),u=o[s.hashId]+s.key;this._addCommandToBinding(r+u,t,n)},this)},e.prototype._addCommandToBinding=function(e,t,n){var r=this.commandKeyBinding,i;if(!t)delete r[e];else if(!r[e]||this.$singleCommand)r[e]=t;else{Array.isArray(r[e])?(i=r[e].indexOf(t))!=-1&&r[e].splice(i,1):r[e]=[r[e]],typeof n!="number"&&(n=a(t));var s=r[e];for(i=0;in)break}s.splice(i,0,t)}},e.prototype.addCommands=function(e){e&&Object.keys(e).forEach(function(t){var n=e[t];if(!n)return;if(typeof n=="string")return this.bindKey(n,t);typeof n=="function"&&(n={exec:n});if(typeof n!="object")return;n.name||(n.name=t),this.addCommand(n)},this)},e.prototype.removeCommands=function(e){Object.keys(e).forEach(function(t){this.removeCommand(e[t])},this)},e.prototype.bindKeys=function(e){Object.keys(e).forEach(function(t){this.bindKey(t,e[t])},this)},e.prototype._buildKeyHash=function(e){this.bindKey(e.bindKey,e)},e.prototype.parseKeys=function(e){var t=e.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(e){return e}),n=t.pop(),r=i[n];if(i.FUNCTION_KEYS[r])n=i.FUNCTION_KEYS[r].toLowerCase();else{if(!t.length)return{key:n,hashId:-1};if(t.length==1&&t[0]=="shift")return{key:n.toUpperCase(),hashId:-1}}var s=0;for(var o=t.length;o--;){var u=i.KEY_MODS[t[o]];if(u==null)return typeof console!="undefined"&&console.error("invalid modifier "+t[o]+" in "+e),!1;s|=u}return{key:n,hashId:s}},e.prototype.findKeyCommand=function(e,t){var n=o[e]+t;return this.commandKeyBinding[n]},e.prototype.handleKeyboard=function(e,t,n,r){if(r<0)return;var i=o[t]+n,s=this.commandKeyBinding[i];e.$keyChain&&(e.$keyChain+=" "+i,s=this.commandKeyBinding[e.$keyChain]||s);if(s)if(s=="chainKeys"||s[s.length-1]=="chainKeys")return e.$keyChain=e.$keyChain||i,{command:"null"};if(e.$keyChain)if(!!t&&t!=4||n.length!=1){if(t==-1||r>0)e.$keyChain=""}else e.$keyChain=e.$keyChain.slice(0,-i.length-1);return{command:s}},e.prototype.getStatusText=function(e,t){return t.$keyChain||""},e}(),f=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.$singleCommand=!0,r}return r(t,e),t}(u);f.call=function(e,t,n){u.prototype.$init.call(e,t,n,!0)},u.call=function(e,t,n){u.prototype.$init.call(e,t,n,!1)},t.HashHandler=f,t.MultiHashHandler=u}),define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("../lib/oop"),s=e("../keyboard/hash_handler").MultiHashHandler,o=e("../lib/event_emitter").EventEmitter,u=function(e){function t(t,n){var r=e.call(this,n,t)||this;return r.byName=r.commands,r.setDefaultHandler("exec",function(e){return e.args?e.command.exec(e.editor,e.args,e.event,!1):e.command.exec(e.editor,{},e.event,!0)}),r}return r(t,e),t.prototype.exec=function(e,t,n){if(Array.isArray(e)){for(var r=e.length;r--;)if(this.exec(e[r],t,n))return!0;return!1}typeof e=="string"&&(e=this.commands[e]);var i={editor:t,command:e,args:n};return this.canExecute(e,t)?(i.returnValue=this._emit("exec",i),this._signal("afterExec",i),i.returnValue===!1?!1:!0):(this._signal("commandUnavailable",i),!1)},t.prototype.canExecute=function(e,t){return typeof e=="string"&&(e=this.commands[e]),e?t&&t.$readOnly&&!e.readOnly?!1:this.$checkCommandState!=0&&e.isAvailable&&!e.isAvailable(t)?!1:!0:!1},t.prototype.toggleRecording=function(e){if(this.$inReplay)return;return e&&e._emit("changeStatus"),this.recording?(this.macro.pop(),this.off("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(e){this.macro.push([e.command,e.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},t.prototype.replay=function(e){if(this.$inReplay||!this.macro)return;if(this.recording)return this.toggleRecording(e);try{this.$inReplay=!0,this.macro.forEach(function(t){typeof t=="string"?this.exec(t,e):this.exec(t[0],e,t[1])},this)}finally{this.$inReplay=!1}},t.prototype.trimMacro=function(e){return e.map(function(e){return typeof e[0]!="string"&&(e[0]=e[0].name),e[1]||(e=e[0]),e})},t}(s);i.implement(u.prototype,o),t.CommandManager=u}),define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(e,t,n){"use strict";function o(e,t){return{win:e,mac:t}}var r=e("../lib/lang"),i=e("../config"),s=e("../range").Range;t.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:o("Ctrl-,","Command-,"),exec:function(e){i.loadModule("ace/ext/settings_menu",function(t){t.init(e),e.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:o("Alt-E","F4"),exec:function(e){i.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:o("Alt-Shift-E","Shift-F4"),exec:function(e){i.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:o("Ctrl-A","Command-A"),exec:function(e){e.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:o(null,"Ctrl-L"),exec:function(e){e.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:o("Ctrl-L","Command-L"),exec:function(e,t){typeof t=="number"&&!isNaN(t)&&e.gotoLine(t),e.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:o("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(e){e.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:o("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(e){e.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:o("F2","F2"),exec:function(e){e.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:o("Alt-F2","Alt-F2"),exec:function(e){e.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:o(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:o(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:o("Alt-0","Command-Option-0"),exec:function(e){e.session.foldAll(),e.session.unfold(e.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:o("Alt-Shift-0","Command-Option-Shift-0"),exec:function(e){e.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:o("Ctrl-K","Command-G"),exec:function(e){e.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:o("Ctrl-Shift-K","Command-Shift-G"),exec:function(e){e.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:o("Alt-K","Ctrl-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:o("Alt-Shift-K","Ctrl-Shift-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:o("Ctrl-F","Command-F"),exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(e){e.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:o("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(e){e.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:o("Ctrl-Home","Command-Home|Command-Up"),exec:function(e){e.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:o("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(e){e.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:o("Up","Up|Ctrl-P"),exec:function(e,t){e.navigateUp(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:o("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(e){e.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:o("Ctrl-End","Command-End|Command-Down"),exec:function(e){e.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:o("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(e){e.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:o("Down","Down|Ctrl-N"),exec:function(e,t){e.navigateDown(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:o("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(e){e.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:o("Ctrl-Left","Option-Left"),exec:function(e){e.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:o("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:o("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(e){e.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:o("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(e){e.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:o("Left","Left|Ctrl-B"),exec:function(e,t){e.navigateLeft(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:o("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(e){e.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:o("Ctrl-Right","Option-Right"),exec:function(e){e.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:o("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:o("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(e){e.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:o("Shift-Right","Shift-Right"),exec:function(e){e.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:o("Right","Right|Ctrl-F"),exec:function(e,t){e.navigateRight(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(e){e.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:o(null,"Option-PageDown"),exec:function(e){e.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:o("PageDown","PageDown|Ctrl-V"),exec:function(e){e.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(e){e.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:o(null,"Option-PageUp"),exec:function(e){e.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(e){e.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:o("Ctrl-Up",null),exec:function(e){e.renderer.scrollBy(0,-2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:o("Ctrl-Down",null),exec:function(e){e.renderer.scrollBy(0,2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:o("Ctrl-Alt-E","Command-Option-E"),exec:function(e){e.commands.toggleRecording(e)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:o("Ctrl-Shift-E","Command-Shift-E"),exec:function(e){e.commands.replay(e)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:o("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(e){e.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:o("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(e){e.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:o("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(e){e.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:o(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(e){},readOnly:!0},{name:"cut",description:"Cut",exec:function(e){var t=e.$copyWithEmptySelection&&e.selection.isEmpty(),n=t?e.selection.getLineRange():e.selection.getRange();e._emit("cut",n),n.isEmpty()||e.session.remove(n),e.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(e,t){e.$handlePaste(t)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:o("Ctrl-D","Command-D"),exec:function(e){e.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:o("Ctrl-Shift-D","Command-Shift-D"),exec:function(e){e.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:o("Ctrl-Alt-S","Command-Alt-S"),exec:function(e){e.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:o("Ctrl-/","Command-/"),exec:function(e){e.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:o("Ctrl-Shift-/","Command-Shift-/"),exec:function(e){e.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:o("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(e){e.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:o("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(e){e.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:o("Ctrl-H","Command-Option-F"),exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"undo",description:"Undo",bindKey:o("Ctrl-Z","Command-Z"),exec:function(e){e.undo()}},{name:"redo",description:"Redo",bindKey:o("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(e){e.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:o("Alt-Shift-Up","Command-Option-Up"),exec:function(e){e.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:o("Alt-Up","Option-Up"),exec:function(e){e.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:o("Alt-Shift-Down","Command-Option-Down"),exec:function(e){e.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:o("Alt-Down","Option-Down"),exec:function(e){e.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:o("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(e){e.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:o("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(e){e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:o("Shift-Delete",null),exec:function(e){if(!e.selection.isEmpty())return!1;e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:o("Alt-Backspace","Command-Backspace"),exec:function(e){e.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:o("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(e){e.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:o("Ctrl-Shift-Backspace",null),exec:function(e){var t=e.selection.getRange();t.start.column=0,e.session.remove(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:o("Ctrl-Shift-Delete",null),exec:function(e){var t=e.selection.getRange();t.end.column=Number.MAX_VALUE,e.session.remove(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:o("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(e){e.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:o("Ctrl-Delete","Alt-Delete"),exec:function(e){e.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:o("Shift-Tab","Shift-Tab"),exec:function(e){e.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:o("Tab","Tab"),exec:function(e){e.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:o("Ctrl-[","Ctrl-["),exec:function(e){e.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:o("Ctrl-]","Ctrl-]"),exec:function(e){e.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(e,t){e.insert(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(e,t){e.insert(r.stringRepeat(t.text||"",t.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:o(null,"Ctrl-O"),exec:function(e){e.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:o("Alt-Shift-X","Ctrl-T"),exec:function(e){e.transposeLetters()},multiSelectAction:function(e){e.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:o("Ctrl-U","Ctrl-U"),exec:function(e){e.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:o("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(e){e.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:o(null,null),exec:function(e){e.autoIndent()},scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:o("Ctrl-Shift-L","Command-Shift-L"),exec:function(e){var t=e.selection.getRange();t.start.column=t.end.column=0,t.end.row++,e.selection.setRange(t,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"openlink",bindKey:o("Ctrl+F3","F3"),exec:function(e){e.openLink()}},{name:"joinlines",description:"Join lines",bindKey:o(null,null),exec:function(e){var t=e.selection.isBackwards(),n=t?e.selection.getSelectionLead():e.selection.getSelectionAnchor(),i=t?e.selection.getSelectionAnchor():e.selection.getSelectionLead(),o=e.session.doc.getLine(n.row).length,u=e.session.doc.getTextRange(e.selection.getRange()),a=u.replace(/\n\s*/," ").length,f=e.session.doc.getLine(n.row);for(var l=n.row+1;l<=i.row+1;l++){var c=r.stringTrimLeft(r.stringTrimRight(e.session.doc.getLine(l)));c.length!==0&&(c=" "+c),f+=c}i.row+10?(e.selection.moveCursorTo(n.row,n.column),e.selection.selectTo(n.row,n.column+a)):(o=e.session.doc.getLine(n.row).length>o?o+1:o,e.selection.moveCursorTo(n.row,o))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:o(null,null),exec:function(e){var t=e.session.doc.getLength()-1,n=e.session.doc.getLine(t).length,r=e.selection.rangeList.ranges,i=[];r.length<1&&(r=[e.selection.getRange()]);for(var o=0;o0||e+t=0&&this.$isCustomWidgetVisible(e-t))return e-t;if(e+t<=this.lines.getLength()-1&&this.$isCustomWidgetVisible(e+t))return e+t;if(e-t>=0&&this.$isFoldWidgetVisible(e-t))return e-t;if(e+t<=this.lines.getLength()-1&&this.$isFoldWidgetVisible(e+t))return e+t}return null},e.prototype.$findNearestAnnotation=function(e){if(this.$isAnnotationVisible(e))return e;var t=0;while(e-t>0||e+t=0&&this.$isAnnotationVisible(e-t))return e-t;if(e+t<=this.lines.getLength()-1&&this.$isAnnotationVisible(e+t))return e+t}return null},e.prototype.$focusFoldWidget=function(e){if(e==null)return;var t=this.$getFoldWidget(e);t.classList.add(this.editor.renderer.keyboardFocusClassName),t.focus()},e.prototype.$focusCustomWidget=function(e){if(e==null)return;var t=this.$getCustomWidget(e);t&&(t.classList.add(this.editor.renderer.keyboardFocusClassName),t.focus())},e.prototype.$focusAnnotation=function(e){if(e==null)return;var t=this.$getAnnotation(e);t.classList.add(this.editor.renderer.keyboardFocusClassName),t.focus()},e.prototype.$blurFoldWidget=function(e){var t=this.$getFoldWidget(e);t.classList.remove(this.editor.renderer.keyboardFocusClassName),t.blur()},e.prototype.$blurCustomWidget=function(e){var t=this.$getCustomWidget(e);t&&(t.classList.remove(this.editor.renderer.keyboardFocusClassName),t.blur())},e.prototype.$blurAnnotation=function(e){var t=this.$getAnnotation(e);t.classList.remove(this.editor.renderer.keyboardFocusClassName),t.blur()},e.prototype.$moveFoldWidgetUp=function(){var e=this.activeRowIndex;while(e>0){e--;if(this.$isFoldWidgetVisible(e)||this.$isCustomWidgetVisible(e)){this.$blurFoldWidget(this.activeRowIndex),this.$blurCustomWidget(this.activeRowIndex),this.activeRowIndex=e,this.$isFoldWidgetVisible(e)?this.$focusFoldWidget(this.activeRowIndex):this.$focusCustomWidget(this.activeRowIndex);return}}return},e.prototype.$moveFoldWidgetDown=function(){var e=this.activeRowIndex;while(e0){e--;if(this.$isAnnotationVisible(e)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=e,this.$focusAnnotation(this.activeRowIndex);return}}return},e.prototype.$moveAnnotationDown=function(){var e=this.activeRowIndex;while(e=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=e("./lib/oop"),s=e("./lib/dom"),o=e("./lib/lang"),u=e("./lib/useragent"),a=e("./keyboard/textinput").TextInput,f=e("./mouse/mouse_handler").MouseHandler,l=e("./mouse/fold_handler").FoldHandler,c=e("./keyboard/keybinding").KeyBinding,h=e("./edit_session").EditSession,p=e("./search").Search,d=e("./range").Range,v=e("./lib/event_emitter").EventEmitter,m=e("./commands/command_manager").CommandManager,g=e("./commands/default_commands").commands,y=e("./config"),b=e("./token_iterator").TokenIterator,w=e("./keyboard/gutter_handler").GutterKeyboardHandler,E=e("./config").nls,S=e("./clipboard"),x=e("./lib/keys"),T=e("./lib/event"),N=e("./tooltip").HoverTooltip,C=function(){function e(t,n,r){this.id="editor"+ ++e.$uid,this.session,this.$toDestroy=[];var i=t.getContainerElement();this.container=i,this.renderer=t,this.commands=new m(u.isMac?"mac":"win",g),typeof document=="object"&&(this.textInput=new a(t.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new f(this),new l(this)),this.keyBinding=new c(this),this.$search=(new p).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=o.delayedCall(function(){this._signal("input",{}),this.session&&!this.session.destroyed&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(e,t){t._$emitInputEvent.schedule(31)}),this.setSession(n||r&&r.session||new h("")),y.resetOptions(this),r&&this.setOptions(r),y._signal("editor",this)}return e.prototype.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0)},e.prototype.startOperation=function(e){this.session.startOperation(e)},e.prototype.endOperation=function(e){this.session.endOperation(e)},e.prototype.onStartOperation=function(e){this.curOp=this.session.curOp,this.curOp.scrollTop=this.renderer.scrollTop,this.prevOp=this.session.prevOp,e||(this.previousCommand=null)},e.prototype.onEndOperation=function(e){if(this.curOp&&this.session){if(e&&e.returnValue===!1){this.curOp=null;return}this._signal("beforeEndOperation");if(!this.curOp)return;var t=this.curOp.command,n=t&&t.scrollIntoView;if(n){switch(n){case"center-animate":n="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var r=this.selection.getRange(),i=this.renderer.layerConfig;(r.start.row>=i.lastRow||r.end.row<=i.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead);break;default:}n=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.$lastSel=this.session.selection.toJSON(),this.prevOp=this.curOp,this.curOp=null}},e.prototype.$historyTracker=function(e){if(!this.$mergeUndoDeltas)return;var t=this.prevOp,n=this.$mergeableCommands,r=t.command&&e.command.name==t.command.name;if(e.command.name=="insertstring"){var i=e.args;this.mergeNextCommand===undefined&&(this.mergeNextCommand=!0),r=r&&this.mergeNextCommand&&(!/\s/.test(i)||/\s/.test(t.args)),this.mergeNextCommand=!0}else r=r&&n.indexOf(e.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(r=!1),r?this.session.mergeUndoDeltas=!0:n.indexOf(e.command.name)!==-1&&(this.sequenceStartTime=Date.now())},e.prototype.setKeyboardHandler=function(e,t){if(e&&typeof e=="string"&&e!="ace"){this.$keybindingId=e;var n=this;y.loadModule(["keybinding",e],function(r){n.$keybindingId==e&&n.keyBinding.setKeyboardHandler(r&&r.handler),t&&t()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(e),t&&t()},e.prototype.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},e.prototype.setSession=function(e){if(this.session==e)return;this.curOp&&this.endOperation(),this.curOp={};var t=this.session;if(t){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange),this.session.off("startOperation",this.$onStartOperation),this.session.off("endOperation",this.$onEndOperation);var n=this.session.getSelection();this.session.$fontMetrics=null,n.off("changeCursor",this.$onCursorChange),n.off("changeSelection",this.$onSelectionChange)}this.session=e,e?(this.$onDocumentChange=this.onDocumentChange.bind(this),e.on("change",this.$onDocumentChange),this.renderer.setSession(e),e.$fontMetrics=this.renderer.$fontMetrics,this.$onChangeMode=this.onChangeMode.bind(this),e.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),e.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),e.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),e.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),e.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),e.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=e.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.$onStartOperation=this.onStartOperation.bind(this),this.session.on("startOperation",this.$onStartOperation),this.$onEndOperation=this.onEndOperation.bind(this),this.session.on("endOperation",this.$onEndOperation),this.onChangeMode(),this.onCursorChange(),this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(e)),this._signal("changeSession",{session:e,oldSession:t}),this.curOp=null,t&&t._signal("changeEditor",{oldEditor:this}),t&&(t.$editor=null),e&&e._signal("changeEditor",{editor:this}),e&&(e.$editor=this),e&&!e.destroyed&&e.bgTokenizer.scheduleStart()},e.prototype.getSession=function(){return this.session},e.prototype.setValue=function(e,t){return this.session.doc.setValue(e),t?t==1?this.navigateFileEnd():t==-1&&this.navigateFileStart():this.selectAll(),e},e.prototype.getValue=function(){return this.session.getValue()},e.prototype.getSelection=function(){return this.selection},e.prototype.resize=function(e){this.renderer.onResize(e)},e.prototype.setTheme=function(e,t){this.renderer.setTheme(e,t)},e.prototype.getTheme=function(){return this.renderer.getTheme()},e.prototype.setStyle=function(e,t){this.renderer.setStyle(e,t)},e.prototype.unsetStyle=function(e){this.renderer.unsetStyle(e)},e.prototype.getFontSize=function(){return this.getOption("fontSize")||s.computedStyle(this.container).fontSize},e.prototype.setFontSize=function(e){this.setOption("fontSize",e)},e.prototype.$highlightBrackets=function(){if(this.$highlightPending)return;var e=this;this.$highlightPending=!0,setTimeout(function(){e.$highlightPending=!1;var t=e.session;if(!t||t.destroyed)return;t.$bracketHighlight&&(t.$bracketHighlight.markerIds.forEach(function(e){t.removeMarker(e)}),t.$bracketHighlight=null);var n=e.getCursorPosition(),r=e.getKeyboardHandler(),i=r&&r.$getDirectionForHighlight&&r.$getDirectionForHighlight(e),s=t.getMatchingBracketRanges(n,i);if(!s){var o=new b(t,n.row,n.column),u=o.getCurrentToken();if(u&&/\b(?:tag-open|tag-name)/.test(u.type)){var a=t.getMatchingTags(n);a&&(s=[a.openTagName.isEmpty()?a.openTag:a.openTagName,a.closeTagName.isEmpty()?a.closeTag:a.closeTagName])}}!s&&t.$mode.getMatching&&(s=t.$mode.getMatching(e.session));if(!s){e.getHighlightIndentGuides()&&e.renderer.$textLayer.$highlightIndentGuide();return}var f="ace_bracket";Array.isArray(s)?s.length==1&&(f="ace_error_bracket"):s=[s],s.length==2&&(d.comparePoints(s[0].end,s[1].start)==0?s=[d.fromPoints(s[0].start,s[1].end)]:d.comparePoints(s[0].start,s[1].end)==0&&(s=[d.fromPoints(s[1].start,s[0].end)])),t.$bracketHighlight={ranges:s,markerIds:s.map(function(e){return t.addMarker(e,f,"text")})},e.getHighlightIndentGuides()&&e.renderer.$textLayer.$highlightIndentGuide()},50)},e.prototype.focus=function(){this.textInput.focus()},e.prototype.isFocused=function(){return this.textInput.isFocused()},e.prototype.blur=function(){this.textInput.blur()},e.prototype.onFocus=function(e){if(this.$isFocused)return;this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",e)},e.prototype.onBlur=function(e){if(!this.$isFocused)return;this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",e)},e.prototype.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$updateHighlightActiveLine()},e.prototype.onDocumentChange=function(e){var t=this.session.$useWrapMode,n=e.start.row==e.end.row?e.end.row:Infinity;this.renderer.updateLines(e.start.row,n,t),this._signal("change",e),this.$cursorChange()},e.prototype.onTokenizerUpdate=function(e){var t=e.data;this.renderer.updateLines(t.first,t.last)},e.prototype.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},e.prototype.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},e.prototype.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},e.prototype.$updateHighlightActiveLine=function(){var e=this.getSession(),t;if(this.$highlightActiveLine){if(this.$selectionStyle!="line"||!this.selection.isMultiLine())t=this.getCursorPosition();this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(t=!1),this.renderer.$maxLines&&this.session.getLength()===1&&!(this.renderer.$minLines>1)&&(t=!1)}if(e.$highlightLineMarker&&!t)e.removeMarker(e.$highlightLineMarker.id),e.$highlightLineMarker=null;else if(!e.$highlightLineMarker&&t){var n=new d(t.row,t.column,t.row,Infinity);n.id=e.addMarker(n,"ace_active-line","screenLine"),e.$highlightLineMarker=n}else t&&(e.$highlightLineMarker.start.row=t.row,e.$highlightLineMarker.end.row=t.row,e.$highlightLineMarker.start.column=t.column,e._signal("changeBackMarker"))},e.prototype.onSelectionChange=function(e){var t=this.session;t.$selectionMarker&&t.removeMarker(t.$selectionMarker),t.$selectionMarker=null;if(!this.selection.isEmpty()){var n=this.selection.getRange(),r=this.getSelectionStyle();t.$selectionMarker=t.addMarker(n,"ace_selection",r)}else this.$updateHighlightActiveLine();var i=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(i),this._signal("changeSelection")},e.prototype.$getSelectionHighLightRegexp=function(){var e=this.session,t=this.getSelectionRange();if(t.isEmpty()||t.isMultiLine())return;var n=t.start.column,r=t.end.column,i=e.getLine(t.start.row),s=i.substring(n,r);if(s.length>5e3||!/[\w\d]/.test(s))return;var o=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:s}),u=i.substring(n-1,r+1);if(!o.test(u))return;return o},e.prototype.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},e.prototype.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},e.prototype.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},e.prototype.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},e.prototype.onChangeMode=function(e){this.renderer.updateText(),this._emit("changeMode",e)},e.prototype.onChangeWrapLimit=function(){this.renderer.updateFull()},e.prototype.onChangeWrapMode=function(){this.renderer.onResize(!0)},e.prototype.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},e.prototype.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},e.prototype.getCopyText=function(){var e=this.getSelectedText(),t=this.session.doc.getNewLineCharacter(),n=!1;if(!e&&this.$copyWithEmptySelection){n=!0;var r=this.selection.getAllRanges();for(var i=0;iu.search(/\S|$/)){var a=u.substr(i.column).search(/\S|$/);n.doc.removeInLine(i.row,i.column,i.column+a)}}this.clearSelection();var f=i.column,l=n.getState(i.row),u=n.getLine(i.row),c=r.checkOutdent(l,u,e);n.insert(i,e),s&&s.selection&&(s.selection.length==2?this.selection.setSelectionRange(new d(i.row,f+s.selection[0],i.row,f+s.selection[1])):this.selection.setSelectionRange(new d(i.row+s.selection[0],s.selection[1],i.row+s.selection[2],s.selection[3])));if(this.$enableAutoIndent){if(n.getDocument().isNewLine(e)){var h=r.getNextLineIndent(l,u.slice(0,i.column),n.getTabString());n.insert({row:i.row+1,column:0},h)}c&&r.autoOutdent(l,n,i.row)}},e.prototype.autoIndent=function(){var e=this.session,t=e.getMode(),n=this.selection.isEmpty()?[new d(0,0,e.doc.getLength()-1,0)]:this.selection.getAllRanges(),r="",i="",s="",o=e.getTabString();for(var u=0;u0&&(r=e.getState(l-1),i=e.getLine(l-1),s=t.getNextLineIndent(r,i,o));var c=e.getLine(l),h=t.$getIndent(c);if(s!==h){if(h.length>0){var p=new d(l,0,l,h.length);e.remove(p)}s.length>0&&e.insert({row:l,column:0},s)}t.autoOutdent(r,e,l)}}},e.prototype.onTextInput=function(e,t){if(!t)return this.keyBinding.onTextInput(e);this.startOperation({command:{name:"insertstring"}});var n=this.applyComposition.bind(this,e,t);this.selection.rangeCount?this.forEachSelection(n):n(),this.endOperation()},e.prototype.applyComposition=function(e,t){if(t.extendLeft||t.extendRight){var n=this.selection.getRange();n.start.column-=t.extendLeft,n.end.column+=t.extendRight,n.start.column<0&&(n.start.row--,n.start.column+=this.session.getLine(n.start.row).length+1),this.selection.setRange(n),!e&&!n.isEmpty()&&this.remove()}(e||!this.selection.isEmpty())&&this.insert(e,!0);if(t.restoreStart||t.restoreEnd){var n=this.selection.getRange();n.start.column-=t.restoreStart,n.end.column-=t.restoreEnd,this.selection.setRange(n)}},e.prototype.onCommandKey=function(e,t,n){return this.keyBinding.onCommandKey(e,t,n)},e.prototype.setOverwrite=function(e){this.session.setOverwrite(e)},e.prototype.getOverwrite=function(){return this.session.getOverwrite()},e.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},e.prototype.setScrollSpeed=function(e){this.setOption("scrollSpeed",e)},e.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},e.prototype.setDragDelay=function(e){this.setOption("dragDelay",e)},e.prototype.getDragDelay=function(){return this.getOption("dragDelay")},e.prototype.setSelectionStyle=function(e){this.setOption("selectionStyle",e)},e.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},e.prototype.setHighlightActiveLine=function(e){this.setOption("highlightActiveLine",e)},e.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},e.prototype.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},e.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},e.prototype.setHighlightSelectedWord=function(e){this.setOption("highlightSelectedWord",e)},e.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},e.prototype.setAnimatedScroll=function(e){this.renderer.setAnimatedScroll(e)},e.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},e.prototype.setShowInvisibles=function(e){this.renderer.setShowInvisibles(e)},e.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},e.prototype.setDisplayIndentGuides=function(e){this.renderer.setDisplayIndentGuides(e)},e.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},e.prototype.setHighlightIndentGuides=function(e){this.renderer.setHighlightIndentGuides(e)},e.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},e.prototype.setShowPrintMargin=function(e){this.renderer.setShowPrintMargin(e)},e.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},e.prototype.setPrintMarginColumn=function(e){this.renderer.setPrintMarginColumn(e)},e.prototype.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},e.prototype.setReadOnly=function(e){this.setOption("readOnly",e)},e.prototype.getReadOnly=function(){return this.getOption("readOnly")},e.prototype.setBehavioursEnabled=function(e){this.setOption("behavioursEnabled",e)},e.prototype.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},e.prototype.setWrapBehavioursEnabled=function(e){this.setOption("wrapBehavioursEnabled",e)},e.prototype.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},e.prototype.setShowFoldWidgets=function(e){this.setOption("showFoldWidgets",e)},e.prototype.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},e.prototype.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},e.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},e.prototype.remove=function(e){this.selection.isEmpty()&&(e=="left"?this.selection.selectLeft():this.selection.selectRight());var t=this.getSelectionRange();if(this.getBehavioursEnabled()){var n=this.session,r=n.getState(t.start.row),i=n.getMode().transformAction(r,"deletion",this,n,t);if(t.end.column===0){var s=n.getTextRange(t);if(s[s.length-1]=="\n"){var o=n.getLine(t.end.row);/^\s+$/.test(o)&&(t.end.column=o.length)}}i&&(t=i)}this.session.remove(t),this.clearSelection()},e.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},e.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},e.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},e.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var e=this.getSelectionRange();e.start.column==e.end.column&&e.start.row==e.end.row&&(e.end.column=0,e.end.row++),this.session.remove(e),this.clearSelection()},e.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var e=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(e)},e.prototype.setGhostText=function(e,t){this.renderer.setGhostText(e,t)},e.prototype.removeGhostText=function(){this.renderer.removeGhostText()},e.prototype.transposeLetters=function(){if(!this.selection.isEmpty())return;var e=this.getCursorPosition(),t=e.column;if(t===0)return;var n=this.session.getLine(e.row),r,i;tt.toLowerCase()?1:0});var i=new d(0,0,0,0);for(var r=e.first;r<=e.last;r++){var s=t.getLine(r);i.start.row=r,i.end.row=r,i.end.column=s.length,t.replace(i,n[r-e.first])}},e.prototype.toggleCommentLines=function(){var e=this.session.getState(this.getCursorPosition().row),t=this.$getSelectedRows();this.session.getMode().toggleCommentLines(e,this.session,t.first,t.last)},e.prototype.toggleBlockComment=function(){var e=this.getCursorPosition(),t=this.session.getState(e.row),n=this.getSelectionRange();this.session.getMode().toggleBlockComment(t,this.session,n,e)},e.prototype.getNumberAt=function(e,t){var n=/[\-]?[0-9]+(?:\.[0-9]+)?/g;n.lastIndex=0;var r=this.session.getLine(e);while(n.lastIndex=t){var s={value:i[0],start:i.index,end:i.index+i[0].length};return s}}return null},e.prototype.modifyNumber=function(e){var t=this.selection.getCursor().row,n=this.selection.getCursor().column,r=new d(t,n-1,t,n),i=this.session.getTextRange(r);if(!isNaN(parseFloat(i))&&isFinite(i)){var s=this.getNumberAt(t,n);if(s){var o=s.value.indexOf(".")>=0?s.start+s.value.indexOf(".")+1:s.end,u=s.start+s.value.length-o,a=parseFloat(s.value);a*=Math.pow(10,u),o!==s.end&&n=u&&s<=a&&(n=t,f.selection.clearSelection(),f.moveCursorTo(e,u+r),f.selection.selectTo(e,a+r)),u=a});var l=this.$toggleWordPairs,c;for(var h=0;h=a&&u<=f&&p.match(/((?:https?|ftp):\/\/[\S]+)/)){l=p.replace(/[\s:.,'";}\]]+$/,"");break}a=f}}catch(d){n={error:d}}finally{try{h&&!h.done&&(i=c.return)&&i.call(c)}finally{if(n)throw n.error}}return l},e.prototype.openLink=function(){var e=this.selection.getCursor(),t=this.findLinkAt(e.row,e.column);return t&&window.open(t,"_blank"),t!=null},e.prototype.removeLines=function(){var e=this.$getSelectedRows();this.session.removeFullLines(e.first,e.last),this.clearSelection()},e.prototype.duplicateSelection=function(){var e=this.selection,t=this.session,n=e.getRange(),r=e.isBackwards();if(n.isEmpty()){var i=n.start.row;t.duplicateLines(i,i)}else{var s=r?n.start:n.end,o=t.insert(s,t.getTextRange(n));n.start=s,n.end=o,e.setSelectionRange(n,r)}},e.prototype.moveLinesDown=function(){this.$moveLines(1,!1)},e.prototype.moveLinesUp=function(){this.$moveLines(-1,!1)},e.prototype.moveText=function(e,t,n){return this.session.moveText(e,t,n)},e.prototype.copyLinesUp=function(){this.$moveLines(-1,!0)},e.prototype.copyLinesDown=function(){this.$moveLines(1,!0)},e.prototype.$moveLines=function(e,t){var n,r,i=this.selection;if(!i.inMultiSelectMode||this.inVirtualSelectionMode){var s=i.toOrientedRange();n=this.$getSelectedRows(s),r=this.session.$moveLines(n.first,n.last,t?0:e),t&&e==-1&&(r=0),s.moveBy(r,0),i.fromOrientedRange(s)}else{var o=i.rangeList.ranges;i.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;var u=0,a=0,f=o.length;for(var l=0;lp+1)break;p=d.last}l--,u=this.session.$moveLines(h,p,t?0:e),t&&e==-1&&(c=l+1);while(c<=l)o[c].moveBy(u,0),c++;t||(u=0),a+=u}i.fromOrientedRange(i.ranges[0]),i.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},e.prototype.$getSelectedRows=function(e){return e=(e||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(e.start.row),last:this.session.getRowFoldEnd(e.end.row)}},e.prototype.onCompositionStart=function(e){this.renderer.showComposition(e)},e.prototype.onCompositionUpdate=function(e){this.renderer.setCompositionText(e)},e.prototype.onCompositionEnd=function(){this.renderer.hideComposition()},e.prototype.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},e.prototype.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},e.prototype.isRowVisible=function(e){return e>=this.getFirstVisibleRow()&&e<=this.getLastVisibleRow()},e.prototype.isRowFullyVisible=function(e){return e>=this.renderer.getFirstFullyVisibleRow()&&e<=this.renderer.getLastFullyVisibleRow()},e.prototype.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},e.prototype.$moveByPage=function(e,t){var n=this.renderer,r=this.renderer.layerConfig,i=e*Math.floor(r.height/r.lineHeight);t===!0?this.selection.$moveSelection(function(){this.moveCursorBy(i,0)}):t===!1&&(this.selection.moveCursorBy(i,0),this.selection.clearSelection());var s=n.scrollTop;n.scrollBy(0,i*r.lineHeight),t!=null&&n.scrollCursorIntoView(null,.5),n.animateScrolling(s)},e.prototype.selectPageDown=function(){this.$moveByPage(1,!0)},e.prototype.selectPageUp=function(){this.$moveByPage(-1,!0)},e.prototype.gotoPageDown=function(){this.$moveByPage(1,!1)},e.prototype.gotoPageUp=function(){this.$moveByPage(-1,!1)},e.prototype.scrollPageDown=function(){this.$moveByPage(1)},e.prototype.scrollPageUp=function(){this.$moveByPage(-1)},e.prototype.scrollToRow=function(e){this.renderer.scrollToRow(e)},e.prototype.scrollToLine=function(e,t,n,r){this.renderer.scrollToLine(e,t,n,r)},e.prototype.centerSelection=function(){var e=this.getSelectionRange(),t={row:Math.floor(e.start.row+(e.end.row-e.start.row)/2),column:Math.floor(e.start.column+(e.end.column-e.start.column)/2)};this.renderer.alignCursor(t,.5)},e.prototype.getCursorPosition=function(){return this.selection.getCursor()},e.prototype.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},e.prototype.getSelectionRange=function(){return this.selection.getRange()},e.prototype.selectAll=function(){this.selection.selectAll()},e.prototype.clearSelection=function(){this.selection.clearSelection()},e.prototype.moveCursorTo=function(e,t){this.selection.moveCursorTo(e,t)},e.prototype.moveCursorToPosition=function(e){this.selection.moveCursorToPosition(e)},e.prototype.jumpToMatching=function(e,t){var n=this.getCursorPosition(),r=new b(this.session,n.row,n.column),i=r.getCurrentToken(),s=0;i&&i.type.indexOf("tag-name")!==-1&&(i=r.stepBackward());var o=i||r.stepForward();if(!o)return;var u,a=!1,f={},l=n.column-o.start,c,h={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(o.value.match(/[{}()\[\]]/g))for(;l1?f[o.value]++:i.value==="=0;--s)this.$tryReplace(n[s],e)&&r++;return this.selection.setSelectionRange(i),r},e.prototype.$tryReplace=function(e,t){var n=this.session.getTextRange(e);return t=this.$search.replace(n,t),t!==null?(e.end=this.session.replace(e,t),e):null},e.prototype.getLastSearchOptions=function(){return this.$search.getOptions()},e.prototype.find=function(e,t,n){t||(t={}),typeof e=="string"||e instanceof RegExp?t.needle=e:typeof e=="object"&&i.mixin(t,e);var r=this.selection.getRange();t.needle==null&&(e=this.session.getTextRange(r)||this.$search.$options.needle,e||(r=this.session.getWordRange(r.start.row,r.start.column),e=this.session.getTextRange(r)),this.$search.set({needle:e})),this.$search.set(t),t.start||this.$search.set({start:r});var s=this.$search.find(this.session);if(t.preventScroll)return s;if(s)return this.revealRange(s,n),s;t.backwards?r.start=r.end:r.end=r.start,this.selection.setRange(r)},e.prototype.findNext=function(e,t){this.find({skipCurrent:!0,backwards:!1},e,t)},e.prototype.findPrevious=function(e,t){this.find(e,{skipCurrent:!0,backwards:!0},t)},e.prototype.revealRange=function(e,t){this.session.unfold(e),this.selection.setSelectionRange(e);var n=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(e.start,e.end,.5),t!==!1&&this.renderer.animateScrolling(n)},e.prototype.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},e.prototype.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},e.prototype.destroy=function(){this.destroyed=!0,this.$toDestroy&&(this.$toDestroy.forEach(function(e){e.destroy()}),this.$toDestroy=[]),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},e.prototype.setAutoScrollEditorIntoView=function(e){if(!e)return;var t,n=this,r=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var i=this.$scrollAnchor;i.style.cssText="position:absolute",this.container.insertBefore(i,this.container.firstChild);var s=this.on("changeSelection",function(){r=!0}),o=this.renderer.on("beforeRender",function(){r&&(t=n.renderer.container.getBoundingClientRect())}),u=this.renderer.on("afterRender",function(){if(r&&t&&(n.isFocused()||n.searchBox&&n.searchBox.isFocused())){var e=n.renderer,s=e.$cursorLayer.$pixelPos,o=e.layerConfig,u=s.top-o.offset;s.top>=0&&u+t.top<0?r=!0:s.topwindow.innerHeight?r=!1:r=null,r!=null&&(i.style.top=u+"px",i.style.left=s.left+"px",i.style.height=o.lineHeight+"px",i.scrollIntoView(r)),r=t=null}});this.setAutoScrollEditorIntoView=function(e){if(e)return;delete this.setAutoScrollEditorIntoView,this.off("changeSelection",s),this.renderer.off("afterRender",u),this.renderer.off("beforeRender",o)}},e.prototype.$resetCursorStyle=function(){var e=this.$cursorStyle||"ace",t=this.renderer.$cursorLayer;if(!t)return;t.setSmoothBlinking(/smooth/.test(e)),t.isBlinking=!this.$readOnly&&e!="wide",s.setCssClass(t.element,"ace_slim-cursors",/slim/.test(e))},e.prototype.prompt=function(e,t,n){var r=this;y.loadModule("ace/ext/prompt",function(i){i.prompt(r,e,t,n)})},Object.defineProperty(e.prototype,"hoverTooltip",{get:function(){return this.$hoverTooltip||(this.$hoverTooltip=new N(this.container))},set:function(e){this.$hoverTooltip&&this.$hoverTooltip.destroy(),this.$hoverTooltip=e},enumerable:!1,configurable:!0}),e}();C.$uid=0,C.prototype.curOp=null,C.prototype.prevOp={},C.prototype.$mergeableCommands=["backspace","del","insertstring"],C.prototype.$toggleWordPairs=[["first","last"],["true","false"],["yes","no"],["width","height"],["top","bottom"],["right","left"],["on","off"],["x","y"],["get","set"],["max","min"],["horizontal","vertical"],["show","hide"],["add","remove"],["up","down"],["before","after"],["even","odd"],["in","out"],["inside","outside"],["next","previous"],["increase","decrease"],["attach","detach"],["&&","||"],["==","!="]],i.implement(C.prototype,v),y.defineOptions(C.prototype,"editor",{selectionStyle:{set:function(e){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:e})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(e){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(e){var t=this;this.textInput.setReadOnly(e);if(this.destroyed)return;this.$resetCursorStyle(),this.$readOnlyCallback||(this.$readOnlyCallback=function(e){var n=!1;if(e&&e.type=="keydown"){e&&e.key&&!e.ctrlKey&&!e.metaKey&&(e.key==" "&&e.preventDefault(),n=e.key.length==1);if(!n)return}else e&&e.type!=="exec"&&(n=!0);if(n){var r=s.createElement("div");r.textContent=E("editor.tooltip.disable-editing","Editing is disabled"),t.hoverTooltip.isOpen||t.hoverTooltip.showForRange(t,t.getSelectionRange(),r)}else t.hoverTooltip&&t.hoverTooltip.isOpen&&t.hoverTooltip.hide()});var n=this.textInput.getElement();e?(T.addListener(n,"keydown",this.$readOnlyCallback,this),this.commands.on("exec",this.$readOnlyCallback),this.commands.on("commandUnavailable",this.$readOnlyCallback)):(T.removeListener(n,"keydown",this.$readOnlyCallback),this.commands.off("exec",this.$readOnlyCallback),this.commands.off("commandUnavailable",this.$readOnlyCallback))},initialValue:!1},copyWithEmptySelection:{set:function(e){this.textInput.setCopyWithEmptySelection(e)},initialValue:!1},cursorStyle:{set:function(e){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(e){this.setAutoScrollEditorIntoView(e)}},keyboardHandler:{set:function(e){this.setKeyboardHandler(e)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(e){this.session.setValue(e)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(e){this.setSession(e)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(e){this.renderer.$gutterLayer.setShowLineNumbers(e),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),e&&this.$relativeLineNumbers?k.attach(this):k.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(e){this.$showLineNumbers&&e?k.attach(this):k.detach(this)}},placeholder:{set:function(e){this.$updatePlaceholder||(this.$updatePlaceholder=function(){var e=this.session&&(this.renderer.$composition||this.session.getLength()>1||this.session.getLine(0).length>0);if(e&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),s.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(!e&&!this.renderer.placeholderNode){this.renderer.on("afterRender",this.$updatePlaceholder),s.addCssClass(this.container,"ace_hasPlaceholder");var t=s.createElement("div");t.className="ace_placeholder",t.textContent=this.$placeholder||"",this.renderer.placeholderNode=t,this.renderer.content.appendChild(this.renderer.placeholderNode)}else!e&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"")}.bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},enableKeyboardAccessibility:{set:function(e){var t={name:"blurTextInput",description:"Set focus to the editor content div to allow tabbing through the page",bindKey:"Esc",exec:function(e){e.blur(),e.renderer.scroller.focus()},readOnly:!0},n=function(e){if(e.target==this.renderer.scroller&&e.keyCode===x.enter){e.preventDefault();var t=this.getCursorPosition().row;this.isRowVisible(t)||this.scrollToLine(t,!0,!0),this.focus()}},r;e?(this.renderer.enableKeyboardAccessibility=!0,this.renderer.keyboardFocusClassName="ace_keyboard-focus",this.textInput.getElement().setAttribute("tabindex",-1),this.textInput.setNumberOfExtraLines(u.isWin?3:0),this.renderer.scroller.setAttribute("tabindex",0),this.renderer.scroller.setAttribute("role","group"),this.renderer.scroller.setAttribute("aria-roledescription",E("editor.scroller.aria-roledescription","editor")),this.renderer.scroller.classList.add(this.renderer.keyboardFocusClassName),this.renderer.scroller.setAttribute("aria-label",E("editor.scroller.aria-label","Editor content, press Enter to start editing, press Escape to exit")),this.renderer.scroller.addEventListener("keyup",n.bind(this)),this.commands.addCommand(t),this.renderer.$gutter.setAttribute("tabindex",0),this.renderer.$gutter.setAttribute("aria-hidden",!1),this.renderer.$gutter.setAttribute("role","group"),this.renderer.$gutter.setAttribute("aria-roledescription",E("editor.gutter.aria-roledescription","editor gutter")),this.renderer.$gutter.setAttribute("aria-label",E("editor.gutter.aria-label","Editor gutter, press Enter to interact with controls using arrow keys, press Escape to exit")),this.renderer.$gutter.classList.add(this.renderer.keyboardFocusClassName),this.renderer.content.setAttribute("aria-hidden",!0),r||(r=new w(this)),r.addListener(),this.textInput.setAriaOptions({setLabel:!0})):(this.renderer.enableKeyboardAccessibility=!1,this.textInput.getElement().setAttribute("tabindex",0),this.textInput.setNumberOfExtraLines(0),this.renderer.scroller.setAttribute("tabindex",-1),this.renderer.scroller.removeAttribute("role"),this.renderer.scroller.removeAttribute("aria-roledescription"),this.renderer.scroller.classList.remove(this.renderer.keyboardFocusClassName),this.renderer.scroller.removeAttribute("aria-label"),this.renderer.scroller.removeEventListener("keyup",n.bind(this)),this.commands.removeCommand(t),this.renderer.content.removeAttribute("aria-hidden"),this.renderer.$gutter.setAttribute("tabindex",-1),this.renderer.$gutter.setAttribute("aria-hidden",!0),this.renderer.$gutter.removeAttribute("role"),this.renderer.$gutter.removeAttribute("aria-roledescription"),this.renderer.$gutter.removeAttribute("aria-label"),this.renderer.$gutter.classList.remove(this.renderer.keyboardFocusClassName),r&&r.removeListener())},initialValue:!1},textInputAriaLabel:{set:function(e){this.$textInputAriaLabel=e},initialValue:""},enableMobileMenu:{set:function(e){this.$enableMobileMenu=e},initialValue:!0},customScrollbar:"renderer",hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",displayIndentGuides:"renderer",highlightIndentGuides:"renderer",showGutter:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",hasCssTransforms:"renderer",maxPixelHeight:"renderer",useTextareaForIME:"renderer",useResizeObserver:"renderer",useSvgGutterIcons:"renderer",showFoldedAnnotations:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimeout:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",navigateWithinSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});var k={getText:function(e,t){return(Math.abs(e.selection.lead.row-t)||t+1+(t<9?"\u00b7":""))+""},getWidth:function(e,t,n){return Math.max(t.toString().length,(n.lastRow+1).toString().length,2)*n.characterWidth},update:function(e,t){t.renderer.$loop.schedule(t.renderer.CHANGE_GUTTER)},attach:function(e){e.renderer.$gutterLayer.$renderer=this,e.on("changeSelection",this.update),this.update(null,e)},detach:function(e){e.renderer.$gutterLayer.$renderer==this&&(e.renderer.$gutterLayer.$renderer=null),e.off("changeSelection",this.update),this.update(null,e)}};t.Editor=C}),define("ace/layer/lines",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=function(){function e(e,t){this.element=e,this.canvasHeight=t||5e5,this.element.style.height=this.canvasHeight*2+"px",this.cells=[],this.cellCache=[],this.$offsetCoefficient=0}return e.prototype.moveContainer=function(e){r.translate(this.element,0,-(e.firstRowScreen*e.lineHeight%this.canvasHeight)-e.offset*this.$offsetCoefficient)},e.prototype.pageChanged=function(e,t){return Math.floor(e.firstRowScreen*e.lineHeight/this.canvasHeight)!==Math.floor(t.firstRowScreen*t.lineHeight/this.canvasHeight)},e.prototype.computeLineTop=function(e,t,n){var r=t.firstRowScreen*t.lineHeight,i=Math.floor(r/this.canvasHeight),s=n.documentToScreenRow(e,0)*t.lineHeight;return s-i*this.canvasHeight},e.prototype.$getCellByScreenRow=function(e,t){var n=t.firstRowScreen*t.lineHeight,r=Math.floor(n/this.canvasHeight),i=e*t.lineHeight-r*this.canvasHeight;for(var s=this.cells.length-1;s>=0;s--){var o=this.cells[s],u=parseInt(o.element.style.top),a=parseInt(o.element.style.height);if(u<=i){if(u+as&&(a=i.end.row+1,i=t.getNextFoldLine(a,i),s=i?i.start.row:Infinity);if(a>r){while(this.$lines.getLength()>u+1)this.$lines.pop();break}o=this.$lines.get(++u),o?o.row=a:(o=this.$lines.createCell(a,e,this.session,l),this.$lines.push(o)),this.$renderCell(o,e,i,a),a++}this._signal("afterRender"),this.$updateGutterWidth(e),this.$showCursorMarker&&this.$highlightGutterLine&&this.$updateCursorMarker()},e.prototype.$updateGutterWidth=function(e){var t=this.session,n=t.gutterRenderer||this.$renderer,r=t.$firstLineNumber,i=this.$lines.last()?this.$lines.last().text:"";if(this.$fixedWidth||t.$useWrapMode)i=t.getLength()+r-1;var s=n?n.getWidth(t,i,e):i.toString().length*e.characterWidth,o=this.$padding||this.$computePadding();s+=o.left+o.right,s!==this.gutterWidth&&!isNaN(s)&&(this.gutterWidth=s,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",s))},e.prototype.$updateCursorRow=function(){if(!this.$highlightGutterLine)return;var e=this.session.selection.getCursor();if(this.$cursorRow===e.row)return;this.$cursorRow=e.row},e.prototype.updateLineHighlight=function(){this.$showCursorMarker&&this.$updateCursorMarker();if(!this.$highlightGutterLine)return;var e=this.session.selection.cursor.row;this.$cursorRow=e;if(this.$cursorCell&&this.$cursorCell.row==e)return;this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var t=this.$lines.cells;this.$cursorCell=null;for(var n=0;n=this.$cursorRow){if(r.row>this.$cursorRow){var i=this.session.getFoldLine(this.$cursorRow);if(!(n>0&&i&&i.start.row==t[n-1].row))break;r=t[n-1]}r.element.className="ace_gutter-active-line "+r.element.className,this.$cursorCell=r;break}}},e.prototype.$updateCursorMarker=function(){if(!this.session)return;var e=this.session;this.$highlightElement||(this.$highlightElement=r.createElement("div"),this.$highlightElement.className="ace_gutter-cursor",this.$highlightElement.style.pointerEvents="none",this.element.appendChild(this.$highlightElement));var t=e.selection.cursor,n=this.config,i=this.$lines,s=n.firstRowScreen*n.lineHeight,o=Math.floor(s/i.canvasHeight),u=e.documentToScreenRow(t)*n.lineHeight,a=u-o*i.canvasHeight;r.setStyle(this.$highlightElement.style,"height",n.lineHeight+"px"),r.setStyle(this.$highlightElement.style,"top",a+"px")},e.prototype.scrollLines=function(e){var t=this.config;this.config=e,this.$updateCursorRow();if(this.$lines.pageChanged(t,e))return this.update(e);this.$lines.moveContainer(e);var n=Math.min(e.lastRow+e.gutterOffset,this.session.getLength()-1),r=this.oldLastRow;this.oldLastRow=n;if(!t||r0;i--)this.$lines.shift();if(r>n)for(var i=this.session.getFoldedRowCount(n+1,r);i>0;i--)this.$lines.pop();e.firstRowr&&this.$lines.push(this.$renderLines(e,r+1,n)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(e)},e.prototype.$renderLines=function(e,t,n){var r=[],i=t,s=this.session.getNextFoldLine(i),o=s?s.start.row:Infinity;for(;;){i>o&&(i=s.end.row+1,s=this.session.getNextFoldLine(i,s),o=s?s.start.row:Infinity);if(i>n)break;var u=this.$lines.createCell(i,e,this.session,l);this.$renderCell(u,e,s,i),r.push(u),i++}return r},e.prototype.$renderCell=function(e,t,n,i){var s=e.element,o=this.session,u=s.childNodes[0],f=s.childNodes[1],l=s.childNodes[2],c=s.childNodes[3],h=l.firstChild,p=o.$firstLineNumber,d=o.$breakpoints,v=o.$decorations,m=o.gutterRenderer||this.$renderer,g=this.$showFoldWidgets&&o.foldWidgets,y=n?n.start.row:Number.MAX_VALUE,b=t.lineHeight+"px",w=this.$useSvgGutterIcons?"ace_gutter-cell_svg-icons ":"ace_gutter-cell ",E=this.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",S=(m?m.getText(o,i):i+p).toString();this.$highlightGutterLine&&(i==this.$cursorRow||n&&i=y&&this.$cursorRow<=n.end.row)&&(w+="ace_gutter-active-line ",this.$cursorCell!=e&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=e)),d[i]&&(w+=d[i]),v[i]&&(w+=v[i]),this.$annotations[i]&&i!==y&&(w+=this.$annotations[i].className);if(g){var x=g[i];x==null&&(x=g[i]=o.getFoldWidget(i))}if(x){var T="ace_fold-widget ace_"+x,N=x=="start"&&i==y&&it[r].row)return;while(n<=r){var i=Math.floor((n+r)/2),s=t[i];if(s.row>e)r=i-1;else{if(!(s.rown.right-t.right)return"foldWidgets"},e}();f.prototype.$fixedWidth=!1,f.prototype.$highlightGutterLine=!0,f.prototype.$renderer=undefined,f.prototype.$showLineNumbers=!0,f.prototype.$showFoldWidgets=!0,i.implement(f.prototype,o),t.Gutter=f}),define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,t,n){"use strict";function o(e,t,n,r){return(e?1:0)|(t?2:0)|(n?4:0)|(r?8:0)}var r=e("../range").Range,i=e("../lib/dom"),s=function(){function e(e){this.element=i.createElement("div"),this.element.className="ace_layer ace_marker-layer",e.appendChild(this.element)}return e.prototype.setPadding=function(e){this.$padding=e},e.prototype.setSession=function(e){this.session=e},e.prototype.setMarkers=function(e){this.markers=e},e.prototype.elt=function(e,t){var n=this.i!=-1&&this.element.childNodes[this.i];n?this.i++:(n=document.createElement("div"),this.element.appendChild(n),this.i=-1),n.style.cssText=t,n.className=e},e.prototype.update=function(e){if(!e)return;this.config=e,this.element.style.display="none",this.i=0;var t;for(var n in this.markers){var r=this.markers[n];if(!r.range){r.update(t,this,this.session,e);continue}var i=r.range.clipRows(e.firstRow,e.lastRow);if(i.isEmpty())continue;i=i.toScreenRange(this.session);if(r.renderer){var s=this.$getTop(i.start.row,e),o=this.$padding+e.fontMetrics.textWidth(i.start.row,i.start.column);r.renderer(t,i,o,s,e)}else r.type=="fullLine"?this.drawFullLineMarker(t,i,r.clazz,e):r.type=="screenLine"?this.drawScreenLineMarker(t,i,r.clazz,e):i.isMultiLine()?r.type=="text"?this.drawTextMarker(t,i,r.clazz,e):this.drawMultiLineMarker(t,i,r.clazz,e):this.drawSingleLineMarker(t,i,r.clazz+" ace_start"+" ace_br15",e)}if(this.i!=-1)while(this.ip,l==f),i,l==f?0:1,s)},e.prototype.drawMultiLineMarker=function(e,t,n,r,i){var s=this.$padding,o=r.lineHeight,u=this.$getTop(t.start.row,r),a=s+r.fontMetrics.textWidth(t.start.row,t.start.column);i=i||"";if(this.session.$bidiHandler.isBidiRow(t.start.row)){var f=t.clone();f.end.row=f.start.row,f.end.column=Number.MAX_VALUE,this.drawBidiSingleLineMarker(e,f,n+" ace_br1 ace_start",r,null,i)}else this.elt(n+" ace_br1 ace_start","height:"+o+"px;"+"right:"+s+"px;"+"top:"+u+"px;left:"+a+"px;"+(i||""));if(this.session.$bidiHandler.isBidiRow(t.end.row)){var f=t.clone();f.start.row=f.end.row,f.start.column=0,this.drawBidiSingleLineMarker(e,f,n+" ace_br12",r,null,i)}else{u=this.$getTop(t.end.row,r);var l=r.fontMetrics.textWidth(t.end.row,t.end.column);this.elt(n+" ace_br12","height:"+o+"px;"+"width:"+l+"px;"+"top:"+u+"px;"+"left:"+s+"px;"+(i||""))}o=(t.end.row-t.start.row-1)*r.lineHeight;if(o<=0)return;u=this.$getTop(t.start.row+1,r);var c=(t.start.column?1:0)|(t.end.column?0:8);this.elt(n+(c?" ace_br"+c:""),"height:"+o+"px;"+"right:"+s+"px;"+"top:"+u+"px;"+"left:"+s+"px;"+(i||""))},e.prototype.drawSingleLineMarker=function(e,t,n,r,i,s){if(this.session.$bidiHandler.isBidiRow(t.start.row))return this.drawBidiSingleLineMarker(e,t,n,r,i,s);var o=r.lineHeight,u=r.fontMetrics.textWidth(t.start.row,t.end.column)+(i||0)*r.characterWidth,a=this.$getTop(t.start.row,r),f=r.fontMetrics.textWidth(t.start.row,t.start.column);this.elt(n,"height:"+o+"px;"+"width:"+(u-f)+"px;"+"top:"+a+"px;"+"left:"+(this.$padding+f)+"px;"+(s||""))},e.prototype.drawBidiSingleLineMarker=function(e,t,n,r,i,s){var o=r.lineHeight,u=this.$getTop(t.start.row,r),a=this.$padding,f=this.config.fontMetrics.getRects(t.start,t.end);f.forEach(function(e){this.elt(n,"height:"+o+"px;"+"width:"+(e.width+(i||0))+"px;"+"top:"+u+"px;"+"left:"+(a+e.left)+"px;"+(s||""))},this)},e.prototype.drawFullLineMarker=function(e,t,n,r,i){var s=this.$getTop(t.start.row,r),o=r.lineHeight;t.start.row!=t.end.row&&(o+=this.$getTop(t.end.row,r)-s),this.elt(n,"height:"+o+"px;"+"top:"+s+"px;"+"left:0;right:0;"+(i||""))},e.prototype.drawScreenLineMarker=function(e,t,n,r,i){var s=this.$getTop(t.start.row,r),o=r.lineHeight;this.elt(n,"height:"+o+"px;"+"top:"+s+"px;"+"left:0;right:0;"+(i||""))},e}();s.prototype.$padding=0,t.Marker=s}),define("ace/layer/text_util",["require","exports","module"],function(e,t,n){var r=new Set(["text","rparen","lparen"]);t.isTextToken=function(e){return r.has(e)}}),define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter","ace/config","ace/layer/text_util"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/dom"),s=e("../lib/lang"),o=e("./lines").Lines,u=e("../lib/event_emitter").EventEmitter,a=e("../config").nls,f=e("./text_util").isTextToken,l=function(){function e(e){this.dom=i,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",e.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new o(this.element)}return e.prototype.$updateEolChar=function(){var e=this.session.doc,t=e.getNewLineCharacter()=="\n"&&e.getNewLineMode()!="windows",n=t?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=n)return this.EOL_CHAR=n,!0},e.prototype.setPadding=function(e){this.$padding=e,this.element.style.margin="0 "+e+"px"},e.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},e.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},e.prototype.$setFontMetrics=function(e){this.$fontMetrics=e,this.$fontMetrics.on("changeCharacterSize",function(e){this._signal("changeCharacterSize",e)}.bind(this)),this.$pollSizeChanges()},e.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},e.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},e.prototype.setSession=function(e){this.session=e,e&&this.$computeTabString()},e.prototype.setShowInvisibles=function(e){return this.showInvisibles==e?!1:(this.showInvisibles=e,typeof e=="string"?(this.showSpaces=/tab/i.test(e),this.showTabs=/space/i.test(e),this.showEOL=/eol/i.test(e)):this.showSpaces=this.showTabs=this.showEOL=e,this.$computeTabString(),!0)},e.prototype.setDisplayIndentGuides=function(e){return this.displayIndentGuides==e?!1:(this.displayIndentGuides=e,this.$computeTabString(),!0)},e.prototype.setHighlightIndentGuides=function(e){return this.$highlightIndentGuides===e?!1:(this.$highlightIndentGuides=e,e)},e.prototype.$computeTabString=function(){var e=this.session.getTabSize();this.tabSize=e;var t=this.$tabStrings=[0];for(var n=1;nl&&(u=a.end.row+1,a=this.session.getNextFoldLine(u,a),l=a?a.start.row:Infinity);if(u>i)break;var c=s[o++];if(c){this.dom.removeChildren(c),this.$renderLine(c,u,u==l?a:!1),f&&(c.style.top=this.$lines.computeLineTop(u,e,this.session)+"px");var h=e.lineHeight*this.session.getRowLength(u)+"px";c.style.height!=h&&(f=!0,c.style.height=h)}u++}if(f)while(o0;i--)this.$lines.shift();if(t.lastRow>e.lastRow)for(var i=this.session.getFoldedRowCount(e.lastRow+1,t.lastRow);i>0;i--)this.$lines.pop();e.firstRowt.lastRow&&this.$lines.push(this.$renderLinesFragment(e,t.lastRow+1,e.lastRow)),this.$highlightIndentGuide()},e.prototype.$renderLinesFragment=function(e,t,n){var r=[],s=t,o=this.session.getNextFoldLine(s),u=o?o.start.row:Infinity;for(;;){s>u&&(s=o.end.row+1,o=this.session.getNextFoldLine(s,o),u=o?o.start.row:Infinity);if(s>n)break;var a=this.$lines.createCell(s,e,this.session),f=a.element;this.dom.removeChildren(f),i.setStyle(f.style,"height",this.$lines.computeLineHeight(s,e,this.session)+"px"),i.setStyle(f.style,"top",this.$lines.computeLineTop(s,e,this.session)+"px"),this.$renderLine(f,s,s==u?o:!1),this.$useLineGroups()?f.className="ace_line_group":f.className="ace_line",r.push(a),s++}return r},e.prototype.update=function(e){this.$lines.moveContainer(e),this.config=e;var t=e.firstRow,n=e.lastRow,r=this.$lines;while(r.getLength())r.pop();r.push(this.$renderLinesFragment(e,t,n))},e.prototype.$renderToken=function(e,t,n,r){var i=this,o=/(\t)|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200C\u200E\u200f\u2028\u2029\u202F\u205F\uFEFF\uFFF9-\uFFFC\u2066\u2067\u2068\u202A\u202B\u202D\u202E\u202C\u2069\u2060\u2061\u2062\u2063\u2064\u206A\u206B\u206B\u206C\u206D\u206E\u206F]+)|(\u3000+)/g,u=this.dom.createFragment(this.element),l,c=0;while(l=o.exec(r)){var h=l[1],p=l[2],d=l[3],v=l[4];if(!i.showSpaces&&p)continue;var m=c!=l.index?r.slice(c,l.index):"";c=l.index+l[0].length,m&&u.appendChild(this.dom.createTextNode(m,this.element));if(h){var g=i.session.getScreenTabSize(t+l.index),y=i.$tabStrings[g].cloneNode(!0);y.charCount=1,u.appendChild(y),t+=g-1}else if(p)if(i.showSpaces){var b=this.dom.createElement("span");b.className="ace_invisible ace_invisible_space",b.textContent=s.stringRepeat(i.SPACE_CHAR,p.length),u.appendChild(b)}else u.appendChild(this.dom.createTextNode(p,this.element));else if(d){var b=this.dom.createElement("span");b.className="ace_invisible ace_invisible_space ace_invalid",b.textContent=s.stringRepeat(i.SPACE_CHAR,d.length),u.appendChild(b)}else if(v)if(i.showSpaces){var b=this.dom.createElement("span");b.className="ace_invisible ace_invisible_space",b.textContent=s.stringRepeat(i.CJK_SPACE_CHAR,v.length),u.appendChild(b)}else u.appendChild(this.dom.createTextNode(v,this.element))}var w=c?r.slice(c):r;if(w.length>256)for(var E=0;E=n)return t;if(t[0]==" "){r-=r%this.tabSize;var i=r/this.tabSize;for(var s=0;ss[o].start.row?this.$highlightIndentGuideMarker.dir=-1:this.$highlightIndentGuideMarker.dir=1;break}}if(!this.$highlightIndentGuideMarker.end&&e[t.row]!==""&&t.column===e[t.row].length){this.$highlightIndentGuideMarker.dir=1;for(var o=t.row+1;o0))return;r=e.element.childNodes[0]}var i=r.childNodes;if(i){var s=i[t-1];s&&s.classList&&s.classList.contains("ace_indent-guide")&&s.classList.add("ace_indent-guide-active")}}},e.prototype.$renderHighlightIndentGuide=function(){if(!this.$lines)return;var e=this.$lines.cells;this.$clearActiveIndentGuide();var t=this.$highlightIndentGuideMarker.indentLevel;if(t!==0)if(this.$highlightIndentGuideMarker.dir===1)for(var n=0;n=this.$highlightIndentGuideMarker.start+1){if(r.row>=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(r,t)}}else for(var n=e.length-1;n>=0;n--){var r=e[n];if(this.$highlightIndentGuideMarker.end&&r.row=o){u=this.$renderToken(a,u,l,c.substring(0,o-r)),c=c.substring(o-r),r=o,a=this.$createLineElement(),e.appendChild(a);var h=this.dom.createTextNode(s.stringRepeat("\u00a0",n.indent),this.element);h.charCount=0,a.appendChild(h),i++,u=0,o=n[i]||Number.MAX_VALUE}c.length!=0&&(r+=c.length,u=this.$renderToken(a,u,l,c))}}n[n.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(a,u,null,"",!0)},e.prototype.$renderSimpleLine=function(e,t){var n=0;for(var r=0;rthis.MAX_LINE_LENGTH)return this.$renderOverflowMessage(e,n,i,s);n=this.$renderToken(e,n,i,s)}},e.prototype.$renderOverflowMessage=function(e,t,n,r,i){n&&this.$renderToken(e,t,n,r.slice(0,this.MAX_LINE_LENGTH-t));var s=this.dom.createElement("span");s.className="ace_inline_button ace_keyword ace_toggle_wrap",s.textContent=i?"":"",e.appendChild(s)},e.prototype.$renderLine=function(e,t,n){!n&&n!=0&&(n=this.session.getFoldLine(t));if(n)var r=this.$getFoldLineTokens(t,n);else var r=this.session.getTokens(t);var i=e;if(r.length){var s=this.session.getRowSplitData(t);if(s&&s.length){this.$renderWrappedLine(e,r,s);var i=e.lastChild}else{var i=e;this.$useLineGroups()&&(i=this.$createLineElement(),e.appendChild(i)),this.$renderSimpleLine(i,r)}}else this.$useLineGroups()&&(i=this.$createLineElement(),e.appendChild(i));if(this.showEOL&&i){n&&(t=n.end.row);var o=this.dom.createElement("span");o.className="ace_invisible ace_invisible_eol",o.textContent=t==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,i.appendChild(o)}},e.prototype.$getFoldLineTokens=function(e,t){function i(e,t,n){var i=0,s=0;while(s+e[i].value.lengthn-t&&(o=o.substring(0,n-t)),r.push({type:e[i].type,value:o}),s=t+o.length,i+=1}while(sn?r.push({type:e[i].type,value:o.substring(0,n-s)}):r.push(e[i]),s+=o.length,i+=1}}var n=this.session,r=[],s=n.getTokens(e);return t.walk(function(e,t,o,u,a){e!=null?r.push({type:"fold",value:e}):(a&&(s=n.getTokens(t)),s.length&&i(s,u,o))},t.end.row,this.session.getLine(t.end.row).length),r},e.prototype.$useLineGroups=function(){return this.session.getUseWrapMode()},e}();l.prototype.EOF_CHAR="\u00b6",l.prototype.EOL_CHAR_LF="\u00ac",l.prototype.EOL_CHAR_CRLF="\u00a4",l.prototype.EOL_CHAR=l.prototype.EOL_CHAR_LF,l.prototype.TAB_CHAR="\u2014",l.prototype.SPACE_CHAR="\u00b7",l.prototype.CJK_SPACE_CHAR="\u30fb",l.prototype.$padding=0,l.prototype.MAX_LINE_LENGTH=1e4,l.prototype.showInvisibles=!1,l.prototype.showSpaces=!1,l.prototype.showTabs=!1,l.prototype.showEOL=!1,l.prototype.displayIndentGuides=!0,l.prototype.$highlightIndentGuides=!0,l.prototype.$tabStrings=[],l.prototype.destroy={},l.prototype.onChangeTabSize=l.prototype.$computeTabString,r.implement(l.prototype,u),t.Text=l}),define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=function(){function e(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_cursor-layer",e.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),r.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)}return e.prototype.$updateOpacity=function(e){var t=this.cursors;for(var n=t.length;n--;)r.setStyle(t[n].style,"opacity",e?"":"0")},e.prototype.$startCssAnimation=function(){var e=this.cursors;for(var t=e.length;t--;)e[t].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout(function(){this.$isAnimating&&r.addCssClass(this.element,"ace_animate-blinking")}.bind(this))},e.prototype.$stopCssAnimation=function(){this.$isAnimating=!1,r.removeCssClass(this.element,"ace_animate-blinking")},e.prototype.setPadding=function(e){this.$padding=e},e.prototype.setSession=function(e){this.session=e},e.prototype.setBlinking=function(e){e!=this.isBlinking&&(this.isBlinking=e,this.restartTimer())},e.prototype.setBlinkInterval=function(e){e!=this.blinkInterval&&(this.blinkInterval=e,this.restartTimer())},e.prototype.setSmoothBlinking=function(e){e!=this.smoothBlinking&&(this.smoothBlinking=e,r.setCssClass(this.element,"ace_smooth-blinking",e),this.$updateCursors(!0),this.restartTimer())},e.prototype.addCursor=function(){var e=r.createElement("div");return e.className="ace_cursor",this.element.appendChild(e),this.cursors.push(e),e},e.prototype.removeCursor=function(){if(this.cursors.length>1){var e=this.cursors.pop();return e.parentNode.removeChild(e),e}},e.prototype.hideCursor=function(){this.isVisible=!1,r.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},e.prototype.showCursor=function(){this.isVisible=!0,r.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},e.prototype.restartTimer=function(){var e=this.$updateCursors;clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,r.removeCssClass(this.element,"ace_smooth-blinking")),e(!0);if(!this.isBlinking||!this.blinkInterval||!this.isVisible){this.$stopCssAnimation();return}this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout(function(){this.$isSmoothBlinking&&r.addCssClass(this.element,"ace_smooth-blinking")}.bind(this)));if(r.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var t=function(){this.timeoutId=setTimeout(function(){e(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){e(!0),t()},this.blinkInterval),t()}},e.prototype.getPixelPosition=function(e,t){if(!this.config||!this.session)return{left:0,top:0,width:0};e||(e=this.session.selection.getCursor());var n=this.session.documentToScreenPosition(e),r=this.config.fontMetrics.textWidth(n.row,n.column),i=this.$padding+r,s=(n.row-(t?this.config.firstRowScreen:0))*this.config.lineHeight,o=this.config.fontMetrics.textWidth(n.row,n.column+1)-r;return{left:i,top:s,width:Math.abs(o)||this.config.characterWidth}},e.prototype.isCursorInView=function(e,t){return e.top>=0&&e.tope.height+e.offset||o.top<0)&&n>1)continue;var u=this.cursors[i++]||this.addCursor(),a=u.style;this.drawCursor?this.drawCursor(u,o,e,t[n],this.session):this.isCursorInView(o,e)?(r.setStyle(a,"display","block"),r.translate(u,o.left,o.top),r.setStyle(a,"width",Math.round(o.width)+"px"),r.setStyle(a,"height",e.lineHeight+"px")):r.setStyle(a,"display","none")}while(this.cursors.length>i)this.removeCursor();var f=this.session.getOverwrite();this.$setOverwrite(f),this.$pixelPos=o,this.restartTimer()},e.prototype.$setOverwrite=function(e){e!=this.overwrite&&(this.overwrite=e,e?r.addCssClass(this.element,"ace_overwrite-cursors"):r.removeCssClass(this.element,"ace_overwrite-cursors"))},e.prototype.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)},e}();i.prototype.$padding=0,i.prototype.drawCursor=null,t.Cursor=i}),define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("./lib/oop"),s=e("./lib/dom"),o=e("./lib/event"),u=e("./lib/event_emitter").EventEmitter,a=32768,f=function(){function e(e,t){this.element=s.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+t,this.element.tabIndex=-1,this.inner=s.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent="\u00a0",this.element.appendChild(this.inner),e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,o.addListener(this.element,"scroll",this.onScroll.bind(this)),o.addListener(this.element,"mousedown",o.preventDefault)}return e.prototype.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e,this.coeff=1},e}();i.implement(f.prototype,u);var l=function(e){function t(t,n){var r=e.call(this,t,"-v")||this;return r.scrollTop=0,r.scrollHeight=0,n.$scrollbarWidth=r.width=s.scrollbarWidth(t.ownerDocument),r.inner.style.width=r.element.style.width=(r.width||15)+5+"px",r.$minWidth=0,r}return r(t,e),t.prototype.onScroll=function(){if(!this.skipEvent){this.scrollTop=this.element.scrollTop;if(this.coeff!=1){var e=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-e)/(this.coeff-e)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},t.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},t.prototype.setHeight=function(e){this.element.style.height=e+"px"},t.prototype.setScrollHeight=function(e){this.scrollHeight=e,e>a?(this.coeff=a/e,e=a):this.coeff!=1&&(this.coeff=1),this.inner.style.height=e+"px"},t.prototype.setScrollTop=function(e){this.scrollTop!=e&&(this.skipEvent=!0,this.scrollTop=e,this.element.scrollTop=e*this.coeff)},t}(f);l.prototype.setInnerHeight=l.prototype.setScrollHeight;var c=function(e){function t(t,n){var r=e.call(this,t,"-h")||this;return r.scrollLeft=0,r.height=n.$scrollbarWidth,r.inner.style.height=r.element.style.height=(r.height||15)+5+"px",r}return r(t,e),t.prototype.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},t.prototype.getHeight=function(){return this.isVisible?this.height:0},t.prototype.setWidth=function(e){this.element.style.width=e+"px"},t.prototype.setInnerWidth=function(e){this.inner.style.width=e+"px"},t.prototype.setScrollWidth=function(e){this.inner.style.width=e+"px"},t.prototype.setScrollLeft=function(e){this.scrollLeft!=e&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=e)},t}(f);t.ScrollBar=l,t.ScrollBarV=l,t.ScrollBarH=c,t.VScrollBar=l,t.HScrollBar=c}),define("ace/scrollbar_custom",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("./lib/oop"),s=e("./lib/dom"),o=e("./lib/event"),u=e("./lib/event_emitter").EventEmitter;s.importCssString(".ace_editor>.ace_sb-v div, .ace_editor>.ace_sb-h div{\n position: absolute;\n background: rgba(128, 128, 128, 0.6);\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n border: 1px solid #bbb;\n border-radius: 2px;\n z-index: 8;\n}\n.ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h {\n position: absolute;\n z-index: 6;\n background: none;\n overflow: hidden!important;\n}\n.ace_editor>.ace_sb-v {\n z-index: 6;\n right: 0;\n top: 0;\n width: 12px;\n}\n.ace_editor>.ace_sb-v div {\n z-index: 8;\n right: 0;\n width: 100%;\n}\n.ace_editor>.ace_sb-h {\n bottom: 0;\n left: 0;\n height: 12px;\n}\n.ace_editor>.ace_sb-h div {\n bottom: 0;\n height: 100%;\n}\n.ace_editor>.ace_sb_grabbed {\n z-index: 8;\n background: #000;\n}","ace_scrollbar.css",!1);var a=function(){function e(e,t){this.element=s.createElement("div"),this.element.className="ace_sb"+t,this.inner=s.createElement("div"),this.inner.className="",this.element.appendChild(this.inner),this.VScrollWidth=12,this.HScrollHeight=12,e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,o.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return e.prototype.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e,this.coeff=1},e}();i.implement(a.prototype,u);var f=function(e){function t(t,n){var r=e.call(this,t,"-v")||this;return r.scrollTop=0,r.scrollHeight=0,r.parent=t,r.width=r.VScrollWidth,r.renderer=n,r.inner.style.width=r.element.style.width=(r.width||15)+"px",r.$minWidth=0,r}return r(t,e),t.prototype.onMouseDown=function(e,t){if(e!=="mousedown")return;if(o.getButton(t)!==0||t.detail===2)return;if(t.target===this.inner){var n=this,r=t.clientY,i=function(e){r=e.clientY},s=function(){clearInterval(l)},u=t.clientY,a=this.thumbTop,f=function(){if(r===undefined)return;var e=n.scrollTopFromThumbTop(a+r-u);if(e===n.scrollTop)return;n._emit("scroll",{data:e})};o.capture(this.inner,i,s);var l=setInterval(f,20);return o.preventDefault(t)}var c=t.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(c)}),o.preventDefault(t)},t.prototype.getHeight=function(){return this.height},t.prototype.scrollTopFromThumbTop=function(e){var t=e*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return t>>=0,t<0?t=0:t>this.pageHeight-this.viewHeight&&(t=this.pageHeight-this.viewHeight),t},t.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},t.prototype.setHeight=function(e){this.height=Math.max(0,e),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},t.prototype.setScrollHeight=function(e,t){if(this.pageHeight===e&&!t)return;this.pageHeight=e,this.thumbHeight=this.slideHeight*this.viewHeight/this.pageHeight,this.thumbHeight>this.slideHeight&&(this.thumbHeight=this.slideHeight),this.thumbHeight<15&&(this.thumbHeight=15),this.inner.style.height=this.thumbHeight+"px",this.scrollTop>this.pageHeight-this.viewHeight&&(this.scrollTop=this.pageHeight-this.viewHeight,this.scrollTop<0&&(this.scrollTop=0),this._emit("scroll",{data:this.scrollTop}))},t.prototype.setScrollTop=function(e){this.scrollTop=e,e<0&&(e=0),this.thumbTop=e*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},t}(a);f.prototype.setInnerHeight=f.prototype.setScrollHeight;var l=function(e){function t(t,n){var r=e.call(this,t,"-h")||this;return r.scrollLeft=0,r.scrollWidth=0,r.height=r.HScrollHeight,r.inner.style.height=r.element.style.height=(r.height||12)+"px",r.renderer=n,r}return r(t,e),t.prototype.onMouseDown=function(e,t){if(e!=="mousedown")return;if(o.getButton(t)!==0||t.detail===2)return;if(t.target===this.inner){var n=this,r=t.clientX,i=function(e){r=e.clientX},s=function(){clearInterval(l)},u=t.clientX,a=this.thumbLeft,f=function(){if(r===undefined)return;var e=n.scrollLeftFromThumbLeft(a+r-u);if(e===n.scrollLeft)return;n._emit("scroll",{data:e})};o.capture(this.inner,i,s);var l=setInterval(f,20);return o.preventDefault(t)}var c=t.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(c)}),o.preventDefault(t)},t.prototype.getHeight=function(){return this.isVisible?this.height:0},t.prototype.scrollLeftFromThumbLeft=function(e){var t=e*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return t>>=0,t<0?t=0:t>this.pageWidth-this.viewWidth&&(t=this.pageWidth-this.viewWidth),t},t.prototype.setWidth=function(e){this.width=Math.max(0,e),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},t.prototype.setScrollWidth=function(e,t){if(this.pageWidth===e&&!t)return;this.pageWidth=e,this.thumbWidth=this.slideWidth*this.viewWidth/this.pageWidth,this.thumbWidth>this.slideWidth&&(this.thumbWidth=this.slideWidth),this.thumbWidth<15&&(this.thumbWidth=15),this.inner.style.width=this.thumbWidth+"px",this.scrollLeft>this.pageWidth-this.viewWidth&&(this.scrollLeft=this.pageWidth-this.viewWidth,this.scrollLeft<0&&(this.scrollLeft=0),this._emit("scroll",{data:this.scrollLeft}))},t.prototype.setScrollLeft=function(e){this.scrollLeft=e,e<0&&(e=0),this.thumbLeft=e*(this.slideWidth-this.thumbWidth)/(this.pageWidth-this.viewWidth),this.inner.style.left=this.thumbLeft+"px"},t}(a);l.prototype.setInnerWidth=l.prototype.setScrollWidth,t.ScrollBar=f,t.ScrollBarV=f,t.ScrollBarH=l,t.VScrollBar=f,t.HScrollBar=l}),define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,t,n){"use strict";var r=e("./lib/event"),i=function(){function e(e,t){this.onRender=e,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=t||window;var n=this;this._flush=function(e){n.pending=!1;var t=n.changes;t&&(r.blockIdle(100),n.changes=0,n.onRender(t));if(n.changes){if(n.$recursionLimit--<0)return;n.schedule()}else n.$recursionLimit=2}}return e.prototype.schedule=function(e){this.changes=this.changes|e,this.changes&&!this.pending&&(r.nextFrame(this._flush),this.pending=!0)},e.prototype.clear=function(e){var t=this.changes;return this.changes=0,t},e}();t.RenderLoop=i}),define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){function p(e){var t=[];for(var n=0;n>0&3,d>>2&3,d>>4&3,d>>6&3],m=v.map(function(e){return l[e]}),g=m.map(function(e,t){var n=r(e,2),i=n[0],s=n[1],o=a[t],l=f[t]?u.slice(3,6):u.slice(0,3),c=u.slice(6,9),h=l[0]-o*c[0],p=l[1]-o*c[1];return[h,p,i*h,s*p,o*c[2]-l[2]]}),y=E(g),c;if(y){var b=r(y,4),S=b[0],x=b[1],T=b[2],N=b[3];T<0&&(S+=T,T=-T),N<0&&(x+=N,N=-N);if(w(u,S,x,T,N,t)){c={left:S,top:x,width:T,height:N,right:S+T,bottom:x+N,mappingIdx:p};break}}}return c||console.warn("No valid mapping found in 256 combinations."),c}function w(e,t,n,r,i,s){var o=[[t,n],[t+r,n],[t+r,n+i],[t,n+i]];return o.every(function(t){var n=b(e,t[0],t[1]);return s.left-.5<=n[0]&&n[0]<=s.left+s.width+.5&&s.top-.5<=n[1]&&n[1]<=s.top+s.height+.5})}function E(e){var t,n=4;for(var i=0;iMath.abs(e[s][i])&&(s=o);t=r([e[s],e[i]],2),e[i]=t[0],e[s]=t[1];var u=e[i][i];if(Math.abs(u)<1e-10)return null;for(var o=i;o<=n;o++)e[i][o]/=u;for(var a=0;a0)&&!(i=r.next()).done)s.push(i.value)}catch(u){o={error:u}}finally{try{i&&!i.done&&(n=r["return"])&&n.call(r)}finally{if(o)throw o.error}}return s},i=e("../lib/oop"),s=e("../lib/dom"),o=e("../lib/lang"),u=e("../lib/event"),a=e("../lib/event_emitter").EventEmitter,f=512,l=typeof ResizeObserver=="function",c=200,h=function(){function e(e,t,n){this.config={characterWidth:1},this.$characterSize={width:0,height:0},this.textLayer=t,this.renderer=n,this.el=s.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=s.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=s.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),e.appendChild(this.el),this.$measureNode.textContent=o.stringRepeat("X",f),l?this.$addObserver():this.checkForSizeChanges(),this.textLayer.$setFontMetrics(this),this.$scratchRange=document.createRange()}return e.prototype.$setMeasureNodeStyles=function(e,t){e.width=e.height="auto",e.left=e.top="0px",e.visibility="hidden",e.position="absolute",e.whiteSpace="pre",e.font="inherit",e.overflow=t?"hidden":"visible"},e.prototype.checkForSizeChanges=function(e){e===undefined&&(e=this.$measureSizes());if(e&&(this.$characterSize.width!==e.width||this.$characterSize.height!==e.height)){this.$measureNode.style.fontWeight="bold";var t=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=e,this.charSizes=Object.create(null),this.allowBoldFonts=t&&t.width===e.width&&t.height===e.height,this._emit("changeCharacterSize",{data:e})}},e.prototype.$addObserver=function(){var e=this;this.$observer=new window.ResizeObserver(function(t){e.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},e.prototype.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var e=this;return this.$pollSizeChangesTimer=u.onIdle(function t(){e.checkForSizeChanges(),u.onIdle(t,500)},500)},e.prototype.setPolling=function(e){e?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},e.prototype.$measureSizes=function(e){var t={height:(e||this.$measureNode).clientHeight,width:(e||this.$measureNode).clientWidth/f};return t.width===0||t.height===0?null:t},e.prototype.$measureCharWidth=function(e){this.$main.textContent=o.stringRepeat(e,f);var t=this.$main.getBoundingClientRect();return t.width/f},e.prototype.getCharacterWidth=function(e){var t=this.charSizes[e];return t===undefined&&(t=this.charSizes[e]=this.$measureCharWidth(e)/this.$characterSize.width),t},e.prototype.getTextWidth=function(e){return e?(this.$main.textContent=e,this.$main.clientWidth):0},e.prototype.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},e.prototype.$initTransformMeasureNodes=function(){var e=function(e,t){return["div",{style:"position: absolute;left:"+e+"px;top:"+t+"px;"}]};this.els=s.buildDom([e(0,0),e(c,0),e(0,c),e(c,c)],this.el)},e.prototype.getTransform=function(){function e(e){var t=e.getBoundingClientRect();return[t.left,t.top]}if(this.config.$transformData)return this.config.$transformData;this.els||this.$initTransformMeasureNodes();var t=e(this.els[0]),n=e(this.els[1]),r=e(this.els[2]),i=e(this.els[3]),s=d(v(i,n),v(i,r),v(m(n,r),m(i,t))),o=g((1+s[0])/c,v(n,t)),u=g((1+s[1])/c,v(r,t)),a=[o[0],u[0],0,o[1],u[1],0,s[0]/c,s[1]/c,1],f=1/(a[0]*a[4]-a[3]*a[1]),l=[a[4]*f,-a[1]*f,0,-a[3]*f,a[0]*f,0,(a[3]*a[7]-a[4]*a[6])*f,(a[1]*a[6]-a[0]*a[7])*f,1];return this.config.$transformData={M:a,MInv:l,t:t},this.config.$transformData},e.prototype.transformCoordinates=function(e,t){this.config.$transformData||this.getTransform();var n=this.config.$transformData;return t?m(b(n.M,t[0],t[1]),n.t):b(n.MInv,e[0]-n.t[0],e[1]-n.t[1])},e.prototype.recoverRect=function(e,t){var n=e.M,i=Math.abs(n[6])<1e-10&&Math.abs(n[7])<1e-10,s=t.left,o=t.top,u=t.width,a=t.height;s-=e.t[0],o-=e.t[1];if(i){var f=r(n,6),l=f[0],c=f[1],h=f[2],p=f[3],d=f[4],v=f[5],m=[Math.abs(l),Math.abs(c),Math.abs(p),Math.abs(d)],g=m[0]*m[3]-m[2]*m[1],b=void 0,w=void 0;Math.abs(g)<1e-10?(w=this.config&&this.config.lineHeight||0,b=(u-m[1]*w)/m[0]):(b=(m[3]*u-m[1]*a)/g,w=(-m[2]*u+m[0]*a)/g);var E=l*d-c*p,S=s+u/2-h,x=o+a/2-v,T=(d*S-c*x)/E,N=(-p*S+l*x)/E;return{left:T-b/2,top:N-w/2,width:b,height:w,right:T+b/2,bottom:N+w/2}}return y(e,t)},e.prototype.$findElementForScreenRow=function(e){var t=this.textLayer;if(!this.config)return null;var n=t.$lines.$getCellByScreenRow(e,this.config),r=n&&n.cell.element;if(r&&t.$useLineGroups()){var i=Math.floor(n.offset/this.config.lineHeight);r=r.children[Math.max(i,0)]}return r},e.prototype.textWidth=function(e,t){var n=this.$findElementForScreenRow(e);return!n||!document.createRange?t*this.config.characterWidth:this.$measureLineToColumn(n,t)},e.prototype.$measureLineToColumn=function(e,t){var n=this.textLayer;try{var r=this.$findColumnPosition(e,t);if(!r)return t*this.config.characterWidth;this.$scratchRange.setStart(r.node,r.offset),this.$scratchRange.setEnd(r.node,r.offset);var i=this.$scratchRange.getBoundingClientRect();if(this.renderer.$hasCssTransforms){var s=this.getTransform(),o=this.recoverRect(s,i),u=this.renderer.gutterWidth+this.renderer.margin.left+this.renderer.$padding-this.renderer.scrollLeft;return o.left-u+r.overflow*this.config.characterWidth}var a=n.element.getBoundingClientRect();return i.left-a.left+r.overflow*this.config.characterWidth}catch(f){return console.error("Error measuring text width:",f),t*this.config.characterWidth}},e.prototype.$findColumnPosition=function(e,t){var n=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,null),r=0,i,s;while(i=n.nextNode()){var o=i.nodeValue,u=o.length;if(r+u>=t)return{node:i,offset:t-r,overflow:0};r+=u,s=i}return s&&{node:s,offset:s.nodeValue.length,overflow:t-r}},e.prototype.$pixelToColumn=function(e,t,n,r,i){function p(e){if(e.nodeType===Node.TEXT_NODE){var t=e.nodeValue.length,i=Number.MAX_VALUE,s=-1,u=undefined,d=e.nodeValue;for(var v=0;v<=t;v++){o.setStart(e,v),o.setEnd(e,v);if(v>0&&v .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons {\n padding-right: 13px;\n}\n\n.ace_fold-widget, .ace_custom-widget {\n box-sizing: border-box;\n\n margin: 0 -12px 0 1px;\n display: none;\n width: 11px;\n vertical-align: top;\n\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");\n background-repeat: no-repeat;\n background-position: center;\n\n border-radius: 3px;\n \n border: 1px solid transparent;\n cursor: pointer;\n pointer-events: auto;\n}\n\n.ace_custom-widget {\n background: none;\n}\n\n.ace_folding-enabled .ace_fold-widget {\n display: inline-block; \n}\n\n.ace_fold-widget.ace_end {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");\n}\n\n.ace_fold-widget.ace_closed {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");\n}\n\n.ace_fold-widget:hover {\n border: 1px solid rgba(0, 0, 0, 0.3);\n background-color: rgba(255, 255, 255, 0.2);\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);\n}\n\n.ace_fold-widget:active {\n border: 1px solid rgba(0, 0, 0, 0.4);\n background-color: rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);\n}\n/**\n * Dark version for fold widgets\n */\n.ace_dark .ace_fold-widget {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");\n}\n.ace_dark .ace_fold-widget.ace_end {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");\n}\n.ace_dark .ace_fold-widget.ace_closed {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");\n}\n.ace_dark .ace_fold-widget:hover {\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\n background-color: rgba(255, 255, 255, 0.1);\n}\n.ace_dark .ace_fold-widget:active {\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\n}\n\n.ace_inline_button {\n border: 1px solid lightgray;\n display: inline-block;\n margin: -1px 8px;\n padding: 0 5px;\n pointer-events: auto;\n cursor: pointer;\n}\n.ace_inline_button:hover {\n border-color: gray;\n background: rgba(200,200,200,0.2);\n display: inline-block;\n pointer-events: auto;\n}\n\n.ace_fold-widget.ace_invalid {\n background-color: #FFB4B4;\n border-color: #DE5555;\n}\n\n.ace_fade-fold-widgets .ace_fold-widget {\n transition: opacity 0.4s ease 0.05s;\n opacity: 0;\n}\n\n.ace_fade-fold-widgets:hover .ace_fold-widget {\n transition: opacity 0.05s ease 0.05s;\n opacity:1;\n}\n\n.ace_underline {\n text-decoration: underline;\n}\n\n.ace_bold {\n font-weight: bold;\n}\n\n.ace_nobold .ace_bold {\n font-weight: normal;\n}\n\n.ace_italic {\n font-style: italic;\n}\n\n\n.ace_error-marker {\n background-color: rgba(255, 0, 0,0.2);\n position: absolute;\n z-index: 9;\n}\n\n.ace_highlight-marker {\n background-color: rgba(255, 255, 0,0.2);\n position: absolute;\n z-index: 8;\n}\n\n.ace_mobile-menu {\n position: absolute;\n line-height: 1.5;\n border-radius: 4px;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n background: white;\n box-shadow: 1px 3px 2px grey;\n border: 1px solid #dcdcdc;\n color: black;\n}\n.ace_dark > .ace_mobile-menu {\n background: #333;\n color: #ccc;\n box-shadow: 1px 3px 2px grey;\n border: 1px solid #444;\n\n}\n.ace_mobile-button {\n padding: 2px;\n cursor: pointer;\n overflow: hidden;\n}\n.ace_mobile-button:hover {\n background-color: #eee;\n opacity:1;\n}\n.ace_mobile-button:active {\n background-color: #ddd;\n}\n\n.ace_placeholder {\n position: relative;\n font-family: arial;\n transform: scale(0.9);\n transform-origin: left;\n white-space: pre;\n opacity: 0.7;\n margin: 0 10px;\n z-index: 1;\n}\n\n.ace_ghost_text {\n opacity: 0.5;\n font-style: italic;\n}\n\n.ace_ghost_text_container > div {\n white-space: pre;\n}\n\n.ghost_text_line_wrapped::after {\n content: "\u21a9";\n position: absolute;\n}\n\n.ace_lineWidgetContainer.ace_ghost_text {\n margin: 0px 4px\n}\n\n.ace_screenreader-only {\n position:absolute;\n left:-10000px;\n top:auto;\n width:1px;\n height:1px;\n overflow:hidden;\n}\n\n.ace_hidden_token {\n display: none;\n}'}),define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=e("../lib/oop"),s=e("../lib/event_emitter").EventEmitter,o=function(){function e(e,t){this.renderer=t,this.pixelRatio=1,this.maxHeight=t.layerConfig.maxHeight,this.lineHeight=t.layerConfig.lineHeight,this.minDecorationHeight=2*this.pixelRatio|0,this.halfMinDecorationHeight=this.minDecorationHeight/2|0,this.colors={},this.colors.dark={error:"rgba(255, 18, 18, 1)",warning:"rgba(18, 136, 18, 1)",info:"rgba(18, 18, 136, 1)"},this.colors.light={error:"rgb(255,51,51)",warning:"rgb(32,133,72)",info:"rgb(35,68,138)"},this.setScrollBarV(e)}return e.prototype.$createCanvas=function(){this.canvas=r.createElement("canvas"),this.canvas.style.top="0px",this.canvas.style.right="0px",this.canvas.style.zIndex="7",this.canvas.style.position="absolute"},e.prototype.setScrollBarV=function(e){this.$createCanvas(),this.scrollbarV=e,e.element.appendChild(this.canvas),this.setDimensions()},e.prototype.$updateDecorators=function(e){function r(e,t){return e.priorityt.priority?1:0}if(typeof this.canvas.getContext!="function")return;var t=this.renderer.theme.isDark===!0?this.colors.dark:this.colors.light;this.setDimensions(e);var n=this.canvas.getContext("2d"),i=this.renderer.session.$annotations;n.clearRect(0,0,this.canvas.width,this.canvas.height);if(i){var s={info:1,warning:2,error:3};i.forEach(function(e){e.priority=s[e.type]||null}),i=i.sort(r);for(var o=0;othis.canvasHeight&&(h=this.canvasHeight-p);var d=h-p,v=h+p,m=v-d;n.fillStyle=t[i[o].type]||null,n.fillRect(0,d,Math.round(this.oneZoneWidth-1),m)}}var g=this.renderer.session.selection.getCursor();if(g){var y=Math.round(this.getVerticalOffsetForRow(g.row)*this.heightRatio);n.fillStyle="rgba(0, 0, 0, 0.5)",n.fillRect(0,y,this.canvasWidth,2)}},e.prototype.getVerticalOffsetForRow=function(e){e|=0;var t=this.renderer.session.documentToScreenRow(e,0)*this.lineHeight;return t},e.prototype.setDimensions=function(e){e=e||this.renderer.layerConfig,this.maxHeight=e.maxHeight,this.lineHeight=e.lineHeight,this.canvasHeight=e.height,this.canvasWidth=this.scrollbarV.width||this.canvasWidth,this.setZoneWidth(),this.canvas.width=this.canvasWidth,this.canvas.height=this.canvasHeight,this.maxHeighte&&(this.$changedLines.firstRow=e),this.$changedLines.lastRowthis.layerConfig.lastRow)return;this.$loop.schedule(this.CHANGE_LINES)},e.prototype.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},e.prototype.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},e.prototype.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},e.prototype.updateFull=function(e){e?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},e.prototype.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},e.prototype.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},e.prototype.onResize=function(e,t,n,r){if(this.resizing>2)return;this.resizing>0?this.resizing++:this.resizing=e?1:0;var i=this.container;r||(r=i.clientHeight||i.scrollHeight),!r&&this.$maxLines&&this.lineHeight>1&&(!i.style.height||i.style.height=="0px")&&(i.style.height="1px",r=i.clientHeight||i.scrollHeight),n||(n=i.clientWidth||i.scrollWidth);var s=this.$updateCachedSize(e,t,n,r);this.$resizeTimer&&this.$resizeTimer.cancel();if(!this.$size.scrollerHeight||!n&&!r)return this.resizing=0;e&&(this.$gutterLayer.$padding=null),e?this.$renderChanges(s|this.$changes,!0):this.$loop.schedule(s|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.$customScrollbar&&this.$updateCustomScrollbar(!0)},e.prototype.$updateCachedSize=function(e,t,n,r){r-=this.$extraHeight||0;var s=0,o=this.$size,u={width:o.width,height:o.height,scrollerHeight:o.scrollerHeight,scrollerWidth:o.scrollerWidth};r&&(e||o.height!=r)&&(o.height=r,s|=this.CHANGE_SIZE,o.scrollerHeight=o.height,this.$horizScroll&&(o.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.setHeight(o.scrollerHeight),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",s|=this.CHANGE_SCROLL);if(n&&(e||o.width!=n)){s|=this.CHANGE_SIZE,o.width=n,t==null&&(t=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=t,i.setStyle(this.scrollBarH.element.style,"left",t+"px"),i.setStyle(this.scroller.style,"left",t+this.margin.left+"px"),o.scrollerWidth=Math.max(0,n-t-this.scrollBarV.getWidth()-this.margin.h),i.setStyle(this.$gutter.style,"left",this.margin.left+"px");var a=this.scrollBarV.getWidth()+"px";i.setStyle(this.scrollBarH.element.style,"right",a),i.setStyle(this.scroller.style,"right",a),i.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),this.scrollBarH.setWidth(o.scrollerWidth);if(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||e)s|=this.CHANGE_FULL}return o.$dirty=!n||!r,s&&this._signal("resize",u),s},e.prototype.onGutterResize=function(e){var t=this.$showGutter?e:0;t!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,t,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):this.$computeLayerConfig()},e.prototype.adjustWrapLimit=function(){var e=this.$size.scrollerWidth-this.$padding*2,t=Math.floor(e/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)},e.prototype.setAnimatedScroll=function(e){this.setOption("animatedScroll",e)},e.prototype.getAnimatedScroll=function(){return this.$animatedScroll},e.prototype.setShowInvisibles=function(e){this.setOption("showInvisibles",e),this.session.$bidiHandler.setShowInvisibles(e)},e.prototype.getShowInvisibles=function(){return this.getOption("showInvisibles")},e.prototype.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},e.prototype.setDisplayIndentGuides=function(e){this.setOption("displayIndentGuides",e)},e.prototype.getHighlightIndentGuides=function(){return this.getOption("highlightIndentGuides")},e.prototype.setHighlightIndentGuides=function(e){this.setOption("highlightIndentGuides",e)},e.prototype.setShowPrintMargin=function(e){this.setOption("showPrintMargin",e)},e.prototype.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},e.prototype.setPrintMarginColumn=function(e){this.setOption("printMarginColumn",e)},e.prototype.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},e.prototype.getShowGutter=function(){return this.getOption("showGutter")},e.prototype.setShowGutter=function(e){return this.setOption("showGutter",e)},e.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},e.prototype.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},e.prototype.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},e.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},e.prototype.$updatePrintMargin=function(){if(!this.$showPrintMargin&&!this.$printMarginEl)return;if(!this.$printMarginEl){var e=i.createElement("div");e.className="ace_layer ace_print-margin-layer",this.$printMarginEl=i.createElement("div"),this.$printMarginEl.className="ace_print-margin",e.appendChild(this.$printMarginEl),this.content.insertBefore(e,this.content.firstChild)}var t=this.$printMarginEl.style;t.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",t.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit()},e.prototype.getContainerElement=function(){return this.container},e.prototype.getMouseEventTarget=function(){return this.scroller},e.prototype.getTextAreaContainer=function(){return this.container},e.prototype.$moveTextAreaToCursor=function(){if(this.$isMousePressed)return;var e=this.textarea.style,t=this.$composition;if(!this.$keepTextAreaAtCursor&&!t){i.translate(this.textarea,-100,0);return}var n=this.$cursorLayer.$pixelPos;if(!n)return;t&&t.markerRange&&(n=this.$cursorLayer.getPixelPosition(t.markerRange.start,!0));var r=this.layerConfig,s=n.top,o=n.left;s-=r.offset;var u=t&&t.useTextareaForIME||w.isMobile?this.lineHeight:1;if(s<0||s>r.height-u){i.translate(this.textarea,0,0);return}var a=1,f=this.$size.height-u;if(!t)s+=this.lineHeight;else if(t.useTextareaForIME){var l=this.textarea.value;a=this.$fontMetrics.getTextWidth(l)+1}else s+=this.lineHeight+2;o-=this.scrollLeft,o>this.$size.scrollerWidth-a&&(o=this.$size.scrollerWidth-a),o+=this.gutterWidth+this.margin.left,i.setStyle(e,"height",u+"px"),i.setStyle(e,"width",a+"px"),i.translate(this.textarea,Math.min(o,this.$size.scrollerWidth-a),Math.min(s,f))},e.prototype.getFirstVisibleRow=function(){return this.layerConfig.firstRow},e.prototype.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)},e.prototype.getLastFullyVisibleRow=function(){var e=this.layerConfig,t=e.lastRow,n=this.session.documentToScreenRow(t,0)*e.lineHeight;return n-this.session.getScrollTop()>e.height-e.lineHeight?t-1:t},e.prototype.getLastVisibleRow=function(){return this.layerConfig.lastRow},e.prototype.setPadding=function(e){this.$padding=e,this.$textLayer.setPadding(e),this.$cursorLayer.setPadding(e),this.$markerFront.setPadding(e),this.$markerBack.setPadding(e),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},e.prototype.setScrollMargin=function(e,t,n,r){var i=this.scrollMargin;i.top=e|0,i.bottom=t|0,i.right=r|0,i.left=n|0,i.v=i.top+i.bottom,i.h=i.left+i.right,i.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-i.top),this.updateFull()},e.prototype.setMargin=function(e,t,n,r){var i=this.margin;i.top=e|0,i.bottom=t|0,i.right=r|0,i.left=n|0,i.v=i.top+i.bottom,i.h=i.left+i.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},e.prototype.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},e.prototype.setHScrollBarAlwaysVisible=function(e){this.setOption("hScrollBarAlwaysVisible",e)},e.prototype.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},e.prototype.setVScrollBarAlwaysVisible=function(e){this.setOption("vScrollBarAlwaysVisible",e)},e.prototype.$updateScrollBarV=function(){var e=this.layerConfig.maxHeight,t=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(e-=(t-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>e-t&&(e=this.scrollTop+t,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(e+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},e.prototype.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},e.prototype.freeze=function(){this.$frozen=!0},e.prototype.unfreeze=function(){this.$frozen=!1},e.prototype.$renderChanges=function(e,t){this.$changes&&(e|=this.$changes,this.$changes=0);if(!this.session||!this.container.offsetWidth||this.$frozen||!e&&!t){this.$changes|=e;return}if(this.$size.$dirty)return this.$changes|=e,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",e);var n=this.layerConfig;if(e&this.CHANGE_FULL||e&this.CHANGE_SIZE||e&this.CHANGE_TEXT||e&this.CHANGE_LINES||e&this.CHANGE_SCROLL||e&this.CHANGE_H_SCROLL){e|=this.$computeLayerConfig()|this.$loop.clear();if(n.firstRow!=this.layerConfig.firstRow&&n.firstRowScreen==this.layerConfig.firstRowScreen){var r=this.scrollTop+(n.firstRow-Math.max(this.layerConfig.firstRow,0))*this.lineHeight;r>0&&(this.scrollTop=r,e|=this.CHANGE_SCROLL,e|=this.$computeLayerConfig()|this.$loop.clear())}n=this.layerConfig}e&this.CHANGE_H_SCROLL&&(this.$updateContentTransformAndSize(n,e),this.scroller.className=this.scrollLeft<=0?"ace_scroller ":"ace_scroller ace_scroll-left ",this.enableKeyboardAccessibility&&(this.scroller.className+=this.keyboardFocusClassName));if(e&this.CHANGE_FULL){this.$changedLines=null,this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$updateContentTransformAndSize(n,e),this.$moveTextAreaToCursor(),this._signal("afterRender",e);return}if(e&this.CHANGE_SCROLL){this.$changedLines=null,e&this.CHANGE_TEXT||e&this.CHANGE_LINES?this.$textLayer.update(n):this.$textLayer.scrollLines(n),this.$showGutter&&(e&this.CHANGE_GUTTER||e&this.CHANGE_LINES?this.$gutterLayer.update(n):this.$gutterLayer.scrollLines(n)),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$updateContentTransformAndSize(n,e),this.$moveTextAreaToCursor(),this._signal("afterRender",e);return}e&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n),this.$updateContentTransformAndSize(n,e)):e&this.CHANGE_LINES?((this.$updateLines()||e&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n)):e&this.CHANGE_TEXT||e&this.CHANGE_GUTTER?(this.$showGutter&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n)):e&this.CHANGE_CURSOR&&(this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n)),e&this.CHANGE_CURSOR&&(this.$cursorLayer.update(n),this.$moveTextAreaToCursor()),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(n),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(n),this._signal("afterRender",e)},e.prototype.$autosize=function(){var e=this.session.getScreenLength()*this.lineHeight,t=this.$maxLines*this.lineHeight,n=Math.min(t,Math.max((this.$minLines||1)*this.lineHeight,e))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(n+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&n>this.$maxPixelHeight&&(n=this.$maxPixelHeight);var r=n<=2*this.lineHeight,i=!r&&e>t;if(n!=this.desiredHeight||this.$size.height!=this.desiredHeight||i!=this.$vScroll){i!=this.$vScroll&&(this.$vScroll=i,this.scrollBarV.setVisible(i));var s=this.container.clientWidth;this.container.style.height=n+"px",this.$updateCachedSize(!0,this.$gutterWidth,s,n),this.desiredHeight=n,this._signal("autosize")}},e.prototype.$updateContentTransformAndSize=function(e,t){var n=this.scrollMargin;if(this.session&&!this.session.getUseWrapMode()){var r=this.$getLongestRenderedLine();e.widthe&&(e=o)}return e},e.prototype.$computeLayerConfig=function(){var e=this.session,t=this.$size,n=t.height<=2*this.lineHeight,r=this.session.getScreenLength(),i=r*this.lineHeight,s=this.$getLongestLine(),o=!n&&(this.$hScrollBarAlwaysVisible||t.scrollerWidth-s-2*this.$padding<0),u=this.$horizScroll!==o;u&&(this.$horizScroll=o,this.scrollBarH.setVisible(o));var a=this.$vScroll;this.$maxLines&&this.lineHeight>1&&(this.$autosize(),n=t.height<=2*this.lineHeight);var f=t.scrollerHeight+this.lineHeight,l=!this.$maxLines&&this.$scrollPastEnd?(t.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;i+=l;var c=this.scrollMargin;this.session.setScrollTop(Math.max(-c.top,Math.min(this.scrollTop,i-t.scrollerHeight+c.bottom)));var h=!n&&(this.$vScrollBarAlwaysVisible||t.scrollerHeight-i+l<0||this.scrollTop>c.top),p=a!==h;p&&(this.$vScroll=h,this.scrollBarV.setVisible(h));var d=this.scrollTop%this.lineHeight,v=Math.ceil(f/this.lineHeight)-1,m=Math.max(0,Math.round((this.scrollTop-d)/this.lineHeight)),g=m+v,y,b,w=this.lineHeight;m=e.screenToDocumentRow(m,0);var E=e.getFoldLine(m);E&&(m=E.start.row),y=e.documentToScreenRow(m,0),b=e.getRowLength(m)*w,g=Math.min(e.screenToDocumentRow(g,0),e.getLength()-1),f=t.scrollerHeight+e.getRowLength(g)*w+b,d=this.scrollTop-y*w,d<0&&y>0&&(y=Math.max(0,y+Math.floor(d/w)),d=this.scrollTop-y*w);var S=0;if(this.layerConfig.width!=s||u)S=this.CHANGE_H_SCROLL;if(u||p)S|=this.$updateCachedSize(!0,this.gutterWidth,t.width,t.height),this._signal("scrollbarVisibilityChanged"),p&&(s=this.$getLongestLine());return this.layerConfig={width:s,padding:this.$padding,firstRow:m,firstRowScreen:y,lastRow:g,lineHeight:w,characterWidth:this.characterWidth,fontMetrics:this.$fontMetrics,minHeight:f,maxHeight:i,offset:d,gutterOffset:w?Math.max(0,Math.ceil((d+t.height-t.scrollerHeight)/w)):0,height:this.$size.scrollerHeight},this.$fontMetrics.config=this.layerConfig,this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(s-this.$padding),S},e.prototype.$updateLines=function(){if(!this.$changedLines)return;var e=this.$changedLines.firstRow,t=this.$changedLines.lastRow;this.$changedLines=null;var n=this.layerConfig;if(e>n.lastRow+1)return;if(tthis.$textLayer.MAX_LINE_LENGTH&&(e=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(e*this.characterWidth))},e.prototype.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},e.prototype.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},e.prototype.addGutterDecoration=function(e,t){this.$gutterLayer.addGutterDecoration(e,t)},e.prototype.removeGutterDecoration=function(e,t){this.$gutterLayer.removeGutterDecoration(e,t)},e.prototype.updateBreakpoints=function(e){this._rows=e,this.$loop.schedule(this.CHANGE_GUTTER)},e.prototype.setAnnotations=function(e){this.$gutterLayer.setAnnotations(e),this.$loop.schedule(this.CHANGE_GUTTER)},e.prototype.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},e.prototype.hideCursor=function(){this.$cursorLayer.hideCursor()},e.prototype.showCursor=function(){this.$cursorLayer.showCursor()},e.prototype.scrollSelectionIntoView=function(e,t,n){this.scrollCursorIntoView(e,n),this.scrollCursorIntoView(t,n)},e.prototype.scrollCursorIntoView=function(e,t,n){if(this.$size.scrollerHeight===0)return;var r=this.$cursorLayer.getPixelPosition(e),i=r.left,s=r.top,o=n&&n.top||0,u=n&&n.bottom||0;this.$scrollAnimation&&(this.$stopAnimation=!0);var a=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;a+o>s?(t&&a+o>s+this.lineHeight&&(s-=t*this.$size.scrollerHeight),s===0&&(s=-this.scrollMargin.top),this.session.setScrollTop(s)):a+this.$size.scrollerHeight-u=1-this.scrollMargin.top)return!0;if(t>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom)return!0;if(e<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left)return!0;if(e>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},e.prototype.pixelToScreenCoordinates=function(e,t){var n;if(this.$hasCssTransforms){n={top:this.margin.top,left:this.gutterWidth+this.margin.left};var r=this.$fontMetrics.transformCoordinates([e,t]);e=r[0],t=r[1]}else n=this.scroller.getBoundingClientRect();var i=e+this.scrollLeft-n.left-this.$padding,s=i/this.characterWidth,o=(t+this.scrollTop-n.top)/this.lineHeight,u=this.$blockCursor?Math.floor(s):Math.round(s);return u=this.$fontMetrics.$pixelToColumn(o,u,e,this.$blockCursor),{row:o,column:u,side:s-u>0?1:-1,offsetX:i}},e.prototype.screenToTextCoordinates=function(e,t){var n=this.pixelToScreenCoordinates(e,t);return this.session.screenToDocumentPosition(n.row,Math.max(n.column,0))},e.prototype.textToScreenCoordinates=function(e,t){var n=this.session.documentToScreenPosition(e,t),r=this.$padding+this.$fontMetrics.textWidth(n.row,n.column),i=n.row*this.lineHeight;if(this.$hasCssTransforms){var s=this.$fontMetrics.transformCoordinates(null,[this.gutterWidth+this.margin.left+r-this.scrollLeft,this.margin.top+i-this.scrollTop]);return{pageX:s[0],pageY:s[1]}}var o=this.scroller.getBoundingClientRect();return{pageX:o.left+r-this.scrollLeft,pageY:o.top+i-this.scrollTop}},e.prototype.visualizeFocus=function(){i.addCssClass(this.container,"ace_focus")},e.prototype.visualizeBlur=function(){i.removeCssClass(this.container,"ace_focus")},e.prototype.showComposition=function(e){this.$composition=e,e.cssText||(e.cssText=this.textarea.style.cssText),e.useTextareaForIME==undefined&&(e.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(i.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):e.markerId=this.session.addMarker(e.markerRange,"ace_composition_marker","text")},e.prototype.setCompositionText=function(e){var t=this.session.selection.cursor;this.addToken(e,"composition_placeholder",t.row,t.column),this.$moveTextAreaToCursor()},e.prototype.hideComposition=function(){if(!this.$composition)return;this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),i.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var e=this.session.selection.cursor;this.removeExtraToken(e.row,e.column),this.$composition=null,this.$cursorLayer.element.style.display=""},e.prototype.setGhostText=function(e,t){var n=this.session.selection.cursor,r=t||{row:n.row,column:n.column};this.removeGhostText();var s=this.$calculateWrappedTextChunks(e,r);this.addToken(s[0].text,"ghost_text",r.row,r.column),this.$ghostText={text:e,position:{row:r.row,column:r.column}};var o=i.createElement("div");if(s.length>1){var u=this.hideTokensAfterPosition(r.row,r.column),a;s.slice(1).forEach(function(e){var t=i.createElement("div"),n=i.createElement("span");n.className="ace_ghost_text",e.wrapped&&(t.className="ghost_text_line_wrapped"),e.text.length===0&&(e.text=" "),n.appendChild(i.createTextNode(e.text)),t.appendChild(n),o.appendChild(t),a=t}),u.forEach(function(e){var t=i.createElement("span");E(e.type)||(t.className="ace_"+e.type.replace(/\./g," ace_")),t.appendChild(i.createTextNode(e.value)),a.appendChild(t)}),this.$ghostTextWidget={el:o,row:r.row,column:r.column,className:"ace_ghost_text_container"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget);var f=this.$cursorLayer.getPixelPosition(r,!0),l=this.container,c=l.getBoundingClientRect().height,h=s.length*this.lineHeight,p=h0){var f=0;a.push(i[o].length);for(var l=0;l1||Math.abs(e.$size.height-r)>1?e.$resizeTimer.delay():e.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)},e}();S.prototype.CHANGE_CURSOR=1,S.prototype.CHANGE_MARKER=2,S.prototype.CHANGE_GUTTER=4,S.prototype.CHANGE_SCROLL=8,S.prototype.CHANGE_LINES=16,S.prototype.CHANGE_TEXT=32,S.prototype.CHANGE_SIZE=64,S.prototype.CHANGE_MARKER_BACK=128,S.prototype.CHANGE_MARKER_FRONT=256,S.prototype.CHANGE_FULL=512,S.prototype.CHANGE_H_SCROLL=1024,S.prototype.$changes=0,S.prototype.$padding=null,S.prototype.$frozen=!1,S.prototype.STEPS=8,r.implement(S.prototype,g),o.defineOptions(S.prototype,"renderer",{useResizeObserver:{set:function(e){!e&&this.$resizeObserver?(this.$resizeObserver.disconnect(),this.$resizeTimer.cancel(),this.$resizeTimer=this.$resizeObserver=null):e&&!this.$resizeObserver&&this.$addResizeObserver()}},animatedScroll:{initialValue:!1},showInvisibles:{set:function(e){this.$textLayer.setShowInvisibles(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(e){typeof e=="number"&&(this.$printMarginColumn=e),this.$showPrintMargin=!!e,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(e){this.$gutter.style.display=e?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},useSvgGutterIcons:{set:function(e){this.$gutterLayer.$useSvgGutterIcons=e},initialValue:!1},showFoldedAnnotations:{set:function(e){this.$gutterLayer.$showFoldedAnnotations=e},initialValue:!1},fadeFoldWidgets:{set:function(e){i.setCssClass(this.$gutter,"ace_fade-fold-widgets",e)},initialValue:!1},showFoldWidgets:{set:function(e){this.$gutterLayer.setShowFoldWidgets(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(e){this.$textLayer.setDisplayIndentGuides(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightIndentGuides:{set:function(e){this.$textLayer.setHighlightIndentGuides(e)==1?this.$textLayer.$highlightIndentGuide():this.$textLayer.$clearActiveIndentGuide(this.$textLayer.$lines.cells)},initialValue:!0},highlightGutterLine:{set:function(e){this.$gutterLayer.setHighlightGutterLine(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(e){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(e){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(e){typeof e=="number"&&(e+="px"),this.container.style.fontSize=e,this.updateFontSize()},initialValue:12},fontFamily:{set:function(e){this.container.style.fontFamily=e,this.updateFontSize()}},maxLines:{set:function(e){this.updateFull()}},minLines:{set:function(e){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(e){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(e){e=+e||0;if(this.$scrollPastEnd==e)return;this.$scrollPastEnd=e,this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(e){this.$gutterLayer.$fixedWidth=!!e,this.$loop.schedule(this.CHANGE_GUTTER)}},customScrollbar:{set:function(e){this.$updateCustomScrollbar(e)},initialValue:!1},theme:{set:function(e){this.setTheme(e)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!w.isMobile&&!w.isIE}}),t.VirtualRenderer=S}),define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(e,t,n){"use strict";function u(e){var t="importScripts('"+i.qualifyURL(e)+"');";try{return new Blob([t],{type:"application/javascript"})}catch(n){var r=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,s=new r;return s.append(t),s.getBlob("application/javascript")}}function a(e){if(typeof Worker=="undefined")return{postMessage:function(){},terminate:function(){}};if(o.get("loadWorkerFromBlob")){var t=u(e),n=window.URL||window.webkitURL,r=n.createObjectURL(t);return new Worker(r)}return new Worker(e)}var r=e("../lib/oop"),i=e("../lib/net"),s=e("../lib/event_emitter").EventEmitter,o=e("../config"),f=function(e){e.postMessage||(e=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=e,this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){r.implement(this,s),this.$createWorkerFromOldConfig=function(t,n,r,i,s){e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl);if(o.get("packaged")||!e.toUrl)i=i||o.moduleUrl(n,"worker");else{var u=this.$normalizePath;i=i||u(e.toUrl("ace/worker/worker.js",null,"_"));var f={};t.forEach(function(t){f[t]=u(e.toUrl(t,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=a(i),s&&this.send("importScripts",s),this.$worker.postMessage({init:!0,tlns:f,module:n,classname:r}),this.$worker},this.onMessage=function(e){var t=e.data;switch(t.type){case"event":this._signal(t.name,{data:t.data});break;case"call":var n=this.callbacks[t.id];n&&(n(t.data),delete this.callbacks[t.id]);break;case"error":this.reportError(t.data);break;case"log":window.console&&console.log&&console.log.apply(console,t.data)}},this.reportError=function(e){window.console&&console.error&&console.error(e)},this.$normalizePath=function(e){return i.qualifyURL(e)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker.onerror=function(e){e.preventDefault()},this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(e,t){this.$worker.postMessage({command:e,args:t})},this.call=function(e,t,n){if(n){var r=this.callbackId++;this.callbacks[r]=n,t.push(r)}this.send(e,t)},this.emit=function(e,t){try{t.data&&t.data.err&&(t.data.err={message:t.data.err.message,stack:t.data.err.stack,code:t.data.err.code}),this.$worker&&this.$worker.postMessage({event:e,data:{data:t.data}})}catch(n){console.error(n.stack)}},this.attachToDocument=function(e){this.$doc&&this.terminate(),this.$doc=e,this.call("setValue",[e.getValue()]),e.on("change",this.changeListener,!0)},this.changeListener=function(e){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),e.action=="insert"?this.deltaQueue.push(e.start,e.lines):this.deltaQueue.push(e.start,e.end)},this.$sendDeltaQueue=function(){var e=this.deltaQueue;if(!e)return;this.deltaQueue=null,e.length>50&&e.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:e})}}).call(f.prototype);var l=function(e,t,n){var r=null,i=!1,u=Object.create(s),a=[],l=new f({messageBuffer:a,terminate:function(){},postMessage:function(e){a.push(e);if(!r)return;i?setTimeout(c):c()}});l.setEmitSync=function(e){i=e};var c=function(){var e=a.shift();e.command?r[e.command].apply(r,e.args):e.event&&u._signal(e.event,e.data)};return u.postMessage=function(e){l.onMessage({data:e})},u.callback=function(e,t){this.postMessage({type:"call",id:t,data:e})},u.emit=function(e,t){this.postMessage({type:"event",name:e,data:t})},o.loadModule(["worker",t],function(e){r=new e[n](u);while(a.length)c()}),l};t.UIWorkerClient=l,t.WorkerClient=f,t.createWorker=a}),define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,t,n){"use strict";var r=e("./range").Range,i=e("./lib/event_emitter").EventEmitter,s=e("./lib/oop"),o=function(){function e(e,t,n,r,i,s){var o=this;this.length=t,this.session=e,this.doc=e.getDocument(),this.mainClass=i,this.othersClass=s,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate,!0),this.$others=r,this.$onCursorChange=function(){setTimeout(function(){o.onCursorChange()})},this.$pos=n;var u=e.getUndoManager().$undoStack||e.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=u.length,this.setup(),e.selection.on("changeCursor",this.$onCursorChange)}return e.prototype.setup=function(){var e=this,t=this.doc,n=this.session;this.selectionBefore=n.selection.toJSON(),n.selection.inMultiSelectMode&&n.selection.toSingleRange(),this.pos=t.createAnchor(this.$pos.row,this.$pos.column);var i=this.pos;i.$insertRight=!0,i.detach(),i.markerId=n.addMarker(new r(i.row,i.column,i.row,i.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(n){var r=t.createAnchor(n.row,n.column);r.$insertRight=!0,r.detach(),e.others.push(r)}),n.setUndoSelect(!1)},e.prototype.showOtherMarkers=function(){if(this.othersActive)return;var e=this.session,t=this;this.othersActive=!0,this.others.forEach(function(n){n.markerId=e.addMarker(new r(n.row,n.column,n.row,n.column+t.length),t.othersClass,null,!1)})},e.prototype.hideOtherMarkers=function(){if(!this.othersActive)return;this.othersActive=!1;for(var e=0;e=this.pos.column&&t.start.column<=this.pos.column+this.length+1,s=t.start.column-this.pos.column;this.updateAnchors(e),i&&(this.length+=n);if(i&&!this.session.$fromUndo)if(e.action==="insert")for(var o=this.others.length-1;o>=0;o--){var u=this.others[o],a={row:u.row,column:u.column+s};this.doc.insertMergedLines(a,e.lines)}else if(e.action==="remove")for(var o=this.others.length-1;o>=0;o--){var u=this.others[o],a={row:u.row,column:u.column+s};this.doc.remove(new r(a.row,a.column,a.row,a.column-n))}this.$updating=!1,this.updateMarkers()},e.prototype.updateAnchors=function(e){this.pos.onChange(e);for(var t=this.others.length;t--;)this.others[t].onChange(e);this.updateMarkers()},e.prototype.updateMarkers=function(){if(this.$updating)return;var e=this,t=this.session,n=function(n,i){t.removeMarker(n.markerId),n.markerId=t.addMarker(new r(n.row,n.column,n.row,n.column+e.length),i,null,!1)};n(this.pos,this.mainClass);for(var i=this.others.length;i--;)n(this.others[i],this.othersClass)},e.prototype.onCursorChange=function(e){if(this.$updating||!this.session)return;var t=this.session.selection.getCursor();t.row===this.pos.row&&t.column>=this.pos.column&&t.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",e)):(this.hideOtherMarkers(),this._emit("cursorLeave",e))},e.prototype.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.off("change",this.$onUpdate),this.session.selection.off("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},e.prototype.cancel=function(){if(this.$undoStackDepth===-1)return;var e=this.session.getUndoManager(),t=(e.$undoStack||e.$undostack).length-this.$undoStackDepth;for(var n=0;n1?e.multiSelect.joinSelections():e.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(e){e.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(e){e.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(e){e.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],t.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(e){e.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(e){return e&&e.inMultiSelectMode}}];var r=e("../keyboard/hash_handler").HashHandler;t.keyboardHandler=new r(t.multiSelectCommands)}),define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(e,t,n){function h(e,t,n){return c.$options.wrap=!0,c.$options.needle=t,c.$options.backwards=n==-1,c.find(e)}function v(e,t){return e.row==t.row&&e.column==t.column}function m(e){if(e.$multiselectOnSessionChange)return;e.$onAddRange=e.$onAddRange.bind(e),e.$onRemoveRange=e.$onRemoveRange.bind(e),e.$onMultiSelect=e.$onMultiSelect.bind(e),e.$onSingleSelect=e.$onSingleSelect.bind(e),e.$multiselectOnSessionChange=t.onSessionChange.bind(e),e.$checkMultiselectChange=e.$checkMultiselectChange.bind(e),e.$multiselectOnSessionChange(e),e.on("changeSession",e.$multiselectOnSessionChange),e.on("mousedown",o),e.commands.addCommands(f.defaultCommands),g(e)}function g(e){function r(t){n&&(e.renderer.setMouseCursor(""),n=!1)}if(!e.textInput)return;var t=e.textInput.getElement(),n=!1;u.addListener(t,"keydown",function(t){var i=t.keyCode==18&&!(t.ctrlKey||t.shiftKey||t.metaKey);e.$blockSelectEnabled&&i?n||(e.renderer.setMouseCursor("crosshair"),n=!0):n&&r()},e),u.addListener(t,"keyup",r,e),u.addListener(t,"blur",r,e)}var r=e("./range_list").RangeList,i=e("./range").Range,s=e("./selection").Selection,o=e("./mouse/multi_select_handler").onMouseDown,u=e("./lib/event"),a=e("./lib/lang"),f=e("./commands/multi_select_commands");t.commands=f.defaultCommands.concat(f.multiSelectCommands);var l=e("./search").Search,c=new l,p=e("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(p.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(e,t){if(!e)return;if(!this.inMultiSelectMode&&this.rangeCount===0){var n=this.toOrientedRange();this.rangeList.add(n),this.rangeList.add(e);if(this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),t||this.fromOrientedRange(e);this.rangeList.removeAll(),this.rangeList.add(n),this.$onAddRange(n)}e.cursor||(e.cursor=e.end);var r=this.rangeList.add(e);return this.$onAddRange(e),r.length&&this.$onRemoveRange(r),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),t||this.fromOrientedRange(e)},this.toSingleRange=function(e){e=e||this.ranges[0];var t=this.rangeList.removeAll();t.length&&this.$onRemoveRange(t),e&&this.fromOrientedRange(e)},this.substractPoint=function(e){var t=this.rangeList.substractPoint(e);if(t)return this.$onRemoveRange(t),t[0]},this.mergeOverlappingRanges=function(){var e=this.rangeList.merge();e.length&&this.$onRemoveRange(e)},this.$onAddRange=function(e){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(e),this._signal("addRange",{range:e})},this.$onRemoveRange=function(e){this.rangeCount=this.rangeList.ranges.length;if(this.rangeCount==1&&this.inMultiSelectMode){var t=this.rangeList.ranges.pop();e.push(t),this.rangeCount=0}for(var n=e.length;n--;){var r=this.ranges.indexOf(e[n]);r!=-1&&this.ranges.splice(r,1)}this._signal("removeRange",{ranges:e}),this.rangeCount===0&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),t=t||this.ranges[0],t&&!t.isEqual(this.getRange())&&this.fromOrientedRange(t)},this.$initRangeList=function(){if(this.rangeList)return;this.rangeList=new r,this.ranges=[],this.rangeCount=0},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){var e=this.ranges.length?this.ranges:[this.getRange()],t=[];for(var n=0;n1){var e=this.rangeList.ranges,t=e[e.length-1],n=i.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(n,t.cursor==t.start)}else{var r=this.session.documentToScreenPosition(this.cursor),s=this.session.documentToScreenPosition(this.anchor),o=this.rectangularRangeBlock(r,s);o.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(e,t,n){var r=[],s=e.column0)d--;if(d>0){var m=0;while(r[m].isEmpty())m++}for(var g=d;g>=m;g--)r[g].isEmpty()&&r.splice(g,1)}return r}}.call(s.prototype);var d=e("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(e){e.cursor||(e.cursor=e.end);var t=this.getSelectionStyle();return e.marker=this.session.addMarker(e,"ace_selection",t),this.session.$selectionMarkers.push(e),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,e},this.removeSelectionMarker=function(e){if(!e.marker)return;this.session.removeMarker(e.marker);var t=this.session.$selectionMarkers.indexOf(e);t!=-1&&this.session.$selectionMarkers.splice(t,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length},this.removeSelectionMarkers=function(e){var t=this.session.$selectionMarkers;for(var n=e.length;n--;){var r=e[n];if(!r.marker)continue;this.session.removeMarker(r.marker);var i=t.indexOf(r);i!=-1&&t.splice(i,1)}this.session.selectionMarkerCount=t.length},this.$onAddRange=function(e){this.addSelectionMarker(e.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(e){this.removeSelectionMarkers(e.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(e){if(this.inMultiSelectMode)return;this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(f.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onSingleSelect=function(e){if(this.session.multiSelect.inVirtualMode)return;this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(f.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection")},this.$onMultiSelectExec=function(e){var t=e.command,n=e.editor;if(!n.multiSelect)return;if(!t.multiSelectAction){var r=t.exec(n,e.args||{});n.multiSelect.addRange(n.multiSelect.toOrientedRange()),n.multiSelect.mergeOverlappingRanges()}else t.multiSelectAction=="forEach"?r=n.forEachSelection(t,e.args):t.multiSelectAction=="forEachLine"?r=n.forEachSelection(t,e.args,!0):t.multiSelectAction=="single"?(n.exitMultiSelectMode(),r=t.exec(n,e.args||{})):r=t.multiSelectAction(n,e.args||{});return r},this.forEachSelection=function(e,t,n){if(this.inVirtualSelectionMode)return;var r=n&&n.keepOrder,i=n==1||n&&n.$byLines,o=this.session,u=this.selection,a=u.rangeList,f=(r?u:a).ranges,l;if(!f.length)return e.exec?e.exec(this,t||{}):e(this,t||{});var c=u._eventRegistry;u._eventRegistry={};var h=new s(o);this.inVirtualSelectionMode=!0;try{for(var p=f.length;p--;){if(i)while(p>0&&f[p].start.row==f[p-1].end.row)p--;h.fromOrientedRange(f[p]),h.index=p,this.selection=o.selection=h;var d=e.exec?e.exec(this,t||{}):e(this,t||{});!l&&d!==undefined&&(l=d),h.toOrientedRange(f[p])}h.detach()}finally{this.selection=o.selection=u,this.inVirtualSelectionMode=!1,u._eventRegistry=c,u.mergeOverlappingRanges(),u.ranges[0]&&u.fromOrientedRange(u.ranges[0]);var v=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),v&&v.from==v.to&&this.renderer.animateScrolling(v.from),l}},this.exitMultiSelectMode=function(){if(!this.inMultiSelectMode||this.inVirtualSelectionMode)return;this.multiSelect.toSingleRange()},this.getSelectedText=function(){var e="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var t=this.multiSelect.rangeList.ranges,n=[];for(var r=0;r0);u<0&&(u=0),f>=c&&(f=c-1)}var p=this.session.removeFullLines(u,f);p=this.$reAlignText(p,l),this.session.insert({row:u,column:0},p.join("\n")+"\n"),l||(o.start.column=0,o.end.column=p[p.length-1].length),this.selection.setRange(o)}else{s.forEach(function(e){t.substractPoint(e.cursor)});var d=0,v=Infinity,m=n.map(function(t){var n=t.cursor,r=e.getLine(n.row),i=r.substr(n.column).search(/\S/g);return i==-1&&(i=0),n.column>d&&(d=n.column),io?e.insert(r,a.stringRepeat(" ",s-o)):e.remove(new i(r.row,r.column,r.row,r.column-s+o)),t.start.column=t.end.column=d,t.start.row=t.end.row=r.row,t.cursor=t.end}),t.fromOrientedRange(n[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(e,t){function u(e){return a.stringRepeat(" ",e)}function f(e){return e[2]?u(i)+e[2]+u(s-e[2].length+o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function l(e){return e[2]?u(i+s-e[2].length)+e[2]+u(o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function c(e){return e[2]?u(i)+e[2]+u(o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}var n=!0,r=!0,i,s,o;return e.map(function(e){var t=e.match(/(\s*)(.*?)(\s*)([=:].*)/);return t?i==null?(i=t[1].length,s=t[2].length,o=t[3].length,t):(i+s+o!=t[1].length+t[2].length+t[3].length&&(r=!1),i!=t[1].length&&(n=!1),i>t[1].length&&(i=t[1].length),st[3].length&&(o=t[3].length),t):[e]}).map(t?f:n?r?l:f:c)}}).call(d.prototype),t.onSessionChange=function(e){var t=e.session;t&&!t.multiSelect&&(t.$selectionMarkers=[],t.selection.$initRangeList(),t.multiSelect=t.selection),this.multiSelect=t&&t.multiSelect;var n=e.oldSession;n&&(n.multiSelect.off("addRange",this.$onAddRange),n.multiSelect.off("removeRange",this.$onRemoveRange),n.multiSelect.off("multiSelect",this.$onMultiSelect),n.multiSelect.off("singleSelect",this.$onSingleSelect),n.multiSelect.lead.off("change",this.$checkMultiselectChange),n.multiSelect.anchor.off("change",this.$checkMultiselectChange)),t&&(t.multiSelect.on("addRange",this.$onAddRange),t.multiSelect.on("removeRange",this.$onRemoveRange),t.multiSelect.on("multiSelect",this.$onMultiSelect),t.multiSelect.on("singleSelect",this.$onSingleSelect),t.multiSelect.lead.on("change",this.$checkMultiselectChange),t.multiSelect.anchor.on("change",this.$checkMultiselectChange)),t&&this.inMultiSelectMode!=t.selection.inMultiSelectMode&&(t.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},t.MultiSelect=m,e("./config").defineOptions(d.prototype,"editor",{enableMultiselect:{set:function(e){m(this),e?this.on("mousedown",o):this.off("mousedown",o)},value:!0},enableBlockSelect:{set:function(e){this.$blockSelectEnabled=e},value:!0}})}),define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../../range").Range,i=t.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);return this.foldingStartMarker.test(r)?"start":t=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(r)?"end":""},this.getFoldWidgetRange=function(e,t,n){return null},this.indentationBlock=function(e,t,n){var i=/\S/,s=e.getLine(t),o=s.search(i);if(o==-1)return;var u=n||s.length,a=e.getLength(),f=t,l=t;while(++tf){var p=e.getLine(l).length;return new r(f,u,l,p)}},this.openingBracketBlock=function(e,t,n,i,s){var o={row:n,column:i+1},u=e.$findClosingBracket(t,o,s);if(!u)return;var a=e.foldWidgets[u.row];return a==null&&(a=e.getFoldWidget(u.row)),a=="start"&&u.row>o.row&&(u.row--,u.column=e.getLine(u.row).length),r.fromPoints(o,u)},this.closingBracketBlock=function(e,t,n,i,s){var o={row:n,column:i},u=e.$findOpeningBracket(t,o);if(!u)return;return u.column++,o.column--,r.fromPoints(u,o)}}).call(i.prototype)}),define("ace/ext/error_marker",["require","exports","module","ace/lib/dom","ace/range","ace/config"],function(e,t,n){"use strict";function o(e,t,n){var r=0,i=e.length-1;while(r<=i){var s=r+i>>1,o=n(t,e[s]);if(o>0)r=s+1;else{if(!(o<0))return s;i=s-1}}return-(r+1)}function u(e,t,n){var r=e.getAnnotations().sort(i.comparePoints);if(!r.length)return;var s=o(r,{row:t,column:-1},i.comparePoints);s<0&&(s=-s-1),s>=r.length?s=n>0?0:r.length-1:s===0&&n<0&&(s=r.length-1);var u=r[s];if(!u||!n)return;if(u.row===t){do u=r[s+=n];while(u&&u.row===t);if(!u)return r.slice()}var a=[];t=u.row;do a[n<0?"unshift":"push"](u),u=r[s+=n];while(u&&u.row==t);return a.length&&a}var r=e("../lib/dom"),i=e("../range").Range,s=e("../config").nls;t.showErrorMarker=function(e,t){var n=e.session,i=e.getCursorPosition(),o=i.row,a=n.widgetManager.getWidgetsAtRow(o).filter(function(e){return e.type=="errorMarker"})[0];a?a.destroy():o-=t;var f=u(n,o,t),l;if(f){var c=f[0];i.column=(c.pos&&typeof c.column!="number"?c.pos.sc:c.column)||0,i.row=c.row,l=e.renderer.$gutterLayer.$annotations[i.row]}else{if(a)return;l={displayText:[s("error-marker.good-state","Looks good!")],className:"ace_ok"}}e.session.unfold(i.row),e.selection.moveToPosition(i);var h={row:i.row,fixedWidth:!0,coverGutter:!0,el:r.createElement("div"),type:"errorMarker"},p=h.el.appendChild(r.createElement("div")),d=h.el.appendChild(r.createElement("div"));d.className="error_widget_arrow "+l.className;var v=e.renderer.$cursorLayer.getPixelPosition(i).left;d.style.left=v+e.renderer.gutterWidth-5+"px",h.el.className="error_widget_wrapper",p.className="error_widget "+l.className,l.displayText.forEach(function(e,t){p.appendChild(r.createTextNode(e)),tn.length)t=n.length;t-=e.length;var r=n.indexOf(e,t);return r!==-1&&r===t}),String.prototype.repeat||r(String.prototype,"repeat",function(e){var t="",n=this;while(e>0){e&1&&(t+=n);if(e>>=1)n+=n}return t}),String.prototype.includes||r(String.prototype,"includes",function(e,t){return this.indexOf(e,t)!=-1}),Object.assign||(Object.assign=function(e){if(e===undefined||e===null)throw new TypeError("Cannot convert undefined or null to object");var t=Object(e);for(var n=1;n>>0,r=arguments[1],i=r>>0,s=i<0?Math.max(n+i,0):Math.min(i,n),o=arguments[2],u=o===undefined?n:o>>0,a=u<0?Math.max(n+u,0):Math.min(u,n);while(s0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n65535?2:1}}),define("ace/lib/useragent",["require","exports","module"],function(e,t,n){"use strict";t.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},t.getOS=function(){return t.isMac?t.OS.MAC:t.isLinux?t.OS.LINUX:t.OS.WINDOWS};var r=typeof navigator=="object"?navigator:{},i=(/mac|win|linux/i.exec(r.platform)||["other"])[0].toLowerCase(),s=r.userAgent||"",o=r.appName||"";t.isWin=i=="win",t.isMac=i=="mac",t.isLinux=i=="linux",t.isIE=o=="Microsoft Internet Explorer"||o.indexOf("MSAppHost")>=0?parseFloat((s.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((s.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),t.isOldIE=t.isIE&&t.isIE<9,t.isGecko=t.isMozilla=s.match(/ Gecko\/\d+/),t.isOpera=typeof opera=="object"&&Object.prototype.toString.call(window["opera"])=="[object Opera]",t.isWebKit=parseFloat(s.split("WebKit/")[1])||undefined,t.isChrome=parseFloat(s.split(" Chrome/")[1])||undefined,t.isSafari=parseFloat(s.split(" Safari/")[1])&&!t.isChrome||undefined,t.isEdge=parseFloat(s.split(" Edge/")[1])||undefined,t.isAIR=s.indexOf("AdobeAIR")>=0,t.isAndroid=s.indexOf("Android")>=0,t.isChromeOS=s.indexOf(" CrOS ")>=0,t.isIOS=/iPad|iPhone|iPod/.test(s)&&!window.MSStream,t.isIOS&&(t.isMac=!0),t.isMobile=t.isIOS||t.isAndroid}),define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(e,t,n){"use strict";function u(){var e=o;o=null,e&&e.forEach(function(e){a(e[0],e[1])})}function a(e,n,r){if(typeof document=="undefined")return;if(o)if(r)u();else if(r===!1)return o.push([e,n]);if(s)return;var i=r;if(!r||!r.getRootNode)i=document;else{i=r.getRootNode();if(!i||i==r)i=document}var a=i.ownerDocument||i;if(n&&t.hasCssString(n,i))return null;n&&(e+="\n/*# sourceURL=ace/css/"+n+" */");var f=t.createElement("style");f.appendChild(a.createTextNode(e)),n&&(f.id=n),i==a&&(i=t.getDocumentHead(a)),i.insertBefore(f,i.firstChild)}var r=e("./useragent"),i="http://www.w3.org/1999/xhtml";t.buildDom=function l(e,t,n){if(typeof e=="string"&&e){var r=document.createTextNode(e);return t&&t.appendChild(r),r}if(!Array.isArray(e))return e&&e.appendChild&&t&&t.appendChild(e),e;if(typeof e[0]!="string"||!e[0]){var i=[];for(var s=0;s1&&(e.style.left=2*n-r+"px")}if(e.style.right){var n=parseFloat(e.style.right),r=window.innerWidth-t.right;Math.abs(n-r)>1&&(e.style.right=2*n-r+"px")}if(e.style.top){var n=parseFloat(e.style.top),r=+t.top;Math.abs(n-r)>1&&(e.style.top=2*n-r+"px")}if(e.style.bottom){var n=parseFloat(e.style.bottom),r=window.innerHeight-t.bottom;Math.abs(n-r)>1&&(e.style.bottom=2*n-r+"px")}},t.scrollbarWidth=function(e){var n=t.createElement("ace_inner");n.style.width="100%",n.style.minWidth="0px",n.style.height="200px",n.style.display="block";var r=t.createElement("ace_outer"),i=r.style;i.position="absolute",i.left="-10000px",i.overflow="hidden",i.width="200px",i.minWidth="0px",i.height="150px",i.display="block",r.appendChild(n);var s=e&&e.documentElement||document&&document.documentElement;if(!s)return 0;s.appendChild(r);var o=n.offsetWidth;i.overflow="scroll";var u=n.offsetWidth;return o===u&&(u=r.clientWidth),s.removeChild(r),o-u},t.computedStyle=function(e,t){return window.getComputedStyle(e,"")||{}},t.setStyle=function(e,t,n){e[t]!==n&&(e[t]=n)},t.HAS_CSS_ANIMATION=!1,t.HAS_CSS_TRANSFORMS=!1,t.HI_DPI=r.isWin?typeof window!="undefined"&&window.devicePixelRatio>=1.5:!0,r.isChromeOS&&(t.HI_DPI=!1);if(typeof document!="undefined"){var f=document.createElement("div");t.HI_DPI&&f.style.transform!==undefined&&(t.HAS_CSS_TRANSFORMS=!0),!r.isEdge&&typeof f.style.animationName!="undefined"&&(t.HAS_CSS_ANIMATION=!0),f=null}t.HAS_CSS_TRANSFORMS?t.translate=function(e,t,n){e.style.transform="translate("+Math.round(t)+"px, "+Math.round(n)+"px)"}:t.translate=function(e,t,n){e.style.top=Math.round(n)+"px",e.style.left=Math.round(t)+"px"}}),define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("./dom");t.get=function(e,t){var n=new XMLHttpRequest;n.open("GET",e,!0),n.onreadystatechange=function(){n.readyState===4&&t(n.responseText)},n.send(null)},t.loadScript=function(e,t){var n=r.getDocumentHead(),i=document.createElement("script");i.src=e,n.appendChild(i),i.onload=i.onreadystatechange=function(e,n){if(n||!i.readyState||i.readyState=="loaded"||i.readyState=="complete")i=i.onload=i.onreadystatechange=null,n||t()}},t.qualifyURL=function(e){var t=document.createElement("a");return t.href=e,t.href}}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){"use strict";var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o1&&(i=n[n.length-2]);var o=u[t+"Path"];return o==null?o=u.basePath:r=="/"&&(t=r=""),o&&o.slice(-1)!="/"&&(o+="/"),o+t+r+i+this.get("suffix")},t.setModuleUrl=function(e,t){return u.$moduleUrls[e]=t};var a=function(t,n){if(t==="ace/theme/textmate"||t==="./theme/textmate")return n(null,e("./theme/textmate"));if(f)return f(t,n);console.error("loader is not configured")},f;t.setLoader=function(e){f=e},t.dynamicModules=Object.create(null),t.$loading={},t.$loaded={},t.loadModule=function(e,n){var r;if(Array.isArray(e))var s=e[0],o=e[1];else if(typeof e=="string")var o=e;var u=function(e){if(e&&!t.$loading[o])return n&&n(e);t.$loading[o]||(t.$loading[o]=[]),t.$loading[o].push(n);if(t.$loading[o].length>1)return;var r=function(){a(o,function(e,n){n&&(t.$loaded[o]=n),t._emit("load.module",{name:o,module:n});var r=t.$loading[o];t.$loading[o]=null,r.forEach(function(e){e&&e(n)})})};if(!t.get("packaged"))return r();i.loadScript(t.moduleUrl(o,s),r),l()};if(t.dynamicModules[o])t.dynamicModules[o]().then(function(e){e.default?u(e.default):u(e)});else{try{r=this.$require(o)}catch(f){}u(r||t.$loaded[o])}},t.$require=function(e){if(typeof n["require"]=="function"){var t="require";return n[t](e)}},t.setModuleLoader=function(e,n){t.dynamicModules[e]=n};var l=function(){!u.basePath&&!u.workerPath&&!u.modePath&&!u.themePath&&!Object.keys(u.$moduleUrls).length&&(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),l=function(){})};t.version="1.45.2"}),define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(e,t,n){"use strict";function s(t){if(!i||!i.document)return;r.set("packaged",t||e.packaged||n.packaged||i.define&&define.packaged);var s={},u="",a=document.currentScript||document._currentScript,f=a&&a.ownerDocument||document;a&&a.src&&(u=a.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");var l=f.getElementsByTagName("script");for(var c=0;c ["+this.end.row+"/"+this.end.column+"]"},e.prototype.contains=function(e,t){return this.compare(e,t)==0},e.prototype.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},e.prototype.comparePoint=function(e){return this.compare(e.row,e.column)},e.prototype.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},e.prototype.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},e.prototype.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},e.prototype.isStart=function(e,t){return this.start.row==e&&this.start.column==t},e.prototype.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},e.prototype.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},e.prototype.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},e.prototype.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},e.prototype.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},e.prototype.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?tthis.end.column?1:0:ethis.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},e.prototype.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},e.prototype.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.clipRows=function(t,n){if(this.end.row>n)var r={row:n+1,column:0};else if(this.end.rown)var i={row:n+1,column:0};else if(this.start.row1?(u++,u>4&&(u=1)):u=1;if(i.isIE){var o=Math.abs(e.clientX-a)>5||Math.abs(e.clientY-f)>5;if(!l||o)u=1;l&&clearTimeout(l),l=setTimeout(function(){l=null},n[u-1]||600),u==1&&(a=e.clientX,f=e.clientY)}e._clicks=u,r[s]("mousedown",e);if(u>4)u=0;else if(u>1)return r[s](h[u],e)}var u=0,a,f,l,h={2:"dblclick",3:"tripleclick",4:"quadclick"};Array.isArray(e)||(e=[e]),e.forEach(function(e){c(e,"mousedown",p,o)})},t.getModifierString=function(e){return r.KEY_MODS[p(e)]},t.addCommandKeyListener=function(e,n,r){var i=null;c(e,"keydown",function(e){s[e.keyCode]=(s[e.keyCode]||0)+1;var t=d(n,e,e.keyCode);return i=e.defaultPrevented,t},r),c(e,"keypress",function(e){i&&(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey)&&(t.stopEvent(e),i=null)},r),c(e,"keyup",function(e){s[e.keyCode]=null},r),s||(v(),c(window,"focus",v))};if(typeof window=="object"&&window.postMessage&&!i.isOldIE){var m=1;t.nextTick=function(e,n){n=n||window;var r="zero-timeout-message-"+m++,i=function(s){s.data==r&&(t.stopPropagation(s),h(n,"message",i),e())};c(n,"message",i),n.postMessage(r,"*")}}t.$idleBlocked=!1,t.onIdle=function(e,n){return setTimeout(function r(){t.$idleBlocked?setTimeout(r,100):e()},n)},t.$idleBlockId=null,t.blockIdle=function(e){t.$idleBlockId&&clearTimeout(t.$idleBlockId),t.$idleBlocked=!0,t.$idleBlockId=setTimeout(function(){t.$idleBlocked=!1},e||100)},t.nextFrame=typeof window=="object"&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),t.nextFrame?t.nextFrame=t.nextFrame.bind(window):t.nextFrame=function(e){setTimeout(e,17)}}),define("ace/clipboard",["require","exports","module"],function(e,t,n){"use strict";var r;n.exports={lineMode:!1,pasteCancelled:function(){return r&&r>Date.now()-50?!0:r=!1},cancel:function(){r=Date.now()}}}),define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/config","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(e,t,n){"use strict";var r=e("../lib/event"),i=e("../config").nls,s=e("../lib/useragent"),o=e("../lib/dom"),u=e("../lib/lang"),a=e("../clipboard"),f=s.isChrome<18,l=s.isIE,c=s.isChrome>63,h=400,p=e("../lib/keys"),d=p.KEY_MODS,v=s.isIOS,m=v?/\s/:/\n/,g=s.isMobile,y=function(){function e(e,t){var n=this;this.host=t,this.text=o.createElement("textarea"),this.text.className="ace_text-input",this.text.setAttribute("wrap","off"),this.text.setAttribute("autocomplete","off"),this.text.setAttribute("autocorrect","off"),this.text.setAttribute("autocapitalize","off"),this.text.setAttribute("spellcheck","false"),this.text.style.opacity="0",e.insertBefore(this.text,e.firstChild),this.copied=!1,this.pasted=!1,this.inComposition=!1,this.sendingText=!1,this.tempStyle="",g||(this.text.style.fontSize="1px"),this.commandMode=!1,this.ignoreFocusEvents=!1,this.lastValue="",this.lastSelectionStart=0,this.lastSelectionEnd=0,this.lastRestoreEnd=0,this.rowStart=Number.MAX_SAFE_INTEGER,this.rowEnd=Number.MIN_SAFE_INTEGER,this.numberOfExtraLines=0;try{this.$isFocused=document.activeElement===this.text}catch(i){}this.cancelComposition=this.cancelComposition.bind(this),this.setAriaOptions({role:"textbox"}),r.addListener(this.text,"blur",function(e){if(n.ignoreFocusEvents)return;t.onBlur(e),n.$isFocused=!1},t),r.addListener(this.text,"focus",function(e){if(n.ignoreFocusEvents)return;n.$isFocused=!0;if(s.isEdge)try{if(!document.hasFocus())return}catch(e){}t.onFocus(e),s.isEdge?setTimeout(n.resetSelection.bind(n)):n.resetSelection()},t),this.$focusScroll=!1,t.on("beforeEndOperation",function(){var e=t.curOp,r=e&&e.command&&e.command.name;if(r=="insertstring")return;var i=r&&(e.docChanged||e.selectionChanged);n.inComposition&&i&&(n.lastValue=n.text.value="",n.onCompositionEnd()),n.resetSelection()}),t.on("changeSelection",this.setAriaLabel.bind(this)),this.resetSelection=v?this.$resetSelectionIOS:this.$resetSelection,this.$isFocused&&t.onFocus(),this.inputHandler=null,this.afterContextMenu=!1,r.addCommandKeyListener(this.text,function(e,r,i){if(n.inComposition)return;return t.onCommandKey(e,r,i)},t),r.addListener(this.text,"select",this.onSelect.bind(this),t),r.addListener(this.text,"input",this.onInput.bind(this),t),r.addListener(this.text,"cut",this.onCut.bind(this),t),r.addListener(this.text,"copy",this.onCopy.bind(this),t),r.addListener(this.text,"paste",this.onPaste.bind(this),t),(!("oncut"in this.text)||!("oncopy"in this.text)||!("onpaste"in this.text))&&r.addListener(e,"keydown",function(e){if(s.isMac&&!e.metaKey||!e.ctrlKey)return;switch(e.keyCode){case 67:n.onCopy(e);break;case 86:n.onPaste(e);break;case 88:n.onCut(e)}},t),this.syncComposition=u.delayedCall(this.onCompositionUpdate.bind(this),50).schedule.bind(null,null),r.addListener(this.text,"compositionstart",this.onCompositionStart.bind(this),t),r.addListener(this.text,"compositionupdate",this.onCompositionUpdate.bind(this),t),r.addListener(this.text,"keyup",this.onKeyup.bind(this),t),r.addListener(this.text,"keydown",this.syncComposition.bind(this),t),r.addListener(this.text,"compositionend",this.onCompositionEnd.bind(this),t),this.closeTimeout,r.addListener(this.text,"mouseup",this.$onContextMenu.bind(this),t),r.addListener(this.text,"mousedown",function(e){e.preventDefault(),n.onContextMenuClose()},t),r.addListener(t.renderer.scroller,"contextmenu",this.$onContextMenu.bind(this),t),r.addListener(this.text,"contextmenu",this.$onContextMenu.bind(this),t),v&&this.addIosSelectionHandler(e,t,this.text)}return e.prototype.addIosSelectionHandler=function(e,t,n){var r=this,i=null,s=!1;n.addEventListener("keydown",function(e){i&&clearTimeout(i),s=!0},!0),n.addEventListener("keyup",function(e){i=setTimeout(function(){s=!1},100)},!0);var o=function(e){if(document.activeElement!==n)return;if(s||r.inComposition||t.$mouseHandler.isMousePressed)return;if(r.copied)return;var i=n.selectionStart,o=n.selectionEnd,u=null,a=0;if(i==0)u=p.up;else if(i==1)u=p.home;else if(o>r.lastSelectionEnd&&r.lastValue[o]=="\n")u=p.end;else if(ir.lastSelectionEnd&&r.lastValue.slice(0,o).split("\n").length>2)u=p.down;else if(o>r.lastSelectionEnd&&r.lastValue[o-1]==" ")u=p.right,a=d.option;else if(o>r.lastSelectionEnd||o==r.lastSelectionEnd&&r.lastSelectionEnd!=r.lastSelectionStart&&i==o)u=p.right;i!==o&&(a|=d.shift);if(u){var f=t.onCommandKey({},a,u);if(!f&&t.commands){u=p.keyCodeToString(u);var l=t.commands.findKeyCommand(a,u);l&&t.execCommand(l)}r.lastSelectionStart=i,r.lastSelectionEnd=o,r.resetSelection("")}};document.addEventListener("selectionchange",o),t.on("destroy",function(){document.removeEventListener("selectionchange",o)})},e.prototype.onContextMenuClose=function(){var e=this;clearTimeout(this.closeTimeout),this.closeTimeout=setTimeout(function(){e.tempStyle&&(e.text.style.cssText=e.tempStyle,e.tempStyle=""),e.host.renderer.$isMousePressed=!1,e.host.renderer.$keepTextAreaAtCursor&&e.host.renderer.$moveTextAreaToCursor()},0)},e.prototype.$onContextMenu=function(e){this.host.textInput.onContextMenu(e),this.onContextMenuClose()},e.prototype.onKeyup=function(e){e.keyCode==27&&this.text.value.lengthh+100||m.test(n)||g&&this.lastSelectionStart<1&&this.lastSelectionStart==this.lastSelectionEnd)&&this.resetSelection()},e.prototype.sendText=function(e,t){this.afterContextMenu&&(this.afterContextMenu=!1);if(this.pasted)return this.resetSelection(),e&&this.host.onPaste(e),this.pasted=!1,"";var n=this.text.selectionStart,r=this.text.selectionEnd,i=this.lastSelectionStart,o=this.lastValue.length-this.lastSelectionEnd,u=e,a=e.length-n,f=e.length-r,l=0;while(i>0&&this.lastValue[l]==e[l])l++,i--;u=u.slice(l),l=1;while(o>0&&this.lastValue.length-l>this.lastSelectionStart-1&&this.lastValue[this.lastValue.length-l]==e[e.length-l])l++,o--;a-=l-1,f-=l-1;var c=u.length-l+1;c<0&&(i=-c,c=0),u=u.slice(0,c);if(!t&&!u&&!a&&!i&&!o&&!f)return"";this.sendingText=!0;var h=!1;return s.isAndroid&&u==". "&&(u=" ",h=!0),u&&!i&&!o&&!a&&!f||this.commandMode?this.host.onTextInput(u):this.host.onTextInput(u,{extendLeft:i,extendRight:o,restoreStart:a,restoreEnd:f}),this.sendingText=!1,this.lastValue=e,this.lastSelectionStart=n,this.lastSelectionEnd=r,this.lastRestoreEnd=f,h?"\n":u},e.prototype.onSelect=function(e){var t=this;if(this.inComposition)return;var n=function(e){return e.selectionStart===0&&e.selectionEnd>=t.lastValue.length&&e.value===t.lastValue&&t.lastValue&&e.selectionEnd!==t.lastSelectionEnd};this.copied?this.copied=!1:n(this.text)?(this.host.selectAll(),this.resetSelection()):g&&this.text.selectionStart!=this.lastSelectionStart&&this.resetSelection()},e.prototype.$resetSelectionIOS=function(e){if(!this.$isFocused||this.copied&&!e||this.sendingText)return;e||(e="");var t="\n ab"+e+"cde fg\n";t!=this.text.value&&(this.text.value=this.lastValue=t);var n=4,r=4+(e.length||(this.host.selection.isEmpty()?0:1));(this.lastSelectionStart!=n||this.lastSelectionEnd!=r)&&this.text.setSelectionRange(n,r),this.lastSelectionStart=n,this.lastSelectionEnd=r},e.prototype.$resetSelection=function(){var e=this;if(this.inComposition||this.sendingText)return;if(!this.$isFocused&&!this.afterContextMenu)return;this.inComposition=!0;var t=0,n=0,r="",i=function(t,n){var r=n;for(var i=1;i<=t-e.rowStart&&i<2*e.numberOfExtraLines+1;i++)r+=e.host.session.getLine(t-i).length+1;return r};if(this.host.session){var s=this.host.selection,o=s.getRange(),u=s.cursor.row;if(u===this.rowEnd+1)this.rowStart=this.rowEnd+1,this.rowEnd=this.rowStart+2*this.numberOfExtraLines;else if(u===this.rowStart-1)this.rowEnd=this.rowStart-1,this.rowStart=this.rowEnd-2*this.numberOfExtraLines;else if(uthis.rowEnd+1)this.rowStart=u>this.numberOfExtraLines?u-this.numberOfExtraLines:0,this.rowEnd=u>this.numberOfExtraLines?u+this.numberOfExtraLines:2*this.numberOfExtraLines;var a=[];for(var f=this.rowStart;f<=this.rowEnd;f++)a.push(this.host.session.getLine(f));r=a.join("\n"),t=i(o.start.row,o.start.column),n=i(o.end.row,o.end.column);if(o.start.rowthis.rowEnd){var c=this.host.session.getLine(this.rowEnd+1);n=o.end.row>this.rowEnd+1?c.length:o.end.column,n+=r.length+1,r=r+"\n"+c}else g&&u>0&&(r="\n"+r,n+=1,t+=1);r.length>h&&(t1),e.preventDefault()},e.prototype.startSelect=function(e,t){e=e||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var n=this.editor;if(!this.mousedownEvent)return;this.mousedownEvent.getShiftKey()?n.selection.selectToPosition(e):t||n.selection.moveToPosition(e),t||this.select(),n.setStyle("ace_selecting"),this.setState("select")},e.prototype.select=function(){var e,t=this.editor,n=t.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var r=this.$clickSelection.comparePoint(n);if(r==-1)e=this.$clickSelection.end;else if(r==1)e=this.$clickSelection.start;else{var i=a(this.$clickSelection,n,t.session);n=i.cursor,e=i.anchor}t.selection.setSelectionAnchor(e.row,e.column)}t.selection.selectToPosition(n),t.renderer.scrollCursorIntoView()},e.prototype.extendSelectionBy=function(e){var t,n=this.editor,r=n.renderer.screenToTextCoordinates(this.x,this.y),i=n.selection[e](r.row,r.column);if(this.$clickSelection){var s=this.$clickSelection.comparePoint(i.start),o=this.$clickSelection.comparePoint(i.end);if(s==-1&&o<=0){t=this.$clickSelection.end;if(i.end.row!=r.row||i.end.column!=r.column)r=i.start}else if(o==1&&s>=0){t=this.$clickSelection.start;if(i.start.row!=r.row||i.start.column!=r.column)r=i.end}else if(s==-1&&o==1)r=i.end,t=i.start;else{var u=a(this.$clickSelection,r,n.session);r=u.cursor,t=u.anchor}n.selection.setSelectionAnchor(t.row,t.column)}n.selection.selectToPosition(r),n.renderer.scrollCursorIntoView()},e.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},e.prototype.focusWait=function(){var e=u(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(e>i||t-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},e.prototype.onDoubleClick=function(e){var t=e.getDocumentPosition(),n=this.editor,r=n.session,i=r.getBracketRange(t);i?(i.isEmpty()&&(i.start.column--,i.end.column++),this.setState("select")):(i=n.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=i,this.select()},e.prototype.onTripleClick=function(e){var t=e.getDocumentPosition(),n=this.editor;this.setState("selectByLines");var r=n.getSelectionRange();r.isMultiLine()&&r.contains(t.row,t.column)?(this.$clickSelection=n.selection.getLineRange(r.start.row),this.$clickSelection.end=n.selection.getLineRange(r.end.row).end):this.$clickSelection=n.selection.getLineRange(t.row),this.select()},e.prototype.onQuadClick=function(e){var t=this.editor;t.selectAll(),this.$clickSelection=t.getSelectionRange(),this.setState("selectAll")},e.prototype.onMouseWheel=function(e){if(e.getAccelKey())return;e.getShiftKey()&&e.wheelY&&!e.wheelX&&(e.wheelX=e.wheelY,e.wheelY=0);var t=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var n=this.$lastScroll,r=e.domEvent.timeStamp,i=r-n.t,o=i?e.wheelX/i:n.vx,u=i?e.wheelY/i:n.vy;i=1&&t.renderer.isScrollableBy(e.wheelX*e.speed,0)&&(f=!0),a<=1&&t.renderer.isScrollableBy(0,e.wheelY*e.speed)&&(f=!0);if(f)n.allowed=r;else if(r-n.allowedn.clientHeight;r||t.preventDefault()}}),define("ace/tooltip",["require","exports","module","ace/lib/dom","ace/lib/event","ace/range","ace/lib/scroll"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=this&&this.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},s=e("./lib/dom"),o=e("./lib/event"),u=e("./range").Range,a=e("./lib/scroll").preventParentScroll,f="ace_tooltip",l=function(){function e(e){this.isOpen=!1,this.$element=null,this.$parentNode=e}return e.prototype.$init=function(){return this.$element=s.createElement("div"),this.$element.className=f,this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},e.prototype.getElement=function(){return this.$element||this.$init()},e.prototype.setText=function(e){this.getElement().textContent=e},e.prototype.setHtml=function(e){this.getElement().innerHTML=e},e.prototype.setPosition=function(e,t){this.getElement().style.left=e+"px",this.getElement().style.top=t+"px"},e.prototype.setClassName=function(e){s.addCssClass(this.getElement(),e)},e.prototype.setTheme=function(e){this.theme&&(this.theme.isDark&&s.removeCssClass(this.getElement(),"ace_dark"),this.theme.cssClass&&s.removeCssClass(this.getElement(),this.theme.cssClass)),e.isDark&&s.addCssClass(this.getElement(),"ace_dark"),e.cssClass&&s.addCssClass(this.getElement(),e.cssClass),this.theme={isDark:e.isDark,cssClass:e.cssClass}},e.prototype.show=function(e,t,n){e!=null&&this.setText(e),t!=null&&n!=null&&this.setPosition(t,n),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},e.prototype.hide=function(e){this.isOpen&&(this.getElement().style.display="none",this.getElement().className=f,this.isOpen=!1)},e.prototype.getHeight=function(){return this.getElement().offsetHeight},e.prototype.getWidth=function(){return this.getElement().offsetWidth},e.prototype.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)},e}(),c=function(){function e(){this.popups=[]}return e.prototype.addPopup=function(e){this.popups.push(e),this.updatePopups()},e.prototype.removePopup=function(e){var t=this.popups.indexOf(e);t!==-1&&(this.popups.splice(t,1),this.updatePopups())},e.prototype.updatePopups=function(){var e,t,n,r;this.popups.sort(function(e,t){return t.priority-e.priority});var s=[];try{for(var o=i(this.popups),u=o.next();!u.done;u=o.next()){var a=u.value,f=!0;try{for(var l=(n=void 0,i(s)),c=l.next();!c.done;c=l.next()){var h=c.value;if(this.doPopupsOverlap(h,a)){f=!1;break}}}catch(p){n={error:p}}finally{try{c&&!c.done&&(r=l.return)&&r.call(l)}finally{if(n)throw n.error}}f?s.push(a):a.hide()}}catch(d){e={error:d}}finally{try{u&&!u.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}},e.prototype.doPopupsOverlap=function(e,t){var n=e.getElement().getBoundingClientRect(),r=t.getElement().getBoundingClientRect();return n.leftr.left&&n.topr.top},e}(),h=new c;t.popupManager=h,t.Tooltip=l;var p=function(e){function t(t){t===void 0&&(t=document.body);var n=e.call(this,t)||this;n.timeout=undefined,n.lastT=0,n.idleTime=350,n.lastEvent=undefined,n.onMouseOut=n.onMouseOut.bind(n),n.onMouseMove=n.onMouseMove.bind(n),n.waitForHover=n.waitForHover.bind(n),n.hide=n.hide.bind(n);var r=n.getElement();return r.style.whiteSpace="pre-wrap",r.style.pointerEvents="auto",r.addEventListener("mouseout",n.onMouseOut),r.tabIndex=-1,r.addEventListener("blur",function(){r.contains(document.activeElement)||this.hide()}.bind(n)),r.addEventListener("wheel",a),n}return r(t,e),t.prototype.addToEditor=function(e){e.on("mousemove",this.onMouseMove),e.on("mousedown",this.hide);var t=e.renderer.getMouseEventTarget();t&&typeof t.removeEventListener=="function"&&t.addEventListener("mouseout",this.onMouseOut,!0)},t.prototype.removeFromEditor=function(e){e.off("mousemove",this.onMouseMove),e.off("mousedown",this.hide);var t=e.renderer.getMouseEventTarget();t&&typeof t.removeEventListener=="function"&&t.removeEventListener("mouseout",this.onMouseOut,!0),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},t.prototype.onMouseMove=function(e,t){this.lastEvent=e,this.lastT=Date.now();var n=t.$mouseHandler.isMousePressed;if(this.isOpen){var r=this.lastEvent&&this.lastEvent.getDocumentPosition();(!this.range||!this.range.contains(r.row,r.column)||n||this.isOutsideOfText(this.lastEvent))&&this.hide()}if(this.timeout||n)return;this.lastEvent=e,this.timeout=setTimeout(this.waitForHover,this.idleTime)},t.prototype.waitForHover=function(){this.timeout&&clearTimeout(this.timeout);var e=Date.now()-this.lastT;if(this.idleTime-e>10){this.timeout=setTimeout(this.waitForHover,this.idleTime-e);return}this.timeout=null,this.lastEvent&&!this.isOutsideOfText(this.lastEvent)&&this.$gatherData(this.lastEvent,this.lastEvent.editor)},t.prototype.isOutsideOfText=function(e){var t=e.editor,n=e.getDocumentPosition(),r=t.session.getLine(n.row);if(n.column==r.length){var i=t.renderer.pixelToScreenCoordinates(e.clientX,e.clientY),s=t.session.documentToScreenPosition(n.row,n.column);if(s.column!=i.column||s.row!=i.row)return!0}return!1},t.prototype.setDataProvider=function(e){this.$gatherData=e},t.prototype.showForRange=function(e,t,n,r){if(r&&r!=this.lastEvent)return;if(this.isOpen&&document.activeElement==this.getElement())return;var i=e.renderer;this.isOpen||(h.addPopup(this),this.$registerCloseEvents(),this.setTheme(i.theme)),this.isOpen=!0,this.range=u.fromPoints(t.start,t.end);var o=i.textToScreenCoordinates(t.start.row,t.start.column),a=i.scroller.getBoundingClientRect();o.pageX=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},s=e("../lib/dom"),o=e("./mouse_event").MouseEvent,u=e("../tooltip").HoverTooltip,a=e("../config").nls,f=e("../range").Range;t.GutterHandler=l;var c=function(e){function t(n){var r=e.call(this,n.container)||this;r.id="gt"+ ++t.$uid,r.editor=n,r.visibleTooltipRow;var i=r.getElement();return i.setAttribute("role","tooltip"),i.setAttribute("id",r.id),i.style.pointerEvents="auto",r.idleTime=50,r.onDomMouseMove=r.onDomMouseMove.bind(r),r.onDomMouseOut=r.onDomMouseOut.bind(r),r.setClassName("ace_gutter-tooltip"),r}return r(t,e),t.prototype.onDomMouseMove=function(e){var t=new o(e,this.editor);this.onMouseMove(t,this.editor)},t.prototype.onDomMouseOut=function(e){var t=new o(e,this.editor);this.onMouseOut(t)},t.prototype.addToEditor=function(t){var n=t.renderer.$gutter;n.addEventListener("mousemove",this.onDomMouseMove),n.addEventListener("mouseout",this.onDomMouseOut),e.prototype.addToEditor.call(this,t)},t.prototype.removeFromEditor=function(t){var n=t.renderer.$gutter;n.removeEventListener("mousemove",this.onDomMouseMove),n.removeEventListener("mouseout",this.onDomMouseOut),e.prototype.removeFromEditor.call(this,t)},t.prototype.destroy=function(){this.editor&&this.removeFromEditor(this.editor),e.prototype.destroy.call(this)},Object.defineProperty(t,"annotationLabels",{get:function(){return{error:{singular:a("gutter-tooltip.aria-label.error.singular","error"),plural:a("gutter-tooltip.aria-label.error.plural","errors")},security:{singular:a("gutter-tooltip.aria-label.security.singular","security finding"),plural:a("gutter-tooltip.aria-label.security.plural","security findings")},warning:{singular:a("gutter-tooltip.aria-label.warning.singular","warning"),plural:a("gutter-tooltip.aria-label.warning.plural","warnings")},info:{singular:a("gutter-tooltip.aria-label.info.singular","information message"),plural:a("gutter-tooltip.aria-label.info.plural","information messages")},hint:{singular:a("gutter-tooltip.aria-label.hint.singular","suggestion"),plural:a("gutter-tooltip.aria-label.hint.plural","suggestions")}}},enumerable:!1,configurable:!0}),t.prototype.showTooltip=function(e){var n,r=this.editor.renderer.$gutterLayer,i=r.$annotations[e],o;i?o={displayText:Array.from(i.displayText),type:Array.from(i.type)}:o={displayText:[],type:[]};var u=r.session.getFoldLine(e);if(u&&r.$showFoldedAnnotations){var a={error:[],security:[],warning:[],info:[],hint:[]},l={error:1,security:2,warning:3,info:4,hint:5},c;for(var h=e+1;h<=u.end.row;h++){if(!r.$annotations[h])continue;for(var p=0;p2)return n.childNodes[2]}},t.prototype.$findCellByRow=function(e){return this.editor.renderer.$gutterLayer.$lines.cells.find(function(t){return t.row===e})},t.prototype.hide=function(t){if(!this.isOpen)return;this.$element.removeAttribute("aria-live");if(this.visibleTooltipRow!=undefined){var n=this.$findLinkedAnnotationNode(this.visibleTooltipRow);n&&n.removeAttribute("aria-describedby")}this.visibleTooltipRow=undefined,this.editor._signal("hideGutterTooltip",this),e.prototype.hide.call(this,t)},t.annotationsToSummaryString=function(e){var n,r,s=[],o=["error","security","warning","info","hint"];try{for(var u=i(o),a=u.next();!a.done;a=u.next()){var f=a.value;if(!e[f].length)continue;var l=e[f].length===1?t.annotationLabels[f].singular:t.annotationLabels[f].plural;s.push("".concat(e[f].length," ").concat(l))}}catch(c){n={error:c}}finally{try{a&&!a.done&&(r=u.return)&&r.call(u)}finally{if(n)throw n.error}}return s.join(", ")},t.prototype.isOutsideOfText=function(e){var t=e.editor,n=t.renderer.$gutter.getBoundingClientRect();return!(e.clientX>=n.left&&e.clientX<=n.right&&e.clientY>=n.top&&e.clientY<=n.bottom)},t}(u);c.$uid=0,t.GutterTooltip=c}),define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,n){"use strict";function f(e){function T(e,n){var r=Date.now(),i=!n||e.row!=n.row,s=!n||e.column!=n.column;if(!S||i||s)t.moveCursorToPosition(e),S=r,x={x:p,y:d};else{var o=l(x.x,x.y,p,d);o>a?S=null:r-S>=u&&(t.renderer.scrollCursorIntoView(),S=null)}}function N(e,n){var r=Date.now(),i=t.renderer.layerConfig.lineHeight,s=t.renderer.layerConfig.characterWidth,u=t.renderer.scroller.getBoundingClientRect(),a={x:{left:p-u.left,right:u.right-p},y:{top:d-u.top,bottom:u.bottom-d}},f=Math.min(a.x.left,a.x.right),l=Math.min(a.y.top,a.y.bottom),c={row:e.row,column:e.column};f/s<=2&&(c.column+=a.x.left=o&&t.renderer.scrollCursorIntoView(c):E=r:E=null}function C(){var e=g;g=t.renderer.screenToTextCoordinates(p,d),T(g,e),N(g,e)}function k(){m=t.selection.toOrientedRange(),h=t.session.addMarker(m,"ace_selection",t.getSelectionStyle()),t.clearSelection(),t.isFocused()&&t.renderer.$cursorLayer.setBlinking(!1),clearInterval(v),C(),v=setInterval(C,20),y=0,i.addListener(document,"mousemove",O)}function L(){clearInterval(v),t.session.removeMarker(h),h=null,t.selection.fromOrientedRange(m),t.isFocused()&&!w&&t.$resetCursorStyle(),m=null,g=null,y=0,E=null,S=null,i.removeListener(document,"mousemove",O)}function O(){A==null&&(A=setTimeout(function(){A!=null&&h&&L()},20))}function M(e){var t=e.types;return!t||Array.prototype.some.call(t,function(e){return e=="text/plain"||e=="Text"})}function _(e){var t=["copy","copymove","all","uninitialized"],n=["move","copymove","linkmove","all","uninitialized"],r=s.isMac?e.altKey:e.ctrlKey,i="uninitialized";try{i=e.dataTransfer.effectAllowed.toLowerCase()}catch(e){}var o="none";return r&&t.indexOf(i)>=0?o="copy":n.indexOf(i)>=0?o="move":t.indexOf(i)>=0&&(o="copy"),o}var t=e.editor,n=r.createElement("div");n.style.cssText="top:-100px;position:absolute;z-index:2147483647;opacity:0.5",n.textContent="\u00a0";var f=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];f.forEach(function(t){e[t]=this[t]},this),t.on("mousedown",this.onMouseDown.bind(e));var c=t.container,h,p,d,v,m,g,y=0,b,w,E,S,x;this.onDragStart=function(e){if(this.cancelDrag||!c.draggable){var r=this;return setTimeout(function(){r.startSelect(),r.captureMouse(e)},0),e.preventDefault()}m=t.getSelectionRange();var i=e.dataTransfer;i.effectAllowed=t.getReadOnly()?"copy":"copyMove",t.container.appendChild(n),i.setDragImage&&i.setDragImage(n,0,0),setTimeout(function(){t.container.removeChild(n)}),i.clearData(),i.setData("Text",t.session.getTextRange()),w=!0,this.setState("drag")},this.onDragEnd=function(e){c.draggable=!1,w=!1,this.setState(null);if(!t.getReadOnly()){var n=e.dataTransfer.dropEffect;!b&&n=="move"&&t.session.remove(t.getSelectionRange()),t.$resetCursorStyle()}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(e){if(t.getReadOnly()||!M(e.dataTransfer))return;return p=e.clientX,d=e.clientY,h||k(),y++,e.dataTransfer.dropEffect=b=_(e),i.preventDefault(e)},this.onDragOver=function(e){if(t.getReadOnly()||!M(e.dataTransfer))return;return p=e.clientX,d=e.clientY,h||(k(),y++),A!==null&&(A=null),e.dataTransfer.dropEffect=b=_(e),i.preventDefault(e)},this.onDragLeave=function(e){y--;if(y<=0&&h)return L(),b=null,i.preventDefault(e)},this.onDrop=function(e){if(!g)return;var n=e.dataTransfer;if(w)switch(b){case"move":m.contains(g.row,g.column)?m={start:g,end:g}:m=t.moveText(m,g);break;case"copy":m=t.moveText(m,g,!0)}else{var r=n.getData("Text");m={start:g,end:t.session.insert(g,r)},t.focus(),b=null}return L(),i.preventDefault(e)},i.addListener(c,"dragstart",this.onDragStart.bind(e),t),i.addListener(c,"dragend",this.onDragEnd.bind(e),t),i.addListener(c,"dragenter",this.onDragEnter.bind(e),t),i.addListener(c,"dragover",this.onDragOver.bind(e),t),i.addListener(c,"dragleave",this.onDragLeave.bind(e),t),i.addListener(c,"drop",this.onDrop.bind(e),t);var A=null}function l(e,t,n,r){return Math.sqrt(Math.pow(n-e,2)+Math.pow(r-t,2))}var r=e("../lib/dom"),i=e("../lib/event"),s=e("../lib/useragent"),o=200,u=200,a=5;(function(){this.dragWait=function(){var e=Date.now()-this.mousedownEvent.time;e>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var e=this.editor.container;e.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(e){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var e=this.editor,t=e.container;t.draggable=!0,e.renderer.$cursorLayer.setBlinking(!1),e.setStyle("ace_dragging");var n=s.isWin?"default":"move";e.renderer.setCursorStyle(n),this.setState("dragReady")},this.onMouseDrag=function(e){var t=this.editor.container;if(s.isIE&&this.state=="dragReady"){var n=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>3&&t.dragDrop()}if(this.state==="dragWait"){var n=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>0&&(t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(e){if(!this.$dragEnabled)return;this.mousedownEvent=e;var t=this.editor,n=e.inSelection(),r=e.getButton(),i=e.domEvent.detail||1;if(i===1&&r===0&&n){if(e.editor.inMultiSelectMode&&(e.getAccelKey()||e.getShiftKey()))return;this.mousedownEvent.time=Date.now();var o=e.domEvent.target||e.domEvent.srcElement;"unselectable"in o&&(o.unselectable="on");if(t.getDragDelay()){if(s.isWebKit){this.cancelDrag=!0;var u=t.container;u.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(e,this.onMouseDrag.bind(this)),e.defaultPrevented=!0}}}).call(f.prototype),t.DragdropHandler=f}),define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(e,t,n){"use strict";var r=e("./mouse_event").MouseEvent,i=e("../lib/event"),s=e("../lib/dom");t.addTouchListeners=function(e,t){function b(){var e=window.navigator&&window.navigator.clipboard,r=!1,i=function(){var n=t.getCopyText(),i=t.session.getUndoManager().hasUndo();y.replaceChild(s.buildDom(r?["span",!n&&o("selectall")&&["span",{"class":"ace_mobile-button",action:"selectall"},"Select All"],n&&o("copy")&&["span",{"class":"ace_mobile-button",action:"copy"},"Copy"],n&&o("cut")&&["span",{"class":"ace_mobile-button",action:"cut"},"Cut"],e&&o("paste")&&["span",{"class":"ace_mobile-button",action:"paste"},"Paste"],i&&o("undo")&&["span",{"class":"ace_mobile-button",action:"undo"},"Undo"],o("find")&&["span",{"class":"ace_mobile-button",action:"find"},"Find"],o("openCommandPalette")&&["span",{"class":"ace_mobile-button",action:"openCommandPalette"},"Palette"]]:["span"]),y.firstChild)},o=function(e){return t.commands.canExecute(e,t)},u=function(n){var s=n.target.getAttribute("action");if(s=="more"||!r)return r=!r,i();if(s=="paste")e.readText().then(function(e){t.execCommand(s,e)});else if(s){if(s=="cut"||s=="copy")e?e.writeText(t.getCopyText()):document.execCommand("copy");t.execCommand(s)}y.firstChild.style.display="none",r=!1,s!="openCommandPalette"&&t.focus()};y=s.buildDom(["div",{"class":"ace_mobile-menu",onclick:u},["span"],["span",{"class":"ace_mobile-button",action:"more"},"..."]],t.container),y.addEventListener("touchstart",function(e){n="menu",e.stopPropagation(),e.preventDefault(),t.textInput.focus()}),y.addEventListener("touchend",function(e){e.stopPropagation(),e.preventDefault(),u(e)})}function w(){if(!t.getOption("enableMobileMenu")){y&&E();return}y||b();var e=t.selection.cursor,n=t.renderer.textToScreenCoordinates(e.row,e.column),r=t.renderer.textToScreenCoordinates(0,0).pageX,i=t.renderer.scrollLeft,s=t.container.getBoundingClientRect();y.style.top=n.pageY-s.top-3+"px",n.pageX-s.left=2?t.selection.getLineRange(p.row):t.session.getBracketRange(p);e&&!e.isEmpty()?t.selection.setRange(e):t.selection.selectWord(),n="wait"}function T(){h+=60,c=setInterval(function(){h--<=0&&(clearInterval(c),c=null),Math.abs(v)<.01&&(v=0),Math.abs(m)<.01&&(m=0),h<20&&(v=.9*v),h<20&&(m=.9*m);var e=t.session.getScrollTop();t.renderer.scrollBy(10*v,10*m),e==t.session.getScrollTop()&&(h=0)},10)}var n="scroll",o,u,a,f,l,c,h=0,p,d=0,v=0,m=0,g,y;i.addListener(e,"contextmenu",function(e){if(!g)return;var n=t.textInput.getElement();n.focus()},t),i.addListener(e,"touchstart",function(e){var i=e.touches;if(l||i.length>1){clearTimeout(l),l=null,a=-1,n="zoom";return}g=t.$mouseHandler.isMousePressed=!0;var s=t.renderer.layerConfig.lineHeight,c=t.renderer.layerConfig.lineHeight,y=e.timeStamp;f=y;var b=i[0],w=b.clientX,E=b.clientY;Math.abs(o-w)+Math.abs(u-E)>s&&(a=-1),o=e.clientX=w,u=e.clientY=E,v=m=0;var T=new r(e,t);p=T.getDocumentPosition();if(y-a<500&&i.length==1&&!h)d++,e.preventDefault(),e.button=0,x();else{d=0;var N=t.selection.cursor,C=t.selection.isEmpty()?N:t.selection.anchor,k=t.renderer.$cursorLayer.getPixelPosition(N,!0),L=t.renderer.$cursorLayer.getPixelPosition(C,!0),A=t.renderer.scroller.getBoundingClientRect(),O=t.renderer.layerConfig.offset,M=t.renderer.scrollLeft,_=function(e,t){return e/=c,t=t/s-.75,e*e+t*t};if(e.clientXP?"cursor":"anchor"),P<3.5?n="anchor":D<3.5?n="cursor":n="scroll",l=setTimeout(S,450)}a=y},t),i.addListener(e,"touchend",function(e){g=t.$mouseHandler.isMousePressed=!1,c&&clearInterval(c),n=="zoom"?(n="",h=0):l?(t.selection.moveToPosition(p),h=0,w()):n=="scroll"?(T(),E()):w(),clearTimeout(l),l=null},t),i.addListener(e,"touchmove",function(e){l&&(clearTimeout(l),l=null);var i=e.touches;if(i.length>1||n=="zoom")return;var s=i[0],a=o-s.clientX,c=u-s.clientY;if(n=="wait"){if(!(a*a+c*c>4))return e.preventDefault();n="cursor"}o=s.clientX,u=s.clientY,e.clientX=s.clientX,e.clientY=s.clientY;var h=e.timeStamp,p=h-f;f=h;if(n=="scroll"){var d=new r(e,t);d.speed=1,d.wheelX=a,d.wheelY=c,10*Math.abs(a)0)if(g==16){for(w=b;w-1){for(w=b;w=0;C--){if(r[C]!=N)break;t[C]=s}}}function I(e,t,n){if(o=e){u=i+1;while(u=e)u++;for(a=i,l=u-1;a=t.length||(o=n[r-1])!=b&&o!=w||(c=t[r+1])!=b&&c!=w)return E;return u&&(c=w),c==o?c:E;case k:o=r>0?n[r-1]:S;if(o==b&&r+10&&n[r-1]==b)return b;if(u)return E;p=r+1,h=t.length;while(p=1425&&d<=2303||d==64286;o=t[p];if(v&&(o==y||o==T))return y}if(r<1||(o=t[r-1])==S)return E;return n[r-1];case S:return u=!1,f=!0,s;case x:return l=!0,E;case O:case M:case D:case P:case _:u=!1;case H:return E}}function R(e){var t=e.charCodeAt(0),n=t>>8;return n==0?t>191?g:B[t]:n==5?/[\u0591-\u05f4]/.test(e)?y:g:n==6?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(e)?A:/[\u0660-\u0669\u066b-\u066c]/.test(e)?w:t==1642?L:/[\u06f0-\u06f9]/.test(e)?b:T:n==32&&t<=8287?j[t&255]:n==254?t>=65136?T:E:E}function U(e){return e>="\u064b"&&e<="\u0655"}var r=["\u0621","\u0641"],i=["\u063a","\u064a"],s=0,o=0,u=!1,a=!1,f=!1,l=!1,c=!1,h=!1,p=[[0,3,0,1,0,0,0],[0,3,0,1,2,2,0],[0,3,0,17,2,0,1],[0,3,5,5,4,1,0],[0,3,21,21,4,0,1],[0,3,5,5,4,2,0]],d=[[2,0,1,1,0,1,0],[2,0,1,1,0,2,0],[2,0,2,1,3,2,0],[2,0,2,33,3,1,1]],v=0,m=1,g=0,y=1,b=2,w=3,E=4,S=5,x=6,T=7,N=8,C=9,k=10,L=11,A=12,O=13,M=14,_=15,D=16,P=17,H=18,B=[H,H,H,H,H,H,H,H,H,x,S,x,N,S,H,H,H,H,H,H,H,H,H,H,H,H,H,H,S,S,S,x,N,E,E,L,L,L,E,E,E,E,E,k,C,k,C,C,b,b,b,b,b,b,b,b,b,b,C,E,E,E,E,E,E,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,E,E,E,E,E,E,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,E,E,E,E,H,H,H,H,H,H,S,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,C,E,L,L,L,L,E,E,E,E,g,E,E,H,E,E,L,L,b,b,E,g,E,E,E,b,g,E,E,E,E,E],j=[N,N,N,N,N,N,N,N,N,N,N,H,H,H,g,y,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,N,S,O,M,_,D,P,C,L,L,L,L,L,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,C,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,N];t.L=g,t.R=y,t.EN=b,t.ON_R=3,t.AN=4,t.R_H=5,t.B=6,t.RLE=7,t.DOT="\u00b7",t.doBidiReorder=function(e,n,r){if(e.length<2)return{};var i=e.split(""),o=new Array(i.length),u=new Array(i.length),a=[];s=r?m:v,F(i,a,i.length,n);for(var f=0;fT&&n[f]0&&i[f-1]==="\u0644"&&/\u0622|\u0623|\u0625|\u0627/.test(i[f])&&(a[f-1]=a[f]=t.R_H,f++);i[i.length-1]===t.DOT&&(a[i.length-1]=t.B),i[0]==="\u202b"&&(a[0]=t.RLE);for(var f=0;f=0&&(e=this.session.$docRowCache[n])}return e},e.prototype.getSplitIndex=function(){var e=0,t=this.session.$screenRowCache;if(t.length){var n,r=this.session.$getRowCacheIndex(t,this.currentRow);while(this.currentRow-e>0){n=this.session.$getRowCacheIndex(t,this.currentRow-e-1);if(n!==r)break;r=n,e++}}else e=this.currentRow;return e},e.prototype.markAsDirty=function(){this.currentRow=null},e.prototype.setShowInvisibles=function(e){this.showInvisibles=e,this.currentRow=null},e.prototype.setEolChar=function(e){this.EOL=e},e.prototype.setContentWidth=function(e){this.contentWidth=e},e.prototype.isRtlLine=function(e){return this.$isRtl?!0:e!=undefined?this.session.getLine(e).charAt(0)==this.RLE:this.isRtlDir},e.prototype.setRtlDirection=function(e,t){var n=e.getCursorPosition();for(var r=e.selection.getSelectionAnchor().row;r<=n.row;r++)!t&&e.session.getLine(r).charAt(0)===e.session.$bidiHandler.RLE?e.session.doc.removeInLine(r,0,1):t&&e.session.getLine(r).charAt(0)!==e.session.$bidiHandler.RLE&&e.session.doc.insert({column:0,row:r},e.session.$bidiHandler.RLE)},e}();t.BidiHandler=o}),define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/lang"),s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=function(){function e(e){this.session=e,this.doc=e.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var t=this;this.cursor.on("change",function(e){t.$cursorChanged=!0,t.$silent||t._emit("changeCursor"),!t.$isEmpty&&!t.$silent&&t._emit("changeSelection"),!t.$keepDesiredColumnOnChange&&e.old.column!=e.value.column&&(t.$desiredColumn=null)}),this.anchor.on("change",function(){t.$anchorChanged=!0,!t.$isEmpty&&!t.$silent&&t._emit("changeSelection")})}return e.prototype.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},e.prototype.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},e.prototype.getCursor=function(){return this.lead.getPosition()},e.prototype.setAnchor=function(e,t){this.$isEmpty=!1,this.anchor.setPosition(e,t)},e.prototype.getAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},e.prototype.getSelectionLead=function(){return this.lead.getPosition()},e.prototype.isBackwards=function(){var e=this.anchor,t=this.lead;return e.row>t.row||e.row==t.row&&e.column>t.column},e.prototype.getRange=function(){var e=this.anchor,t=this.lead;return this.$isEmpty?o.fromPoints(t,t):this.isBackwards()?o.fromPoints(t,e):o.fromPoints(e,t)},e.prototype.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},e.prototype.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},e.prototype.setRange=function(e,t){var n=t?e.end:e.start,r=t?e.start:e.end;this.$setSelection(n.row,n.column,r.row,r.column)},e.prototype.$setSelection=function(e,t,n,r){if(this.$silent)return;var i=this.$isEmpty,s=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(e,t),this.cursor.setPosition(n,r),this.$isEmpty=!o.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||i!=this.$isEmpty||s)&&this._emit("changeSelection")},e.prototype.$moveSelection=function(e){var t=this.lead;this.$isEmpty&&this.setSelectionAnchor(t.row,t.column),e.call(this)},e.prototype.selectTo=function(e,t){this.$moveSelection(function(){this.moveCursorTo(e,t)})},e.prototype.selectToPosition=function(e){this.$moveSelection(function(){this.moveCursorToPosition(e)})},e.prototype.moveTo=function(e,t){this.clearSelection(),this.moveCursorTo(e,t)},e.prototype.moveToPosition=function(e){this.clearSelection(),this.moveCursorToPosition(e)},e.prototype.selectUp=function(){this.$moveSelection(this.moveCursorUp)},e.prototype.selectDown=function(){this.$moveSelection(this.moveCursorDown)},e.prototype.selectRight=function(){this.$moveSelection(this.moveCursorRight)},e.prototype.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},e.prototype.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},e.prototype.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},e.prototype.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},e.prototype.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},e.prototype.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},e.prototype.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},e.prototype.getWordRange=function(e,t){if(typeof t=="undefined"){var n=e||this.lead;e=n.row,t=n.column}return this.session.getWordRange(e,t)},e.prototype.selectWord=function(){this.setSelectionRange(this.getWordRange())},e.prototype.selectAWord=function(){var e=this.getCursor(),t=this.session.getAWordRange(e.row,e.column);this.setSelectionRange(t)},e.prototype.getLineRange=function(e,t){var n=typeof e=="number"?e:this.lead.row,r,i=this.session.getFoldLine(n);return i?(n=i.start.row,r=i.end.row):r=n,t===!0?new o(n,0,r,this.session.getLine(r).length):new o(n,0,r+1,0)},e.prototype.selectLine=function(){this.setSelectionRange(this.getLineRange())},e.prototype.moveCursorUp=function(){this.moveCursorBy(-1,0)},e.prototype.moveCursorDown=function(){this.moveCursorBy(1,0)},e.prototype.wouldMoveIntoSoftTab=function(e,t,n){var r=e.column,i=e.column+t;return n<0&&(r=e.column-t,i=e.column),this.session.isTabStop(e)&&this.doc.getLine(e.row).slice(r,i).split(" ").length-1==t},e.prototype.moveCursorLeft=function(){var e=this.lead.getPosition(),t;if(t=this.session.getFoldAt(e.row,e.column,-1))this.moveCursorTo(t.start.row,t.start.column);else if(e.column===0)e.row>0&&this.moveCursorTo(e.row-1,this.doc.getLine(e.row-1).length);else{var n=this.session.getTabSize();this.wouldMoveIntoSoftTab(e,n,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-n):this.moveCursorBy(0,-1)}},e.prototype.moveCursorRight=function(){var e=this.lead.getPosition(),t;if(t=this.session.getFoldAt(e.row,e.column,1))this.moveCursorTo(t.end.row,t.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(t.column=r)}}this.moveCursorTo(t.row,t.column)},e.prototype.moveCursorFileEnd=function(){var e=this.doc.getLength()-1,t=this.doc.getLine(e).length;this.moveCursorTo(e,t)},e.prototype.moveCursorFileStart=function(){this.moveCursorTo(0,0)},e.prototype.moveCursorLongWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),r=n.substring(t);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var i=this.session.getFoldAt(e,t,1);if(i){this.moveCursorTo(i.end.row,i.end.column);return}this.session.nonTokenRe.exec(r)&&(t+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,r=n.substring(t));if(t>=n.length){this.moveCursorTo(e,n.length),this.moveCursorRight(),e0&&this.moveCursorWordLeft();return}this.session.tokenRe.exec(s)&&(t-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(e,t)},e.prototype.$shortWordEndIndex=function(e){var t=0,n,r=/\s/,i=this.session.tokenRe;i.lastIndex=0;if(this.session.tokenRe.exec(e))t=this.session.tokenRe.lastIndex;else{while((n=e[t])&&r.test(n))t++;if(t<1){i.lastIndex=0;while((n=e[t])&&!i.test(n)){i.lastIndex=0,t++;if(r.test(n)){if(t>2){t--;break}while((n=e[t])&&r.test(n))t++;if(t>2)break}}}}return i.lastIndex=0,t},e.prototype.moveCursorShortWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),r=n.substring(t),i=this.session.getFoldAt(e,t,1);if(i)return this.moveCursorTo(i.end.row,i.end.column);if(t==n.length){var s=this.doc.getLength();do e++,r=this.doc.getLine(e);while(e0&&/^\s*$/.test(r));t=r.length,/\s+$/.test(r)||(r="")}var s=i.stringReverse(r),o=this.$shortWordEndIndex(s);return this.moveCursorTo(e,t-o)},e.prototype.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},e.prototype.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},e.prototype.moveCursorBy=function(e,t){var n=this.session.documentToScreenPosition(this.lead.row,this.lead.column),r,i=this.session.$fontMetrics,s=t===0&&e!==0&&i;t===0&&(s&&this.$desiredColumn==null&&(r=i.textWidth(n.row,n.column),isFinite(r)&&(this.$desiredColumn=r/i.config.characterWidth)),this.$desiredColumn?n.column=this.$desiredColumn:this.$desiredColumn=n.column);if(e!=0&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var o=this.session.lineWidgets[this.lead.row];e<0?e-=o.rowsAbove||0:e>0&&(e+=o.rowCount-(o.rowsAbove||0))}var u=n.row+e;if(s&&this.$desiredColumn!=null){r=this.$desiredColumn*i.config.characterWidth;var a=i.renderer&&i.renderer.$blockCursor;n.column=i.$pixelToColumn(u,n.column,r,a,!0)}var f=this.session.screenToDocumentPosition(u,n.column);this.moveCursorTo(f.row,f.column+t,t===0)},e.prototype.moveCursorToPosition=function(e){this.moveCursorTo(e.row,e.column)},e.prototype.moveCursorTo=function(e,t,n){var r=this.session.getFoldAt(e,t,1);r&&(e=r.start.row,t=r.start.column),this.$keepDesiredColumnOnChange=!0;var i=this.session.getLine(e);/[\uDC00-\uDFFF]/.test(i.charAt(t))&&i.charAt(t-1)&&(this.lead.row==e&&this.lead.column==t+1?t-=1:t+=1),this.lead.setPosition(e,t),this.$keepDesiredColumnOnChange=!1,n||(this.$desiredColumn=null)},e.prototype.moveCursorToScreen=function(e,t,n){var r=this.session.screenToDocumentPosition(e,t);this.moveCursorTo(r.row,r.column,n)},e.prototype.detach=function(){this.lead.detach(),this.anchor.detach()},e.prototype.fromOrientedRange=function(e){this.setSelectionRange(e,e.cursor==e.start),this.$desiredColumn=e.desiredColumn||this.$desiredColumn},e.prototype.toOrientedRange=function(e){var t=this.getRange();return e?(e.start.column=t.start.column,e.start.row=t.start.row,e.end.column=t.end.column,e.end.row=t.end.row):e=t,e.cursor=this.isBackwards()?e.start:e.end,e.desiredColumn=this.$desiredColumn,e},e.prototype.getRangeOfMovements=function(e){var t=this.getCursor();try{e(this);var n=this.getCursor();return o.fromPoints(t,n)}catch(r){return o.fromPoints(t,t)}finally{this.moveCursorToPosition(t)}},e.prototype.toJSON=function(){if(this.rangeCount)var e=this.ranges.map(function(e){var t=e.clone();return t.isBackwards=e.cursor==e.start,t});else{var e=this.getRange();e.isBackwards=this.isBackwards()}return e},e.prototype.fromJSON=function(e){if(e.start==undefined){if(this.rangeList&&e.length>1){this.toSingleRange(e[0]);for(var t=e.length;t--;){var n=o.fromPoints(e[t].start,e[t].end);e[t].isBackwards&&(n.cursor=n.start),this.addRange(n,!0)}return}e=e[0]}this.rangeList&&this.toSingleRange(e),this.setSelectionRange(e,e.isBackwards)},e.prototype.isEqual=function(e){if((e.length||this.rangeCount)&&e.length!=this.rangeCount)return!1;if(!e.length||!this.ranges)return this.getRange().isEqual(e);for(var t=this.ranges.length;t--;)if(!this.ranges[t].isEqual(e[t]))return!1;return!0},e}();u.prototype.setSelectionAnchor=u.prototype.setAnchor,u.prototype.getSelectionAnchor=u.prototype.getAnchor,u.prototype.setSelectionRange=u.prototype.setRange,r.implement(u.prototype,s),t.Selection=u}),define("ace/tokenizer",["require","exports","module","ace/lib/report_error"],function(e,t,n){"use strict";var r=e("./lib/report_error").reportError,i=2e3,s=function(){function e(e){this.splitRegex,this.states=e,this.regExps={},this.matchMappings={};for(var t in this.states){var n=this.states[t],r=[],i=0,s=this.matchMappings[t]={defaultToken:"text"},o="g",u=[];for(var a=0;a1?f.onMatch=this.$applyToken:f.onMatch=f.token),c>1&&(/\\\d/.test(f.regex)?l=f.regex.replace(/\\([0-9]+)/g,function(e,t){return"\\"+(parseInt(t,10)+i+1)}):(c=1,l=this.removeCapturingGroups(f.regex)),!f.splitRegex&&typeof f.token!="string"&&u.push(f)),s[i]=a,i+=c,r.push(l),f.onMatch||(f.onMatch=null)}r.length||(s[0]=0,r.push("$")),u.forEach(function(e){e.splitRegex=this.createSplitterRegexp(e.regex,o)},this),this.regExps[t]=new RegExp("("+r.join(")|(")+")|($)",o)}}return e.prototype.$setMaxTokenCount=function(e){i=e|0},e.prototype.$applyToken=function(e){var t=this.splitRegex.exec(e).slice(1),n=this.token.apply(this,t);if(typeof n=="string")return[{type:n,value:e}];var r=[];for(var i=0,s=n.length;i1)continue;if(f)f=h!="]";else if(h=="[")f=!0;else if(h=="(")a++;else if(h==")"&&--a==0){u=c.index+1;break}}if(u==-1)break;e=e.substring(0,o)+e.substr(u)}return e.charAt(0)!="^"&&(e="^"+e),e.charAt(e.length-1)!="$"&&(e+="$"),new RegExp(e,(t||"").replace("g",""))},e.prototype.getLineTokens=function(e,t){if(t&&typeof t!="string"){var n=t.slice(0);t=n[0],t==="#tmp"&&(n.shift(),t=n.shift())}else var n=[];var r=t||"start",s=this.states[r];s||(r="start",s=this.states[r]);var o=this.matchMappings[r],u=this.regExps[r];u.lastIndex=0;var a,f=[],l=0,c=0,h={type:null,value:""};while(a=u.exec(e)){var p=o.defaultToken,d=null,v=a[0],m=u.lastIndex;if(m-v.length>l){var g=e.substring(l,m-v.length);h.type==p?h.value+=g:(h.type&&f.push(h),h={type:p,value:g})}for(var y=0;yi){c>2*e.length&&this.reportError("infinite loop with in ace tokenizer",{startState:t,line:e});while(l1&&n[0]!==r&&n.unshift("#tmp",r),{tokens:f,state:n.length?n:r}},e}();s.prototype.reportError=r,t.Tokenizer=s}),define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/deep_copy"],function(e,t,n){"use strict";var r=e("../lib/deep_copy").deepCopy,i;i=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}},function(){this.addRules=function(e,t){if(!t){for(var n in e)this.$rules[n]=e[n];return}for(var n in e){var r=e[n];for(var i=0;i=this.$rowTokens.length){this.$row+=1,e||(e=this.$session.getLength());if(this.$row>=e)return this.$row=e-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},e.prototype.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},e.prototype.getCurrentTokenRow=function(){return this.$row},e.prototype.getCurrentTokenColumn=function(){var e=this.$rowTokens,t=this.$tokenIndex,n=e[t].start;if(n!==undefined)return n;n=0;while(t>0)t-=1,n+=e[t].value.length;return n},e.prototype.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},e.prototype.getCurrentTokenRange=function(){var e=this.$rowTokens[this.$tokenIndex],t=this.getCurrentTokenColumn();return new r(this.$row,t,this.$row,t+e.value.length)},e}();t.TokenIterator=i}),define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,o=e("../../lib/lang"),u=["text","paren.rparen","rparen","paren","punctuation.operator"],a=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],f,l={},c={'"':'"',"'":"'"},h=function(e){var t=-1;e.multiSelect&&(t=e.selection.index,l.rangeCount!=e.multiSelect.rangeCount&&(l={rangeCount:e.multiSelect.rangeCount}));if(l[t])return f=l[t];f=l[t]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},p=function(e,t,n,r){var i=e.end.row-e.start.row;return{text:n+t+r,selection:[0,e.start.column+1,i,e.end.column+(i?0:1)]}},d;d=function(e){e=e||{},this.add("braces","insertion",function(t,n,r,i,s){var u=r.getCursorPosition(),a=i.doc.getLine(u.row);if(s=="{"){h(r);var l=r.getSelectionRange(),c=i.doc.getTextRange(l),v=i.getTokenAt(u.row,u.column);if(c!==""&&c!=="{"&&r.getWrapBehavioursEnabled())return p(l,c,"{","}");if(v&&/(?:string)\.quasi|\.xml/.test(v.type)){var m=[/tag\-(?:open|name)/,/attribute\-name/];if(m.some(function(e){return e.test(v.type)})||/(string)\.quasi/.test(v.type)&&v.value[u.column-v.start-1]!=="$")return;return d.recordAutoInsert(r,i,"}"),{text:"{}",selection:[1,1]}}if(d.isSaneInsertion(r,i))return/[\]\}\)]/.test(a[u.column])||r.inMultiSelectMode||e.braces?(d.recordAutoInsert(r,i,"}"),{text:"{}",selection:[1,1]}):(d.recordMaybeInsert(r,i,"{"),{text:"{",selection:[1,1]})}else if(s=="}"){h(r);var g=a.substring(u.column,u.column+1);if(g=="}"){var y=i.$findOpeningBracket("}",{column:u.column+1,row:u.row});if(y!==null&&d.isAutoInsertedClosing(u,a,s))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else{if(s=="\n"||s=="\r\n"){h(r);var b="";d.isMaybeInsertedClosing(u,a)&&(b=o.stringRepeat("}",f.maybeInsertedBrackets),d.clearMaybeInsertedClosing());var g=a.substring(u.column,u.column+1);if(g==="}"){var w=i.findMatchingBracket({row:u.row,column:u.column+1},"}");if(!w)return null;var E=this.$getIndent(i.getLine(w.row))}else{if(!b){d.clearMaybeInsertedClosing();return}var E=this.$getIndent(a)}var S=E+i.getTabString();return{text:"\n"+S+"\n"+E+b,selection:[1,S.length,1,S.length]}}d.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="{"){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.end.column,i.end.column+1);if(u=="}")return i.end.column++,i;f.maybeInsertedBrackets--}}),this.add("parens","insertion",function(e,t,n,r,i){if(i=="("){h(n);var s=n.getSelectionRange(),o=r.doc.getTextRange(s);if(o!==""&&n.getWrapBehavioursEnabled())return p(s,o,"(",")");if(d.isSaneInsertion(n,r))return d.recordAutoInsert(n,r,")"),{text:"()",selection:[1,1]}}else if(i==")"){h(n);var u=n.getCursorPosition(),a=r.doc.getLine(u.row),f=a.substring(u.column,u.column+1);if(f==")"){var l=r.$findOpeningBracket(")",{column:u.column+1,row:u.row});if(l!==null&&d.isAutoInsertedClosing(u,a,i))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="("){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u==")")return i.end.column++,i}}),this.add("brackets","insertion",function(e,t,n,r,i){if(i=="["){h(n);var s=n.getSelectionRange(),o=r.doc.getTextRange(s);if(o!==""&&n.getWrapBehavioursEnabled())return p(s,o,"[","]");if(d.isSaneInsertion(n,r))return d.recordAutoInsert(n,r,"]"),{text:"[]",selection:[1,1]}}else if(i=="]"){h(n);var u=n.getCursorPosition(),a=r.doc.getLine(u.row),f=a.substring(u.column,u.column+1);if(f=="]"){var l=r.$findOpeningBracket("]",{column:u.column+1,row:u.row});if(l!==null&&d.isAutoInsertedClosing(u,a,i))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="["){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u=="]")return i.end.column++,i}}),this.add("string_dquotes","insertion",function(e,t,n,r,i){var s=r.$mode.$quotes||c;if(i.length==1&&s[i]){if(this.lineCommentStart&&this.lineCommentStart.indexOf(i)!=-1)return;h(n);var o=i,u=n.getSelectionRange(),a=r.doc.getTextRange(u);if(a!==""&&(a.length!=1||!s[a])&&n.getWrapBehavioursEnabled())return p(u,a,o,o);if(!a){var f=n.getCursorPosition(),l=r.doc.getLine(f.row),d=l.substring(f.column-1,f.column),v=l.substring(f.column,f.column+1),m=r.getTokenAt(f.row,f.column),g=r.getTokenAt(f.row,f.column+1);if(d=="\\"&&m&&/escape/.test(m.type))return null;var y=m&&/string|escape/.test(m.type),b=!g||/string|escape/.test(g.type),w;if(v==o)w=y!==b,w&&/string\.end/.test(g.type)&&(w=!1);else{if(y&&!b)return null;if(y&&b)return null;var E=r.$mode.tokenRe;E.lastIndex=0;var S=E.test(d);E.lastIndex=0;var x=E.test(v),T=r.$mode.$pairQuotesAfter,N=T&&T[o]&&T[o].test(d);if(!N&&S||x)return null;if(v&&!/[\s;,.})\]\\]/.test(v))return null;var C=l[f.column-2];if(!(d!=o||C!=o&&!E.test(C)))return null;w=!0}return{text:w?o+o:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(e,t,n,r,i){var s=r.$mode.$quotes||c,o=r.doc.getTextRange(i);if(!i.isMultiLine()&&s.hasOwnProperty(o)){h(n);var u=r.doc.getLine(i.start.row),a=u.substring(i.start.column+1,i.start.column+2);if(a==o)return i.end.column++,i}}),e.closeDocComment!==!1&&this.add("doc comment end","insertion",function(e,t,n,r,i){if(e==="doc-start"&&(i==="\n"||i==="\r\n")&&n.selection.isEmpty()){var s=n.getCursorPosition();if(s.column===0)return;var o=r.doc.getLine(s.row),u=r.doc.getLine(s.row+1),a=r.getTokens(s.row),f=0;for(var l=0;l=s.column){if(f===s.column){if(!/\.doc/.test(c.type))return;if(/\*\//.test(c.value)){var h=a[l+1];if(!h||!/\.doc/.test(h.type))return}}var p=s.column-(f-c.value.length),d=c.value.indexOf("*/"),v=c.value.indexOf("/**",d>-1?d+2:0);if(v!==-1&&p>v&&p=d&&p<=v||!/\.doc/.test(c.type))return;break}}var m=this.$getIndent(o);if(/\s*\*/.test(u))return/^\s*\*/.test(o)?{text:i+m+"* ",selection:[1,2+m.length,1,2+m.length]}:{text:i+m+" * ",selection:[1,3+m.length,1,3+m.length]};if(/\/\*\*/.test(o.substring(0,s.column)))return{text:i+m+" * "+i+" "+m+"*/",selection:[1,4+m.length,1,4+m.length]}}})},d.isSaneInsertion=function(e,t){var n=e.getCursorPosition(),r=new s(t,n.row,n.column);if(!this.$matchTokenType(r.getCurrentToken()||"text",u)){if(/[)}\]]/.test(e.session.getLine(n.row)[n.column]))return!0;var i=new s(t,n.row,n.column+1);if(!this.$matchTokenType(i.getCurrentToken()||"text",u))return!1}return r.stepForward(),r.getCurrentTokenRow()!==n.row||this.$matchTokenType(r.getCurrentToken()||"text",a)},d.$matchTokenType=function(e,t){return t.indexOf(e.type||e)>-1},d.recordAutoInsert=function(e,t,n){var r=e.getCursorPosition(),i=t.doc.getLine(r.row);this.isAutoInsertedClosing(r,i,f.autoInsertedLineEnd[0])||(f.autoInsertedBrackets=0),f.autoInsertedRow=r.row,f.autoInsertedLineEnd=n+i.substr(r.column),f.autoInsertedBrackets++},d.recordMaybeInsert=function(e,t,n){var r=e.getCursorPosition(),i=t.doc.getLine(r.row);this.isMaybeInsertedClosing(r,i)||(f.maybeInsertedBrackets=0),f.maybeInsertedRow=r.row,f.maybeInsertedLineStart=i.substr(0,r.column)+n,f.maybeInsertedLineEnd=i.substr(r.column),f.maybeInsertedBrackets++},d.isAutoInsertedClosing=function(e,t,n){return f.autoInsertedBrackets>0&&e.row===f.autoInsertedRow&&n===f.autoInsertedLineEnd[0]&&t.substr(e.column)===f.autoInsertedLineEnd},d.isMaybeInsertedClosing=function(e,t){return f.maybeInsertedBrackets>0&&e.row===f.maybeInsertedRow&&t.substr(e.column)===f.maybeInsertedLineEnd&&t.substr(0,e.column)==f.maybeInsertedLineStart},d.popAutoInsertedClosing=function(){f.autoInsertedLineEnd=f.autoInsertedLineEnd.substr(1),f.autoInsertedBrackets--},d.clearMaybeInsertedClosing=function(){f&&(f.maybeInsertedBrackets=0,f.maybeInsertedRow=-1)},r.inherits(d,i),t.CstyleBehaviour=d}),define("ace/unicode",["require","exports","module"],function(e,t,n){"use strict";var r=[48,9,8,25,5,0,2,25,48,0,11,0,5,0,6,22,2,30,2,457,5,11,15,4,8,0,2,0,18,116,2,1,3,3,9,0,2,2,2,0,2,19,2,82,2,138,2,4,3,155,12,37,3,0,8,38,10,44,2,0,2,1,2,1,2,0,9,26,6,2,30,10,7,61,2,9,5,101,2,7,3,9,2,18,3,0,17,58,3,100,15,53,5,0,6,45,211,57,3,18,2,5,3,11,3,9,2,1,7,6,2,2,2,7,3,1,3,21,2,6,2,0,4,3,3,8,3,1,3,3,9,0,5,1,2,4,3,11,16,2,2,5,5,1,3,21,2,6,2,1,2,1,2,1,3,0,2,4,5,1,3,2,4,0,8,3,2,0,8,15,12,2,2,8,2,2,2,21,2,6,2,1,2,4,3,9,2,2,2,2,3,0,16,3,3,9,18,2,2,7,3,1,3,21,2,6,2,1,2,4,3,8,3,1,3,2,9,1,5,1,2,4,3,9,2,0,17,1,2,5,4,2,2,3,4,1,2,0,2,1,4,1,4,2,4,11,5,4,4,2,2,3,3,0,7,0,15,9,18,2,2,7,2,2,2,22,2,9,2,4,4,7,2,2,2,3,8,1,2,1,7,3,3,9,19,1,2,7,2,2,2,22,2,9,2,4,3,8,2,2,2,3,8,1,8,0,2,3,3,9,19,1,2,7,2,2,2,22,2,15,4,7,2,2,2,3,10,0,9,3,3,9,11,5,3,1,2,17,4,23,2,8,2,0,3,6,4,0,5,5,2,0,2,7,19,1,14,57,6,14,2,9,40,1,2,0,3,1,2,0,3,0,7,3,2,6,2,2,2,0,2,0,3,1,2,12,2,2,3,4,2,0,2,5,3,9,3,1,35,0,24,1,7,9,12,0,2,0,2,0,5,9,2,35,5,19,2,5,5,7,2,35,10,0,58,73,7,77,3,37,11,42,2,0,4,328,2,3,3,6,2,0,2,3,3,40,2,3,3,32,2,3,3,6,2,0,2,3,3,14,2,56,2,3,3,66,5,0,33,15,17,84,13,619,3,16,2,25,6,74,22,12,2,6,12,20,12,19,13,12,2,2,2,1,13,51,3,29,4,0,5,1,3,9,34,2,3,9,7,87,9,42,6,69,11,28,4,11,5,11,11,39,3,4,12,43,5,25,7,10,38,27,5,62,2,28,3,10,7,9,14,0,89,75,5,9,18,8,13,42,4,11,71,55,9,9,4,48,83,2,2,30,14,230,23,280,3,5,3,37,3,5,3,7,2,0,2,0,2,0,2,30,3,52,2,6,2,0,4,2,2,6,4,3,3,5,5,12,6,2,2,6,67,1,20,0,29,0,14,0,17,4,60,12,5,0,4,11,18,0,5,0,3,9,2,0,4,4,7,0,2,0,2,0,2,3,2,10,3,3,6,4,5,0,53,1,2684,46,2,46,2,132,7,6,15,37,11,53,10,0,17,22,10,6,2,6,2,6,2,6,2,6,2,6,2,6,2,6,2,31,48,0,470,1,36,5,2,4,6,1,5,85,3,1,3,2,2,89,2,3,6,40,4,93,18,23,57,15,513,6581,75,20939,53,1164,68,45,3,268,4,27,21,31,3,13,13,1,2,24,9,69,11,1,38,8,3,102,3,1,111,44,25,51,13,68,12,9,7,23,4,0,5,45,3,35,13,28,4,64,15,10,39,54,10,13,3,9,7,22,4,1,5,66,25,2,227,42,2,1,3,9,7,11171,13,22,5,48,8453,301,3,61,3,105,39,6,13,4,6,11,2,12,2,4,2,0,2,1,2,1,2,107,34,362,19,63,3,53,41,11,5,15,17,6,13,1,25,2,33,4,2,134,20,9,8,25,5,0,2,25,12,88,4,5,3,5,3,5,3,2],i=0,s=[];for(var o=0;o2?r%f!=f-1:r%f==0}}var E=Infinity;w(function(e,t){var n=e.search(/\S/);n!==-1?(ne.length&&(E=e.length)}),u==Infinity&&(u=E,s=!1,o=!1),l&&u%f!=0&&(u=Math.floor(u/f)*f),w(o?m:v)},this.toggleBlockComment=function(e,t,n,r){var i=this.blockComment;if(!i)return;!i.start&&i[0]&&(i=i[0]);var s=new f(t,r.row,r.column),o=s.getCurrentToken(),u=t.selection,a=t.selection.toOrientedRange(),c,h;if(o&&/comment/.test(o.type)){var p,d;while(o&&/comment/.test(o.type)){var v=o.value.indexOf(i.start);if(v!=-1){var m=s.getCurrentTokenRow(),g=s.getCurrentTokenColumn()+v;p=new l(m,g,m,g+i.start.length);break}o=s.stepBackward()}var s=new f(t,r.row,r.column),o=s.getCurrentToken();while(o&&/comment/.test(o.type)){var v=o.value.indexOf(i.end);if(v!=-1){var m=s.getCurrentTokenRow(),g=s.getCurrentTokenColumn()+v;d=new l(m,g,m,g+i.end.length);break}o=s.stepForward()}d&&t.remove(d),p&&(t.remove(p),c=p.start.row,h=-i.start.length)}else h=i.start.length,c=n.start.row,t.insert(n.end,i.end),t.insert(n.start,i.start);a.start.row==c&&(a.start.column+=h),a.end.row==c&&(a.end.column+=h),t.selection.fromOrientedRange(a)},this.getNextLineIndent=function(e,t,n){return this.$getIndent(t)},this.checkOutdent=function(e,t,n){return!1},this.autoOutdent=function(e,t,n){},this.$getIndent=function(e){return e.match(/^\s*/)[0]},this.createWorker=function(e){return null},this.createModeDelegates=function(e){this.$embeds=[],this.$modes={};for(var t in e)if(e[t]){var n=e[t],i=n.prototype.$id,s=r.$modes[i];s||(r.$modes[i]=s=new n),r.$modes[t]||(r.$modes[t]=s),this.$embeds.push(t),this.$modes[t]=s}var o=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],u=function(e){(function(t){var n=o[e],r=t[n];t[o[e]]=function(){return this.$delegator(n,arguments,r)}})(a)},a=this;for(var t=0;tt[n].column&&n++,s.unshift(n,0),t.splice.apply(t,s),this.$updateRows()}},e.prototype.$updateRows=function(){var e=this.session.lineWidgets;if(!e)return;var t=!0;e.forEach(function(e,n){if(e){t=!1,e.row=n;while(e.$oldWidget)e.$oldWidget.row=n,e=e.$oldWidget}}),t&&(this.session.lineWidgets=null)},e.prototype.$registerLineWidget=function(e){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var t=this.session.lineWidgets[e.row];return t&&(e.$oldWidget=t,t.el&&t.el.parentNode&&(t.el.parentNode.removeChild(t.el),t._inDocument=!1)),this.session.lineWidgets[e.row]=e,e},e.prototype.addLineWidget=function(e){this.$registerLineWidget(e),e.session=this.session;if(!this.editor)return e;var t=this.editor.renderer;e.html&&!e.el&&(e.el=r.createElement("div"),e.el.innerHTML=e.html),e.text&&!e.el&&(e.el=r.createElement("div"),e.el.textContent=e.text),e.el&&(r.addCssClass(e.el,"ace_lineWidgetContainer"),e.className&&r.addCssClass(e.el,e.className),e.el.style.position="absolute",e.el.style.zIndex="5",t.container.appendChild(e.el),e._inDocument=!0,e.coverGutter||(e.el.style.zIndex="3"),e.pixelHeight==null&&(e.pixelHeight=e.el.offsetHeight)),e.rowCount==null&&(e.rowCount=e.pixelHeight/t.layerConfig.lineHeight);var n=this.session.getFoldAt(e.row,0);e.$fold=n;if(n){var i=this.session.lineWidgets;e.row==n.end.row&&!i[n.start.row]?i[n.start.row]=e:e.hidden=!0}return this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows(),this.renderWidgets(null,t),this.onWidgetChanged(e),e},e.prototype.removeLineWidget=function(e){e._inDocument=!1,e.session=null,e.el&&e.el.parentNode&&e.el.parentNode.removeChild(e.el);if(e.editor&&e.editor.destroy)try{e.editor.destroy()}catch(t){}if(this.session.lineWidgets){var n=this.session.lineWidgets[e.row];if(n==e)this.session.lineWidgets[e.row]=e.$oldWidget,e.$oldWidget&&this.onWidgetChanged(e.$oldWidget);else while(n){if(n.$oldWidget==e){n.$oldWidget=e.$oldWidget;break}n=n.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows()},e.prototype.getWidgetsAtRow=function(e){var t=this.session.lineWidgets,n=t&&t[e],r=[];while(n)r.push(n),n=n.$oldWidget;return r},e.prototype.onWidgetChanged=function(e){this.session._changedWidgets.push(e),this.editor&&this.editor.renderer.updateFull()},e.prototype.measureWidgets=function(e,t){var n=this.session._changedWidgets,r=t.layerConfig;if(!n||!n.length)return;var i=Infinity;for(var s=0;s0&&!r[i])i--;this.firstRow=n.firstRow,this.lastRow=n.lastRow,t.$cursorLayer.config=n;for(var o=i;o<=s;o++){var u=r[o];if(!u||!u.el)continue;if(u.hidden){u.el.style.top=-100-(u.pixelHeight||0)+"px";continue}u._inDocument||(u._inDocument=!0,t.container.appendChild(u.el));var a=t.$cursorLayer.getPixelPosition({row:o,column:0},!0).top;u.coverLine||(a+=n.lineHeight*this.session.getRowLineCount(u.row)),u.el.style.top=a-n.offset+"px";var f=u.coverGutter?0:t.gutterWidth;u.fixedWidth||(f-=t.scrollLeft),u.el.style.left=f+"px",u.fullWidth&&u.screenWidth&&(u.el.style.minWidth=n.width+2*n.padding+"px"),u.fixedWidth?u.el.style.right=t.scrollBar.getWidth()+"px":u.el.style.right=""}},e}();t.LineWidgets=i}),define("ace/apply_delta",["require","exports","module"],function(e,t,n){"use strict";function r(e,t){throw console.log("Invalid Delta:",e),"Invalid Delta: "+t}function i(e,t){return t.row>=0&&t.row=0&&t.column<=e[t.row].length}function s(e,t){t.action!="insert"&&t.action!="remove"&&r(t,"delta.action must be 'insert' or 'remove'"),t.lines instanceof Array||r(t,"delta.lines must be an Array"),(!t.start||!t.end)&&r(t,"delta.start/end must be an present");var n=t.start;i(e,t.start)||r(t,"delta.start must be contained in document");var s=t.end;t.action=="remove"&&!i(e,s)&&r(t,"delta.end must contained in document for 'remove' actions");var o=s.row-n.row,u=s.column-(o==0?n.column:0);(o!=t.lines.length-1||t.lines[o].length!=u)&&r(t,"delta.range must match delta lines")}t.applyDelta=function(e,t,n){var r=t.start.row,i=t.start.column,s=e[r]||"";switch(t.action){case"insert":var o=t.lines;if(o.length===1)e[r]=s.substring(0,i)+t.lines[0]+s.substring(i);else{var u=[r,1].concat(t.lines);e.splice.apply(e,u),e[r]=s.substring(0,i)+e[r],e[r+t.lines.length-1]+=s.substring(i)}break;case"remove":var a=t.end.column,f=t.end.row;r===f?e[r]=s.substring(0,i)+s.substring(a):e.splice(r,f-r+1,s.substring(0,i)+e[f].substring(a))}}}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"use strict";function o(e,t,n){var r=n?e.column<=t.column:e.columnthis.row)return;var t=u(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(t.row,t.column,!0)},e.prototype.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._signal("change",{old:i,value:r})},e.prototype.detach=function(){this.document.off("change",this.$onChange)},e.prototype.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},e.prototype.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n},e}();s.prototype.$insertRight=!1,r.implement(s.prototype,i),t.Anchor=s}),define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./apply_delta").applyDelta,s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=e("./anchor").Anchor,a=function(){function e(e){this.$lines=[""],e.length===0?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)}return e.prototype.setValue=function(e){var t=this.getLength()-1;this.remove(new o(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e||"")},e.prototype.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},e.prototype.createAnchor=function(e,t){return new u(this,e,t)},e.prototype.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},e.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},e.prototype.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e,this._signal("changeNewLineMode")},e.prototype.getNewLineMode=function(){return this.$newLineMode},e.prototype.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},e.prototype.getLine=function(e){return this.$lines[e]||""},e.prototype.getLines=function(e,t){return this.$lines.slice(e,t+1)},e.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},e.prototype.getLength=function(){return this.$lines.length},e.prototype.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},e.prototype.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{t=this.getLines(e.start.row,e.end.row),t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column))}return t},e.prototype.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},e.prototype.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},e.prototype.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},e.prototype.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},e.prototype.insertInLine=function(e,t){var n=this.clippedPos(e.row,e.column),r=this.pos(e.row,e.column+t.length);return this.applyDelta({start:n,end:r,action:"insert",lines:[t]},!0),this.clonePos(r)},e.prototype.clippedPos=function(e,t){var n=this.getLength();e===undefined?e=n:e<0?e=0:e>=n&&(e=n-1,t=undefined);var r=this.getLine(e);return t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:e,column:t}},e.prototype.clonePos=function(e){return{row:e.row,column:e.column}},e.prototype.pos=function(e,t){return{row:e,column:t}},e.prototype.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},e.prototype.insertFullLines=function(e,t){e=Math.min(Math.max(e,0),this.getLength());var n=0;e0,r=t=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},e.prototype.replace=function(e,t){e instanceof o||(e=o.fromPoints(e.start,e.end));if(t.length===0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);var n;return t?n=this.insert(e.start,t):n=e.start,n},e.prototype.applyDeltas=function(e){for(var t=0;t=0;t--)this.revertDelta(e[t])},e.prototype.applyDelta=function(e,t){var n=e.action=="insert";if(n?e.lines.length<=1&&!e.lines[0]:!o.comparePoints(e.start,e.end))return;n&&e.lines.length>2e4?this.$splitAndapplyLargeDelta(e,2e4):(i(this.$lines,e,t),this._signal("change",e))},e.prototype.$safeApplyDelta=function(e){var t=this.$lines.length;(e.action=="remove"&&e.start.row20){n.running=setTimeout(n.$worker,20);break}}n.currentLine=t,r==-1&&(r=t),s<=r&&n.fireUpdateEvent(s,r)}}return e.prototype.setTokenizer=function(e){this.tokenizer=e,this.lines=[],this.states=[],this.start(0)},e.prototype.setDocument=function(e){this.doc=e,this.lines=[],this.states=[],this.stop()},e.prototype.fireUpdateEvent=function(e,t){var n={first:e,last:t};this._signal("update",{data:n})},e.prototype.start=function(e){this.currentLine=Math.min(e||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},e.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},e.prototype.$updateOnChange=function(e){var t=e.start.row,n=e.end.row-t;if(n===0)this.lines[t]=null;else if(e.action=="remove")this.lines.splice(t,n+1,null),this.states.splice(t,n+1,null);else{var r=Array(n+1);r.unshift(t,1),this.lines.splice.apply(this.lines,r),this.states.splice.apply(this.states,r)}this.currentLine=Math.min(t,this.currentLine,this.doc.getLength()),this.stop()},e.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},e.prototype.getTokens=function(e){return this.lines[e]||this.$tokenizeRow(e)},e.prototype.getState=function(e){return this.currentLine==e&&this.$tokenizeRow(e),this.states[e]||"start"},e.prototype.$tokenizeRow=function(e){var t=this.doc.getLine(e),n=this.states[e-1],r=this.tokenizer.getLineTokens(t,n,e);return this.states[e]+""!=r.state+""?(this.states[e]=r.state,this.lines[e+1]=null,this.currentLine>e+1&&(this.currentLine=e+1)):this.currentLine==e&&(this.currentLine=e+1),this.lines[e]=r.tokens},e.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},e}();r.implement(s.prototype,i),t.BackgroundTokenizer=s}),define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(e,t,n){"use strict";var r=e("./lib/lang"),i=e("./range").Range,s=function(){function e(e,t,n){n===void 0&&(n="text"),this.setRegexp(e),this.clazz=t,this.type=n,this.docLen=0}return e.prototype.setRegexp=function(e){if(this.regExp+""==e+"")return;this.regExp=e,this.cache=[]},e.prototype.update=function(e,t,n,s){if(!this.regExp)return;var o=s.firstRow,u=s.lastRow,a={},f=n.$editor&&n.$editor.$search,l=f&&f.$isMultilineSearch(n.$editor.getLastSearchOptions()),c=n.getValue().length,h=c!=this.docLen;for(var p=o;p<=u;p++){var d=this.cache[p];if(d==null||h){if(l){d=[];var v=f.$multiLineForward(n,this.regExp,p,u);if(v){var m=v.endRow<=u?v.endRow-1:u;m>p&&(p=m),d.push(new i(v.startRow,v.startCol,v.endRow,v.endCol))}d.length>this.MAX_RANGES&&(d=d.slice(0,this.MAX_RANGES))}else d=r.getMatchOffsets(n.getLine(p),this.regExp),d.length>this.MAX_RANGES&&(d=d.slice(0,this.MAX_RANGES)),d=d.map(function(e){return new i(p,e.offset,p,e.offset+e.length)});this.cache[p]=d.length?d:""}if(d.length===0)continue;for(var g=d.length;g--;){var y=d[g].toScreenRange(n),b=y.toString();if(a[b])continue;a[b]=!0,t.drawSingleLineMarker(e,y,this.clazz,s)}}this.docLen=c},e}();s.prototype.MAX_RANGES=500,t.SearchHighlight=s}),define("ace/undomanager",["require","exports","module","ace/range"],function(e,t,n){"use strict";function i(e,t){for(var n=t;n--;){var r=e[n];if(r&&!r[0].ignore){while(n0){a.row+=i,a.column+=a.row==r.row?s:0;continue}!t&&l<=0&&(a.row=n.row,a.column=n.column,l===0&&(a.bias=1))}}function f(e){return{row:e.row,column:e.column}}function l(e){return{start:f(e.start),end:f(e.end),action:e.action,lines:e.lines.slice()}}function c(e){e=e||this;if(Array.isArray(e))return e.map(c).join("\n");var t="";e.action?(t=e.action=="insert"?"+":"-",t+="["+e.lines+"]"):e.value&&(Array.isArray(e.value)?t=e.value.map(h).join("\n"):t=h(e.value)),e.start&&(t+=h(e));if(e.id||e.rev)t+=" ("+(e.id||e.rev)+")";return t}function h(e){return e.start.row+":"+e.start.column+"=>"+e.end.row+":"+e.end.column}function p(e,t){var n=e.action=="insert",r=t.action=="insert";if(n&&r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.start,e.start)<=0))return null;m(e,t,1)}else if(n&&!r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.end,e.start)<=0))return null;m(e,t,-1)}else if(!n&&r)if(o(t.start,e.start)>=0)m(t,e,1);else{if(!(o(t.start,e.start)<=0))return null;m(e,t,1)}else if(!n&&!r)if(o(t.start,e.start)>=0)m(t,e,1);else{if(!(o(t.end,e.start)<=0))return null;m(e,t,-1)}return[t,e]}function d(e,t){for(var n=e.length;n--;)for(var r=0;r=0?m(e,t,-1):o(e.start,t.start)<=0?m(t,e,1):(m(e,s.fromPoints(t.start,e.start),-1),m(t,e,1));else if(!n&&r)o(t.start,e.end)>=0?m(t,e,-1):o(t.start,e.start)<=0?m(e,t,1):(m(t,s.fromPoints(e.start,t.start),-1),m(e,t,1));else if(!n&&!r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.end,e.start)<=0)){var i,u;return o(e.start,t.start)<0&&(i=e,e=y(e,t.start)),o(e.end,t.end)>0&&(u=y(e,t.end)),g(t.end,e.start,e.end,-1),u&&!i&&(e.lines=u.lines,e.start=u.start,e.end=u.end,u=e),[t,i,u].filter(Boolean)}m(e,t,-1)}return[t,e]}function m(e,t,n){g(e.start,t.start,t.end,n),g(e.end,t.start,t.end,n)}function g(e,t,n,r){e.row==(r==1?t:n).row&&(e.column+=r*(n.column-t.column)),e.row+=r*(n.row-t.row)}function y(e,t){var n=e.lines,r=e.end;e.end=f(t);var i=e.end.row-e.start.row,s=n.splice(i,n.length),o=i?t.column:t.column-e.start.column;n.push(s[0].substring(0,o)),s[0]=s[0].substr(o);var u={start:f(t),end:r,lines:s,action:e.action};return u}function b(e,t){t=l(t);for(var n=e.length;n--;){var r=e[n];for(var i=0;ithis.$undoDepth-1&&this.$undoStack.splice(0,r-this.$undoDepth+1),this.$undoStack.push(this.lastDeltas),e.id=this.$rev=++this.$maxRev}if(e.action=="remove"||e.action=="insert")this.$lastDelta=e;this.lastDeltas.push(e)},e.prototype.addSelection=function(e,t){this.selections.push({value:e,rev:t||this.$rev})},e.prototype.startNewGroup=function(){return this.lastDeltas=null,this.$rev},e.prototype.markIgnored=function(e,t){t==null&&(t=this.$rev+1);var n=this.$undoStack;for(var r=n.length;r--;){var i=n[r][0];if(i.id<=e)break;i.id0},e.prototype.canRedo=function(){return this.$redoStack.length>0},e.prototype.bookmark=function(e){e==undefined&&(e=this.$rev),this.mark=e},e.prototype.isAtBookmark=function(){return this.$rev===this.mark},e.prototype.toJSON=function(){return{$redoStack:this.$redoStack,$undoStack:this.$undoStack}},e.prototype.fromJSON=function(e){this.reset();if(!e)return;this.$undoStack=e.$undoStack||[],this.$redoStack=e.$redoStack||[]},e.prototype.$prettyPrint=function(e){return e?c(e):c(this.$undoStack)+"\n---\n"+c(this.$redoStack)},e}();r.prototype.hasUndo=r.prototype.canUndo,r.prototype.hasRedo=r.prototype.canRedo,r.prototype.isClean=r.prototype.isAtBookmark,r.prototype.markClean=r.prototype.bookmark;var s=e("./range").Range,o=s.comparePoints,u=s.comparePoints;t.UndoManager=r}),define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){function e(e,t){this.foldData=e,Array.isArray(t)?this.folds=t:t=this.folds=[t];var n=t[t.length-1];this.range=new r(t[0].start.row,t[0].start.column,n.end.row,n.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(e){e.setFoldLine(this)},this)}return e.prototype.shiftRow=function(e){this.start.row+=e,this.end.row+=e,this.folds.forEach(function(t){t.start.row+=e,t.end.row+=e})},e.prototype.addFold=function(e){if(e.sameRow){if(e.start.rowthis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(e),this.folds.sort(function(e,t){return-e.range.compareEnd(t.start.row,t.start.column)}),this.range.compareEnd(e.start.row,e.start.column)>0?(this.end.row=e.end.row,this.end.column=e.end.column):this.range.compareStart(e.end.row,e.end.column)<0&&(this.start.row=e.start.row,this.start.column=e.start.column)}else if(e.start.row==this.end.row)this.folds.push(e),this.end.row=e.end.row,this.end.column=e.end.column;else{if(e.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(e),this.start.row=e.start.row,this.start.column=e.start.column}e.foldLine=this},e.prototype.containsRow=function(e){return e>=this.start.row&&e<=this.end.row},e.prototype.walk=function(e,t,n){var r=0,i=this.folds,s,o,u,a=!0;t==null&&(t=this.end.row,n=this.end.column);for(var f=0;f0)continue;var a=i(e,o.start);return u===0?t&&a!==0?-s-2:s:a>0||a===0&&!t?s:-s-1}return-s-1},e.prototype.add=function(e){var t=!e.isEmpty(),n=this.pointIndex(e.start,t);n<0&&(n=-n-1);var r=this.pointIndex(e.end,t,n);return r<0?r=-r-1:r++,this.ranges.splice(n,r-n,e)},e.prototype.addList=function(e){var t=[];for(var n=e.length;n--;)t.push.apply(t,this.add(e[n]));return t},e.prototype.substractPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges.splice(t,1)},e.prototype.merge=function(){var e=[],t=this.ranges;t=t.sort(function(e,t){return i(e.start,t.start)});var n=t[0],r;for(var s=1;s=0},e.prototype.containsPoint=function(e){return this.pointIndex(e)>=0},e.prototype.rangeAtPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges[t]},e.prototype.clipRows=function(e,t){var n=this.ranges;if(n[0].start.row>t||n[n.length-1].start.row=r)break}if(e.action=="insert"){var f=i-r,l=-t.column+n.column;for(;or)break;a.start.row==r&&a.start.column>=t.column&&(a.start.column==t.column&&this.$bias<=0||(a.start.column+=l,a.start.row+=f));if(a.end.row==r&&a.end.column>=t.column){if(a.end.column==t.column&&this.$bias<0)continue;a.end.column==t.column&&l>0&&oa.start.column&&a.end.column==s[o+1].start.column&&(a.end.column-=l),a.end.column+=l,a.end.row+=f}}}else{var f=r-i,l=t.column-n.column;for(;oi)break;if(a.end.rowt.column)a.end.column=t.column,a.end.row=t.row}else a.end.column+=l,a.end.row+=f;else a.end.row>i&&(a.end.row+=f);if(a.start.rowt.column)a.start.column=t.column,a.start.row=t.row}else a.start.column+=l,a.start.row+=f;else a.start.row>i&&(a.start.row+=f)}}if(f!=0&&o=e)return i;if(i.end.row>e)return null}return null},this.getNextFoldLine=function(e,t){var n=this.$foldData,r=0;t&&(r=n.indexOf(t)),r==-1&&(r=0);for(r;r=e)return i}return null},this.getFoldedRowCount=function(e,t){var n=this.$foldData,r=t-e+1;for(var i=0;i=t){u=e?r-=t-u:r=0);break}o>=e&&(u>=e?r-=o-u:r-=o-e+1)}return r},this.$addFoldLine=function(e){return this.$foldData.push(e),this.$foldData.sort(function(e,t){return e.start.row-t.start.row}),e},this.addFold=function(e,t){var n=this.$foldData,r=!1,o;e instanceof s?o=e:(o=new s(t,e),o.collapseChildren=t.collapseChildren),this.$clipRangeToDocument(o.range);var u=o.start.row,a=o.start.column,f=o.end.row,l=o.end.column,c=this.getFoldAt(u,a,1),h=this.getFoldAt(f,l,-1);if(c&&h==c)return c.addSubFold(o);c&&!c.range.isStart(u,a)&&this.removeFold(c),h&&!h.range.isEnd(f,l)&&this.removeFold(h);var p=this.getFoldsInRange(o.range);p.length>0&&(this.removeFolds(p),o.collapseChildren||p.forEach(function(e){o.addSubFold(e)}));for(var d=0;d0&&this.foldAll(e.start.row+1,e.end.row,e.collapseChildren-1),e.subFolds=[]},this.expandFolds=function(e){e.forEach(function(e){this.expandFold(e)},this)},this.unfold=function(e,t){var n,i;if(e==null)n=new r(0,0,this.getLength(),0),t==null&&(t=!0);else if(typeof e=="number")n=new r(e,0,e,this.getLine(e).length);else if("row"in e)n=r.fromPoints(e,e);else{if(Array.isArray(e))return i=[],e.forEach(function(e){i=i.concat(this.unfold(e))},this),i;n=e}i=this.getFoldsInRangeList(n);var s=i;while(i.length==1&&r.comparePoints(i[0].start,n.start)<0&&r.comparePoints(i[0].end,n.end)>0)this.expandFolds(i),i=this.getFoldsInRangeList(n);t!=0?this.removeFolds(i):this.expandFolds(i);if(s.length)return s},this.isRowFolded=function(e,t){return!!this.getFoldLine(e,t)},this.getRowFoldEnd=function(e,t){var n=this.getFoldLine(e,t);return n?n.end.row:e},this.getRowFoldStart=function(e,t){var n=this.getFoldLine(e,t);return n?n.start.row:e},this.getFoldDisplayLine=function(e,t,n,r,i){r==null&&(r=e.start.row),i==null&&(i=0),t==null&&(t=e.end.row),n==null&&(n=this.getLine(t).length);var s=this.doc,o="";return e.walk(function(e,t,n,u){if(tc)break}while(s&&a.test(s.type));s=i.stepBackward()}else s=i.getCurrentToken();f.end.row=i.getCurrentTokenRow(),f.end.column=i.getCurrentTokenColumn();if(f.start.row==f.end.row&&f.start.column>f.end.column)return;return f}},this.foldAll=function(e,t,n,r){n==undefined&&(n=1e5);var i=this.foldWidgets;if(!i)return;t=t||this.getLength(),e=e||0;for(var s=e;s=e&&(s=o.end.row,o.collapseChildren=n,this.addFold("...",o))}},this.foldToLevel=function(e){this.foldAll();while(e-->0)this.unfold(null,!1)},this.foldAllComments=function(){var e=this;this.foldAll(null,null,null,function(t){var n=e.getTokens(t);for(var r=0;r=0){var s=n[r];s==null&&(s=n[r]=this.getFoldWidget(r));if(s=="start"){var o=this.getFoldWidgetRange(r);i||(i=o);if(o&&o.end.row>=e)break}r--}return{range:r!==-1&&o,firstRange:i}},this.onFoldWidgetClick=function(e,t){t instanceof u&&(t=t.domEvent);var n={children:t.shiftKey,all:t.ctrlKey||t.metaKey,siblings:t.altKey},r=this.$toggleFoldWidget(e,n);if(!r){var i=t.target||t.srcElement;i&&/ace_fold-widget/.test(i.className)&&(i.className+=" ace_invalid")}},this.$toggleFoldWidget=function(e,t){if(!this.getFoldWidget)return;var n=this.getFoldWidget(e),r=this.getLine(e),i=n==="end"?-1:1,s=this.getFoldAt(e,i===-1?0:r.length,i);if(s)return t.children||t.all?this.removeFold(s):this.expandFold(s),s;var o=this.getFoldWidgetRange(e,!0);if(o&&!o.isMultiLine()){s=this.getFoldAt(o.start.row,o.start.column,1);if(s&&o.isEqual(s.range))return this.removeFold(s),s}if(t.siblings){var u=this.getParentFoldRangeData(e);if(u.range)var a=u.range.start.row+1,f=u.range.end.row;this.foldAll(a,f,t.all?1e4:0)}else t.children?(f=o?o.end.row:this.getLength(),this.foldAll(e+1,f,t.all?1e4:0)):o&&(t.all&&(o.collapseChildren=1e4),this.addFold("...",o));return o},this.toggleFoldWidget=function(e){var t=this.selection.getCursor().row;t=this.getRowFoldStart(t);var n=this.$toggleFoldWidget(t,{});if(n)return;var r=this.getParentFoldRangeData(t,!0);n=r.range||r.firstRange;if(n){t=n.start.row;var i=this.getFoldAt(t,this.getLine(t).length,1);i?this.removeFold(i):this.addFold("...",n)}},this.updateFoldWidgets=function(e){var t=e.start.row,n=e.end.row-t;if(n===0)this.foldWidgets[t]=null;else if(e.action=="remove")this.foldWidgets.splice(t,n+1,null);else{var r=Array(n+1);r.unshift(t,1),this.foldWidgets.splice.apply(this.foldWidgets,r)}},this.tokenizerUpdateFoldWidgets=function(e){var t=e.data;t.first!=t.last&&this.foldWidgets.length>t.first&&this.foldWidgets.splice(t.first,this.foldWidgets.length)}}var r=e("../range").Range,i=e("./fold_line").FoldLine,s=e("./fold").Fold,o=e("../token_iterator").TokenIterator,u=e("../mouse/mouse_event").MouseEvent;t.Folding=a}),define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,t,n){"use strict";function s(){this.findMatchingBracket=function(e,t){if(e.column==0)return null;var n=t||this.getLine(e.row).charAt(e.column-1);if(n=="")return null;var r=n.match(/([\(\[\{])|([\)\]\}])/);return r?r[1]?this.$findClosingBracket(r[1],e):this.$findOpeningBracket(r[2],e):null},this.getBracketRange=function(e){var t=this.getLine(e.row),n=!0,r,s=t.charAt(e.column-1),o=s&&s.match(/([\(\[\{])|([\)\]\}])/);o||(s=t.charAt(e.column),e={row:e.row,column:e.column+1},o=s&&s.match(/([\(\[\{])|([\)\]\}])/),n=!1);if(!o)return null;if(o[1]){var u=this.$findClosingBracket(o[1],e);if(!u)return null;r=i.fromPoints(e,u),n||(r.end.column++,r.start.column--),r.cursor=r.end}else{var u=this.$findOpeningBracket(o[2],e);if(!u)return null;r=i.fromPoints(u,e),n||(r.start.column++,r.end.column--),r.cursor=r.start}return r},this.getMatchingBracketRanges=function(e,t){var n=this.getLine(e.row),r=/([\(\[\{])|([\)\]\}])/,s=!t&&n.charAt(e.column-1),o=s&&s.match(r);o||(s=(t===undefined||t)&&n.charAt(e.column),e={row:e.row,column:e.column+1},o=s&&s.match(r));if(!o)return null;var u=new i(e.row,e.column-1,e.row,e.column),a=o[1]?this.$findClosingBracket(o[1],e):this.$findOpeningBracket(o[2],e);if(!a)return[u];var f=new i(a.row,a.column,a.row,a.column+1);return[u,f]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(e,t,n){var i=this.$brackets[e],s=1,o=new r(this,t.row,t.column),u=o.getCurrentToken();u||(u=o.stepForward());if(!u)return;n||(n=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)").replace(/-close\b/,"-(close|open)")+")+"));var a=t.column-o.getCurrentTokenColumn()-2,f=u.value;for(;;){while(a>=0){var l=f.charAt(a);if(l==i){s-=1;if(s==0)return{row:o.getCurrentTokenRow(),column:a+o.getCurrentTokenColumn()}}else l==e&&(s+=1);a-=1}do u=o.stepBackward();while(u&&!n.test(u.type));if(u==null)break;f=u.value,a=f.length-1}return null},this.$findClosingBracket=function(e,t,n){var i=this.$brackets[e],s=1,o=new r(this,t.row,t.column),u=o.getCurrentToken();u||(u=o.stepForward());if(!u)return;n||(n=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)").replace(/-open\b/,"-(close|open)")+")+"));var a=t.column-o.getCurrentTokenColumn();for(;;){var f=u.value,l=f.length;while(a"?r=!0:t.type.indexOf("tag-name")!==-1&&(n=!0));while(t&&!n);return t},this.$findClosingTag=function(e,t){var n,r=t.value,s=t.value,o=0,u=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);t=e.stepForward();var a=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+t.value.length),f=!1;do{n=t;if(n.type.indexOf("tag-close")!==-1&&!f){var l=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);f=!0}t=e.stepForward();if(t){if(t.value===">"&&!f){var l=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);f=!0}if(t.type.indexOf("tag-name")!==-1){r=t.value;if(s===r)if(n.value==="<")o++;else if(n.value==="")return;var p=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1)}}}else if(s===r&&t.value==="/>"){o--;if(o<0)var c=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+2),h=c,p=h,l=new i(a.end.row,a.end.column,a.end.row,a.end.column+1)}}}while(t&&o>=0);if(u&&l&&c&&p&&a&&h)return{openTag:new i(u.start.row,u.start.column,l.end.row,l.end.column),closeTag:new i(c.start.row,c.start.column,p.end.row,p.end.column),openTagName:a,closeTagName:h}},this.$findOpeningTag=function(e,t){var n=e.getCurrentToken(),r=t.value,s=0,o=e.getCurrentTokenRow(),u=e.getCurrentTokenColumn(),a=u+2,f=new i(o,u,o,a);e.stepForward();var l=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+t.value.length);t.type.indexOf("tag-close")===-1&&(t=e.stepForward());if(!t||t.value!==">")return;var c=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);e.stepBackward(),e.stepBackward();do{t=n,o=e.getCurrentTokenRow(),u=e.getCurrentTokenColumn(),a=u+t.value.length,n=e.stepBackward();if(t)if(t.type.indexOf("tag-name")!==-1){if(r===t.value)if(n.value==="<"){s++;if(s>0){var h=new i(o,u,o,a),p=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);do t=e.stepForward();while(t&&t.value!==">");var d=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1)}}else n.value===""){var v=0,m=n;while(m){if(m.type.indexOf("tag-name")!==-1&&m.value===r){s--;break}if(m.value==="<")break;m=e.stepBackward(),v++}for(var g=0;g=4352&&e<=4447||e>=4515&&e<=4519||e>=4602&&e<=4607||e>=9001&&e<=9002||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12283||e>=12288&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12589||e>=12593&&e<=12686||e>=12688&&e<=12730||e>=12736&&e<=12771||e>=12784&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=13054||e>=13056&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=55216&&e<=55238||e>=55243&&e<=55291||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=65281&&e<=65376||e>=65504&&e<=65510}var r=e("./lib/oop"),i=e("./lib/lang"),s=e("./bidihandler").BidiHandler,o=e("./config"),u=e("./lib/event_emitter").EventEmitter,a=e("./selection").Selection,f=e("./mode/text").Mode,l=e("./range").Range,c=e("./line_widgets").LineWidgets,h=e("./document").Document,p=e("./background_tokenizer").BackgroundTokenizer,d=e("./search_highlight").SearchHighlight,v=e("./undomanager").UndoManager,m=function(){function e(t,n){this.doc,this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$editor=null,this.prevOp={},this.$foldData=[],this.id="session"+ ++e.$uid,this.$foldData.toString=function(){return this.join("\n")},this.$gutterCustomWidgets={},this.bgTokenizer=new p((new f).getTokenizer(),this);var r=this;this.bgTokenizer.on("update",function(e){r._signal("tokenizerUpdate",e)}),this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this);if(typeof t!="object"||!t.getLine)t=new h(t);this.setDocument(t),this.selection=new a(this),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.selection.on("changeCursor",this.$onSelectionChange),this.$bidiHandler=new s(this),o.resetOptions(this),this.setMode(n),o._signal("session",this),this.destroyed=!1,this.$initOperationListeners()}return e.prototype.$initOperationListeners=function(){var e=this;this.curOp=null,this.on("change",function(){e.curOp||(e.startOperation(),e.curOp.selectionBefore=e.$lastSel),e.curOp.docChanged=!0},!0),this.on("changeSelection",function(){e.curOp||(e.startOperation(),e.curOp.selectionBefore=e.$lastSel),e.curOp.selectionChanged=!0},!0),this.$operationResetTimer=i.delayedCall(this.endOperation.bind(this,!0))},e.prototype.startOperation=function(e){if(this.curOp){if(!e||this.curOp.command)return;this.prevOp=this.curOp}e||(e={}),this.$operationResetTimer.schedule(),this.curOp={command:e.command||{},args:e.args},this.curOp.selectionBefore=this.selection.toJSON(),this._signal("startOperation",e)},e.prototype.endOperation=function(e){if(this.curOp){if(e&&e.returnValue===!1){this.curOp=null,this._signal("endOperation",e);return}if(e==1&&this.curOp.command&&this.curOp.command.name=="mouse")return;var t=this.selection.toJSON();this.curOp.selectionAfter=t,this.$lastSel=this.selection.toJSON(),this.getUndoManager().addSelection(t),this._signal("beforeEndOperation"),this.prevOp=this.curOp,this.curOp=null,this._signal("endOperation",e)}},e.prototype.setDocument=function(e){this.doc&&this.doc.off("change",this.$onChange),this.doc=e,e.on("change",this.$onChange,!0),this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},e.prototype.getDocument=function(){return this.doc},Object.defineProperty(e.prototype,"widgetManager",{get:function(){var e=new c(this);return this.widgetManager=e,this.$editor&&e.attach(this.$editor),e},set:function(e){Object.defineProperty(this,"widgetManager",{writable:!0,enumerable:!0,configurable:!0,value:e})},enumerable:!1,configurable:!0}),e.prototype.$resetRowCache=function(e){if(!e){this.$docRowCache=[],this.$screenRowCache=[];return}var t=this.$docRowCache.length,n=this.$getRowCacheIndex(this.$docRowCache,e)+1;t>n&&(this.$docRowCache.splice(n,t),this.$screenRowCache.splice(n,t))},e.prototype.$getRowCacheIndex=function(e,t){var n=0,r=e.length-1;while(n<=r){var i=n+r>>1,s=e[i];if(t>s)n=i+1;else{if(!(t=t)break}return r=n[s],r?(r.index=s,r.start=i-r.value.length,r):null},e.prototype.setUndoManager=function(e){this.$undoManager=e,this.$informUndoManager&&this.$informUndoManager.cancel();if(e){var t=this;e.addSession(this),this.$syncInformUndoManager=function(){t.$informUndoManager.cancel(),t.mergeUndoDeltas=!1},this.$informUndoManager=i.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},e.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},e.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},e.prototype.getTabString=function(){return this.getUseSoftTabs()?i.stringRepeat(" ",this.getTabSize()):" "},e.prototype.setUseSoftTabs=function(e){this.setOption("useSoftTabs",e)},e.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},e.prototype.setTabSize=function(e){this.setOption("tabSize",e)},e.prototype.getTabSize=function(){return this.$tabSize},e.prototype.isTabStop=function(e){return this.$useSoftTabs&&e.column%this.$tabSize===0},e.prototype.setNavigateWithinSoftTabs=function(e){this.setOption("navigateWithinSoftTabs",e)},e.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},e.prototype.setOverwrite=function(e){this.setOption("overwrite",e)},e.prototype.getOverwrite=function(){return this.$overwrite},e.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},e.prototype.addGutterDecoration=function(e,t){this.$decorations[e]||(this.$decorations[e]=""),this.$decorations[e]+=" "+t,this._signal("changeBreakpoint",{})},e.prototype.removeGutterCustomWidget=function(e){this.$editor&&this.$editor.renderer.$gutterLayer.$removeCustomWidget(e)},e.prototype.addGutterCustomWidget=function(e,t){this.$editor&&this.$editor.renderer.$gutterLayer.$addCustomWidget(e,t)},e.prototype.removeGutterDecoration=function(e,t){this.$decorations[e]=(this.$decorations[e]||"").replace(" "+t,""),this._signal("changeBreakpoint",{})},e.prototype.getBreakpoints=function(){return this.$breakpoints},e.prototype.setBreakpoints=function(e){this.$breakpoints=[];for(var t=0;t0&&(r=!!n.charAt(t-1).match(this.tokenRe)),r||(r=!!n.charAt(t).match(this.tokenRe));if(r)var i=this.tokenRe;else if(/^\s+$/.test(n.slice(t-1,t+1)))var i=/\s/;else var i=this.nonTokenRe;var s=t;if(s>0){do s--;while(s>=0&&n.charAt(s).match(i));s++}var o=t;while(oe&&(e=t.screenWidth)}),this.lineWidgetWidth=e},e.prototype.$computeWidth=function(e){if(this.$modified||e){this.$modified=!1;if(this.$useWrapMode)return this.screenWidth=this.$wrapLimit;var t=this.doc.getAllLines(),n=this.$rowLengthCache,r=0,i=0,s=this.$foldData[i],o=s?s.start.row:Infinity,u=t.length;for(var a=0;ao){a=s.end.row+1;if(a>=u)break;s=this.$foldData[i++],o=s?s.start.row:Infinity}n[a]==null&&(n[a]=this.$getStringScreenWidth(t[a])[0]),n[a]>r&&(r=n[a])}this.screenWidth=r}},e.prototype.getLine=function(e){return this.doc.getLine(e)},e.prototype.getLines=function(e,t){return this.doc.getLines(e,t)},e.prototype.getLength=function(){return this.doc.getLength()},e.prototype.getTextRange=function(e){return this.doc.getTextRange(e||this.selection.getRange())},e.prototype.insert=function(e,t){return this.doc.insert(e,t)},e.prototype.remove=function(e){return this.doc.remove(e)},e.prototype.removeFullLines=function(e,t){return this.doc.removeFullLines(e,t)},e.prototype.undoChanges=function(e,t){if(!e.length)return;this.$fromUndo=!0;for(var n=e.length-1;n!=-1;n--){var r=e[n];r.action=="insert"||r.action=="remove"?this.doc.revertDelta(r):r.folds&&this.addFolds(r.folds)}!t&&this.$undoSelect&&(e.selectionBefore?this.selection.fromJSON(e.selectionBefore):this.selection.setRange(this.$getUndoSelection(e,!0))),this.$fromUndo=!1},e.prototype.redoChanges=function(e,t){if(!e.length)return;this.$fromUndo=!0;for(var n=0;ne.end.column&&(s.start.column+=u),s.end.row==e.end.row&&s.end.column>e.end.column&&(s.end.column+=u)),o&&s.start.row>=e.end.row&&(s.start.row+=o,s.end.row+=o)}s.end=this.insert(s.start,r);if(i.length){var a=e.start,f=s.start,o=f.row-a.row,u=f.column-a.column;this.addFolds(i.map(function(e){return e=e.clone(),e.start.row==a.row&&(e.start.column+=u),e.end.row==a.row&&(e.end.column+=u),e.start.row+=o,e.end.row+=o,e}))}return s},e.prototype.indentRows=function(e,t,n){n=n.replace(/\t/g,this.getTabString());for(var r=e;r<=t;r++)this.doc.insertInLine({row:r,column:0},n)},e.prototype.outdentRows=function(e){var t=e.collapseRows(),n=new l(0,0,0,0),r=this.getTabSize();for(var i=t.start.row;i<=t.end.row;++i){var s=this.getLine(i);n.start.row=i,n.end.row=i;for(var o=0;o0){var r=this.getRowFoldEnd(t+n);if(r>this.doc.getLength()-1)return 0;var i=r-t}else{e=this.$clipRowToDocument(e),t=this.$clipRowToDocument(t);var i=t-e+1}var s=new l(e,0,t,Number.MAX_VALUE),o=this.getFoldsInRange(s).map(function(e){return e=e.clone(),e.start.row+=i,e.end.row+=i,e}),u=n==0?this.doc.getLines(e,t):this.doc.removeFullLines(e,t);return this.doc.insertFullLines(e+i,u),o.length&&this.addFolds(o),i},e.prototype.moveLinesUp=function(e,t){return this.$moveLines(e,t,-1)},e.prototype.moveLinesDown=function(e,t){return this.$moveLines(e,t,1)},e.prototype.duplicateLines=function(e,t){return this.$moveLines(e,t,0)},e.prototype.$clipRowToDocument=function(e){return Math.max(0,Math.min(e,this.doc.getLength()-1))},e.prototype.$clipColumnToRow=function(e,t){return t<0?0:Math.min(this.doc.getLine(e).length,t)},e.prototype.$clipPositionToDocument=function(e,t){t=Math.max(0,t);if(e<0)e=0,t=0;else{var n=this.doc.getLength();e>=n?(e=n-1,t=this.doc.getLine(n-1).length):t=Math.min(this.doc.getLine(e).length,t)}return{row:e,column:t}},e.prototype.$clipRangeToDocument=function(e){e.start.row<0?(e.start.row=0,e.start.column=0):e.start.column=this.$clipColumnToRow(e.start.row,e.start.column);var t=this.doc.getLength()-1;return e.end.row>t?(e.end.row=t,e.end.column=this.doc.getLine(t).length):e.end.column=this.$clipColumnToRow(e.end.row,e.end.column),e},e.prototype.setUseWrapMode=function(e){if(e!=this.$useWrapMode){this.$useWrapMode=e,this.$modified=!0,this.$resetRowCache(0);if(e){var t=this.getLength();this.$wrapData=Array(t),this.$updateWrapData(0,t-1)}this._signal("changeWrapMode")}},e.prototype.getUseWrapMode=function(){return this.$useWrapMode},e.prototype.setWrapLimitRange=function(e,t){if(this.$wrapLimitRange.min!==e||this.$wrapLimitRange.max!==t)this.$wrapLimitRange={min:e,max:t},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode")},e.prototype.adjustWrapLimit=function(e,t){var n=this.$wrapLimitRange;n.max<0&&(n={min:t,max:t});var r=this.$constrainWrapLimit(e,n.min,n.max);return r!=this.$wrapLimit&&r>1?(this.$wrapLimit=r,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},e.prototype.$constrainWrapLimit=function(e,t,n){return t&&(e=Math.max(t,e)),n&&(e=Math.min(n,e)),e},e.prototype.getWrapLimit=function(){return this.$wrapLimit},e.prototype.setWrapLimit=function(e){this.setWrapLimitRange(e,e)},e.prototype.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},e.prototype.$updateInternalDataOnChange=function(e){var t=this.$useWrapMode,n=e.action,r=e.start,i=e.end,s=r.row,o=i.row,u=o-s,a=null;this.$updating=!0;if(u!=0)if(n==="remove"){this[t?"$wrapData":"$rowLengthCache"].splice(s,u);var f=this.$foldData;a=this.getFoldsInRange(e),this.removeFolds(a);var l=this.getFoldLine(i.row),c=0;if(l){l.addRemoveChars(i.row,i.column,r.column-i.column),l.shiftRow(-u);var h=this.getFoldLine(s);h&&h!==l&&(h.merge(l),l=h),c=f.indexOf(l)+1}for(c;c=i.row&&l.shiftRow(-u)}o=s}else{var p=Array(u);p.unshift(s,0);var d=t?this.$wrapData:this.$rowLengthCache;d.splice.apply(d,p);var f=this.$foldData,l=this.getFoldLine(s),c=0;if(l){var v=l.range.compareInside(r.row,r.column);v==0?(l=l.split(r.row,r.column),l&&(l.shiftRow(u),l.addRemoveChars(o,0,i.column-r.column))):v==-1&&(l.addRemoveChars(s,0,i.column-r.column),l.shiftRow(u)),c=f.indexOf(l)+1}for(c;c=s&&l.shiftRow(u)}}else{u=Math.abs(e.start.column-e.end.column),n==="remove"&&(a=this.getFoldsInRange(e),this.removeFolds(a),u=-u);var l=this.getFoldLine(s);l&&l.addRemoveChars(s,r.column,u)}return t&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,t?this.$updateWrapData(s,o):this.$updateRowLengthCache(s,o),a},e.prototype.$updateRowLengthCache=function(e,t){this.$rowLengthCache[e]=null,this.$rowLengthCache[t]=null},e.prototype.$updateWrapData=function(e,t){var n=this.doc.getAllLines(),r=this.getTabSize(),i=this.$wrapData,s=this.$wrapLimit,o,u,a=e;t=Math.min(t,n.length-1);while(a<=t)u=this.getFoldLine(a,u),u?(o=[],u.walk(function(e,t,r,i){var s;if(e!=null){s=this.$getDisplayTokens(e,o.length),s[0]=b;for(var u=1;ut-h){var p=s+t-h;if(e[p-1]>=S&&e[p]>=S){c(p);continue}if(e[p]==b||e[p]==w){for(p;p!=s-1;p--)if(e[p]==b)break;if(p>s){c(p);continue}p=s+t;for(p;p>2)),s-1);while(p>d&&e[p]d&&e[p]d&&e[p]==E)p--}else while(p>d&&e[p]d){c(++p);continue}p=s+t,e[p]==y&&p--,c(p-h)}return r},e.prototype.$getDisplayTokens=function(e,t){var n=[],r;t=t||0;for(var i=0;i39&&s<48||s>57&&s<64?n.push(E):s>=4352&&N(s)?n.push(g,y):n.push(g)}return n},e.prototype.$getStringScreenWidth=function(e,t,n){if(t==0)return[0,0];t==null&&(t=Infinity),n=n||0;var r,i;for(i=0;it)break}return[n,i]},e.prototype.getRowLength=function(e){var t=1;return this.lineWidgets&&(t+=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0),!this.$useWrapMode||!this.$wrapData[e]?t:this.$wrapData[e].length+t},e.prototype.getRowLineCount=function(e){return!this.$useWrapMode||!this.$wrapData[e]?1:this.$wrapData[e].length+1},e.prototype.getRowWrapIndent=function(e){if(this.$useWrapMode){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE),n=this.$wrapData[t.row];return n.length&&n[0]=0)var o=a[f],r=this.$docRowCache[f],c=e>a[l-1];else var c=!l;var h=this.getLength()-1,p=this.getNextFoldLine(r),d=p?p.start.row:Infinity;while(o<=e){u=this.getRowLength(r);if(o+u>e||r>=h)break;o+=u,r++,r>d&&(r=p.end.row+1,p=this.getNextFoldLine(r,p),d=p?p.start.row:Infinity),c&&(this.$docRowCache.push(r),this.$screenRowCache.push(o))}if(p&&p.start.row<=r)n=this.getFoldDisplayLine(p),r=p.start.row;else{if(o+u<=e||r>h)return{row:h,column:this.getLine(h).length};n=this.getLine(r),p=null}var v=0,m=Math.floor(e-o);if(this.$useWrapMode){var g=this.$wrapData[r];g&&(s=g[m],m>0&&g.length&&(v=g.indent,i=g[m-1]||g[g.length-1],n=n.substring(i)))}return i+=this.$getStringScreenWidth(n,t-v)[1],this.$useWrapMode&&i>=s&&(i=s-1),p?p.idxToPosition(i):{row:r,column:i}},e.prototype.documentToScreenPosition=function(e,t){if(typeof t=="undefined")var n=this.$clipPositionToDocument(e.row,e.column);else n=this.$clipPositionToDocument(e,t);e=n.row,t=n.column;var r=0,i=null,s=null;s=this.getFoldAt(e,t,1),s&&(e=s.start.row,t=s.start.column);var o,u=0,a=this.$docRowCache,f=this.$getRowCacheIndex(a,e),l=a.length;if(l&&f>=0)var u=a[f],r=this.$screenRowCache[f],c=e>a[l-1];else var c=!l;var h=this.getNextFoldLine(u),p=h?h.start.row:Infinity;while(u=p){o=h.end.row+1;if(o>e)break;h=this.getNextFoldLine(o,h),p=h?h.start.row:Infinity}else o=u+1;r+=this.getRowLength(u),u=o,c&&(this.$docRowCache.push(u),this.$screenRowCache.push(r))}var d="";h&&u>=p?(d=this.getFoldDisplayLine(h,e,t),i=h.start.row):(d=this.getLine(e).substring(0,t),i=e);var v=0;if(this.$useWrapMode){var m=this.$wrapData[i];if(m){var g=0;while(d.length>=m[g])r++,g++;d=d.substring(m[g-1]||0,d.length),v=g>0?m.indent:0}}return this.lineWidgets&&this.lineWidgets[u]&&this.lineWidgets[u].rowsAbove&&(r+=this.lineWidgets[u].rowsAbove),{row:r,column:v+this.$getStringScreenWidth(d)[0]}},e.prototype.documentToScreenColumn=function(e,t){return this.documentToScreenPosition(e,t).column},e.prototype.documentToScreenRow=function(e,t){return this.documentToScreenPosition(e,t).row},e.prototype.getScreenLength=function(){var e=0,t=null;if(!this.$useWrapMode){e=this.getLength();var n=this.$foldData;for(var r=0;ro&&(s=t.end.row+1,t=this.$foldData[r++],o=t?t.start.row:Infinity)}}return this.lineWidgets&&(e+=this.$getWidgetScreenLength()),e},e.prototype.$setFontMetrics=function(e){if(!this.$enableVarChar)return;this.$getStringScreenWidth=function(t,n,r){if(n===0)return[0,0];n||(n=Infinity),r=r||0;var i,s;for(s=0;sn)break}return[r,s]}},e.prototype.getPrecedingCharacter=function(){var e=this.selection.getCursor();if(e.column===0)return e.row===0?"":this.doc.getNewLineCharacter();var t=this.getLine(e.row);return t[e.column-1]},e.prototype.destroy=function(){this.destroyed||(this.bgTokenizer.setDocument(null),this.bgTokenizer.cleanup(),this.destroyed=!0),this.endOperation(),this.$stopWorker(),this.removeAllListeners(),this.doc&&this.doc.off("change",this.$onChange),this.selection&&(this.selection.off("changeCursor",this.$onSelectionChange),this.selection.off("changeSelection",this.$onSelectionChange)),this.selection.detach()},e}();m.$uid=0,m.prototype.$modes=o.$modes,m.prototype.getValue=m.prototype.toString,m.prototype.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},m.prototype.$overwrite=!1,m.prototype.$mode=null,m.prototype.$modeId=null,m.prototype.$scrollTop=0,m.prototype.$scrollLeft=0,m.prototype.$wrapLimit=80,m.prototype.$useWrapMode=!1,m.prototype.$wrapLimitRange={min:null,max:null},m.prototype.lineWidgets=null,m.prototype.isFullWidth=N,r.implement(m.prototype,u);var g=1,y=2,b=3,w=4,E=9,S=10,x=11,T=12;e("./edit_session/folding").Folding.call(m.prototype),e("./edit_session/bracket_match").BracketMatch.call(m.prototype),o.defineOptions(m.prototype,"session",{wrap:{set:function(e){!e||e=="off"?e=!1:e=="free"?e=!0:e=="printMargin"?e=-1:typeof e=="string"&&(e=parseInt(e,10)||!1);if(this.$wrap==e)return;this.$wrap=e;if(!e)this.setUseWrapMode(!1);else{var t=typeof e=="number"?e:null;this.setWrapLimitRange(t,t),this.setUseWrapMode(!0)}},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(e){e=e=="auto"?this.$mode.type!="text":e!="text",e!=this.$wrapAsCode&&(this.$wrapAsCode=e,this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0)))},initialValue:"auto"},indentedSoftWrap:{set:function(){this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0))},initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(e){this.$useWorker=e,this.$stopWorker(),e&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(e){e=parseInt(e),e>0&&this.$tabSize!==e&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=e,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(e){this.setFoldStyle(e)},handlesSet:!0},overwrite:{set:function(e){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(e){this.doc.setNewLineMode(e)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(e){this.setMode(e)},get:function(){return this.$modeId},handlesSet:!0}}),t.EditSession=m}),define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,n){"use strict";function u(e,t){function i(e,r){r===void 0&&(r=!0);var i=n&&t.$supportsUnicodeFlag?new RegExp("[\\p{L}\\p{N}_]","u"):new RegExp("\\w");if(i.test(e)||t.regExp)return n&&t.$supportsUnicodeFlag?r?"(?<=^|[^\\p{L}\\p{N}_])":"(?=[^\\p{L}\\p{N}_]|$)":"\\b";return""}var n=r.supportsLookbehind(),s=Array.from(e),o=s[0],u=s[s.length-1];return i(o)+e+i(u,!1)}function a(e,t,n){var r=null,i=0;while(i<=e.length){t.lastIndex=i;var s=t.exec(e);if(!s)break;var o=s.index+s[0].length;if(o>e.length-n)break;if(!r||o>r.index+r[0].length)r=s;i=s.index+1}return r}function f(e,t){var n=5e3,r={row:t,column:0},i=e.doc.positionToIndex(r),s=i+n,o=e.doc.indexToPosition(s),u=o.row;return u+1}var r=e("./lib/lang"),i=e("./lib/oop"),s=e("./range").Range,o=function(){function e(){this.$options={}}return e.prototype.set=function(e){return i.mixin(this.$options,e),this},e.prototype.getOptions=function(){return r.copyObject(this.$options)},e.prototype.setOptions=function(e){this.$options=e},e.prototype.find=function(e){var t=this.$options,n=this.$matchIterator(e,t);if(!n)return!1;var r=null;return n.forEach(function(e,n,i,o){return r=new s(e,n,i,o),n==o&&t.start&&t.start.start&&t.skipCurrent!=0&&r.isEqual(t.start)?(r=null,!1):!0}),r},e.prototype.findAll=function(e){var t=this.$options;if(!t.needle)return[];this.$assembleRegExp(t);var n=t.range,i=n?e.getLines(n.start.row,n.end.row):e.doc.getAllLines(),o=[],u=t.re;if(t.$isMultiLine){var a=u.length,f=i.length-a,l;e:for(var c=u.offset||0;c<=f;c++){for(var h=0;hv)continue;o.push(l=new s(c,v,c+a-1,m)),a>2&&(c=c+a-2)}}else for(var g,y=0;yy&&(y=w),o.push(new s(g.startRow,g.startCol,g.endRow,g.endCol))}}else{g=r.getMatchOffsets(i[y],u);for(var h=0;hx&&o[h].end.row==T)h--;o=o.slice(y,h+1);for(y=0,h=o.length;y=i){n+="\\";break}var o=e.charCodeAt(r);switch(o){case t.Backslash:n+="\\";break;case t.n:n+="\n";break;case t.t:n+=" "}continue}if(s===t.DollarSign){r++;if(r>=i){n+="$";break}var u=e.charCodeAt(r);if(u===t.DollarSign){n+="$$";continue}if(u===t.Digit0||u===t.Ampersand){n+="$&";continue}if(t.Digit1<=u&&u<=t.Digit9){n+="$"+e[r];continue}}n+=e[r]}return n||e},e.prototype.replace=function(e,t){var n=this.$options,r=this.$assembleRegExp(n);if(n.$isMultiLine)return t;if(!r)return;var i=this.$isMultilineSearch(n);i&&(e=e.replace(/\r\n|\r|\n/g,"\n"));var s=r.exec(e);if(!s||!i&&s[0].length!=e.length)return null;t=n.regExp?this.parseReplaceString(t):t.replace(/\$/g,"$$$$"),t=e.replace(r,t);if(n.preserveCase){t=t.split("");for(var o=Math.min(e.length,e.length);o--;){var u=e[o];u&&u.toLowerCase()!=u?t[o]=t[o].toUpperCase():t[o]=t[o].toLowerCase()}t=t.join("")}return t},e.prototype.$assembleRegExp=function(e,t){if(e.needle instanceof RegExp)return e.re=e.needle;var n=e.needle;if(!e.needle)return e.re=!1;e.regExp||(n=r.escapeRegExp(n));var i=e.caseSensitive?"gm":"gmi";try{new RegExp(n,"u"),e.$supportsUnicodeFlag=!0,i+="u"}catch(s){e.$supportsUnicodeFlag=!1}e.wholeWord&&(n=u(n,e)),e.$isMultiLine=!t&&/[\n\r]/.test(n);if(e.$isMultiLine)return e.re=this.$assembleMultilineRegExp(n,i);try{var o=new RegExp(n,i)}catch(s){o=!1}return e.re=o},e.prototype.$assembleMultilineRegExp=function(e,t){var n=e.replace(/\r\n|\r|\n/g,"$\n^").split("\n"),r=[];for(var i=0;ir)break;var a=e.getLine(o++);i=i==null?a:i+"\n"+a}var l=t.exec(i);t.lastIndex=0;if(l){var c=i.slice(0,l.index).split("\n"),h=l[0].split("\n"),p=n+c.length-1,d=c[c.length-1].length,v=p+h.length-1,m=h.length==1?d+h[0].length:h[h.length-1].length;return{startRow:p,startCol:d,endRow:v,endCol:m}}}return null},e.prototype.$multiLineBackward=function(e,t,n,r,i){var s,o=f(e,r),u=e.getLine(r).length-n;for(var l=r;l>=i;){for(var c=0;c=i;c++){var h=e.getLine(l--);s=s==null?h:h+"\n"+s}var p=a(s,t,u);if(p){var d=s.slice(0,p.index).split("\n"),v=p[0].split("\n"),m=l+d.length,g=d[d.length-1].length,y=m+v.length-1,b=v.length==1?g+v[0].length:v[v.length-1].length;return{startRow:m,startCol:g,endRow:y,endCol:b}}}return null},e.prototype.$matchIterator=function(e,t){var n=this.$assembleRegExp(t);if(!n)return!1;var i=this.$isMultilineSearch(t),s=this.$multiLineForward,o=this.$multiLineBackward,u=t.backwards==1,a=t.skipCurrent!=0,f=n.unicode,l=t.range,c=t.start;c||(c=l?l[u?"end":"start"]:e.selection.getRange()),c.start&&(c=c[a!=u?"end":"start"]);var h=l?l.start.row:0,p=l?l.end.row:e.getLength()-1;if(u)var d=function(e){var n=c.row;if(m(n,c.column,e))return;for(n--;n>=h;n--)if(m(n,Number.MAX_VALUE,e))return;if(t.wrap==0)return;for(n=p,h=c.row;n>=h;n--)if(m(n,Number.MAX_VALUE,e))return};else var d=function(e){var n=c.row;if(m(n,c.column,e))return;for(n+=1;n<=p;n++)if(m(n,0,e))return;if(t.wrap==0)return;for(n=h,p=c.row;n<=p;n++)if(m(n,0,e))return};if(t.$isMultiLine)var v=n.length,m=function(t,r,i){var s=u?t-v+1:t;if(s<0||s+v>e.getLength())return;var o=e.getLine(s),a=o.search(n[0]);if(!u&&ar)return;if(i(s,a,s+v-1,l))return!0};else if(u)var m=function(t,s,u){if(i){var a=o(e,n,s,t,h);if(!a)return!1;if(u(a.startRow,a.startCol,a.endRow,a.endCol))return!0}else{var l=e.getLine(t),c=[],p,d=0;n.lastIndex=0;while(p=n.exec(l)){var v=p[0].length;d=p.index;if(!v){if(d>=l.length)break;n.lastIndex=d+=r.skipEmptyMatch(l,d,f)}if(p.index+v>s)break;c.push(p.index,v)}for(var m=c.length-1;m>=0;m-=2){var g=c[m-1],v=c[m];if(u(t,g,t,g+v))return!0}}};else var m=function(t,o,u){n.lastIndex=o;if(i){var a=s(e,n,t,p);if(a){var l=a.endRow<=p?a.endRow-1:p;l>t&&(t=l)}if(!a)return!1;if(u(a.startRow,a.startCol,a.endRow,a.endCol))return!0}else{var c=e.getLine(t),h,d;while(d=n.exec(c)){var v=d[0].length;h=d.index;if(u(t,h,t,h+v))return!0;if(!v){n.lastIndex=h+=r.skipEmptyMatch(c,h,f);if(h>=c.length)return!1}}}};return{forEach:d}},e}();t.Search=o}),define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,n){"use strict";function a(e){return typeof e=="object"&&e.bindKey&&e.bindKey.position||(e.isDefault?-100:0)}var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("../lib/keys"),s=e("../lib/useragent"),o=i.KEY_MODS,u=function(){function e(e,t){this.$init(e,t,!1)}return e.prototype.$init=function(e,t,n){this.platform=t||(s.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(e),this.$singleCommand=n},e.prototype.addCommand=function(e){this.commands[e.name]&&this.removeCommand(e),this.commands[e.name]=e,e.bindKey&&this._buildKeyHash(e)},e.prototype.removeCommand=function(e,t){var n=e&&(typeof e=="string"?e:e.name);e=this.commands[n],t||delete this.commands[n];var r=this.commandKeyBinding;for(var i in r){var s=r[i];if(s==e)delete r[i];else if(Array.isArray(s)){var o=s.indexOf(e);o!=-1&&(s.splice(o,1),s.length==1&&(r[i]=s[0]))}}},e.prototype.bindKey=function(e,t,n){typeof e=="object"&&e&&(n==undefined&&(n=e.position),e=e[this.platform]);if(!e)return;if(typeof t=="function")return this.addCommand({exec:t,bindKey:e,name:t.name||e});e.split("|").forEach(function(e){var r="";if(e.indexOf(" ")!=-1){var i=e.split(/\s+/);e=i.pop(),i.forEach(function(e){var t=this.parseKeys(e),n=o[t.hashId]+t.key;r+=(r?" ":"")+n,this._addCommandToBinding(r,"chainKeys")},this),r+=" "}var s=this.parseKeys(e),u=o[s.hashId]+s.key;this._addCommandToBinding(r+u,t,n)},this)},e.prototype._addCommandToBinding=function(e,t,n){var r=this.commandKeyBinding,i;if(!t)delete r[e];else if(!r[e]||this.$singleCommand)r[e]=t;else{Array.isArray(r[e])?(i=r[e].indexOf(t))!=-1&&r[e].splice(i,1):r[e]=[r[e]],typeof n!="number"&&(n=a(t));var s=r[e];for(i=0;in)break}s.splice(i,0,t)}},e.prototype.addCommands=function(e){e&&Object.keys(e).forEach(function(t){var n=e[t];if(!n)return;if(typeof n=="string")return this.bindKey(n,t);typeof n=="function"&&(n={exec:n});if(typeof n!="object")return;n.name||(n.name=t),this.addCommand(n)},this)},e.prototype.removeCommands=function(e){Object.keys(e).forEach(function(t){this.removeCommand(e[t])},this)},e.prototype.bindKeys=function(e){Object.keys(e).forEach(function(t){this.bindKey(t,e[t])},this)},e.prototype._buildKeyHash=function(e){this.bindKey(e.bindKey,e)},e.prototype.parseKeys=function(e){var t=e.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(e){return e}),n=t.pop(),r=i[n];if(i.FUNCTION_KEYS[r])n=i.FUNCTION_KEYS[r].toLowerCase();else{if(!t.length)return{key:n,hashId:-1};if(t.length==1&&t[0]=="shift")return{key:n.toUpperCase(),hashId:-1}}var s=0;for(var o=t.length;o--;){var u=i.KEY_MODS[t[o]];if(u==null)return typeof console!="undefined"&&console.error("invalid modifier "+t[o]+" in "+e),!1;s|=u}return{key:n,hashId:s}},e.prototype.findKeyCommand=function(e,t){var n=o[e]+t;return this.commandKeyBinding[n]},e.prototype.handleKeyboard=function(e,t,n,r){if(r<0)return;var i=o[t]+n,s=this.commandKeyBinding[i];e.$keyChain&&(e.$keyChain+=" "+i,s=this.commandKeyBinding[e.$keyChain]||s);if(s)if(s=="chainKeys"||s[s.length-1]=="chainKeys")return e.$keyChain=e.$keyChain||i,{command:"null"};if(e.$keyChain)if(!!t&&t!=4||n.length!=1){if(t==-1||r>0)e.$keyChain=""}else e.$keyChain=e.$keyChain.slice(0,-i.length-1);return{command:s}},e.prototype.getStatusText=function(e,t){return t.$keyChain||""},e}(),f=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.$singleCommand=!0,r}return r(t,e),t}(u);f.call=function(e,t,n){u.prototype.$init.call(e,t,n,!0)},u.call=function(e,t,n){u.prototype.$init.call(e,t,n,!1)},t.HashHandler=f,t.MultiHashHandler=u}),define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("../lib/oop"),s=e("../keyboard/hash_handler").MultiHashHandler,o=e("../lib/event_emitter").EventEmitter,u=function(e){function t(t,n){var r=e.call(this,n,t)||this;return r.byName=r.commands,r.setDefaultHandler("exec",function(e){return e.args?e.command.exec(e.editor,e.args,e.event,!1):e.command.exec(e.editor,{},e.event,!0)}),r}return r(t,e),t.prototype.exec=function(e,t,n){if(Array.isArray(e)){for(var r=e.length;r--;)if(this.exec(e[r],t,n))return!0;return!1}typeof e=="string"&&(e=this.commands[e]);var i={editor:t,command:e,args:n};return this.canExecute(e,t)?(i.returnValue=this._emit("exec",i),this._signal("afterExec",i),i.returnValue===!1?!1:!0):(this._signal("commandUnavailable",i),!1)},t.prototype.canExecute=function(e,t){return typeof e=="string"&&(e=this.commands[e]),e?t&&t.$readOnly&&!e.readOnly?!1:this.$checkCommandState!=0&&e.isAvailable&&!e.isAvailable(t)?!1:!0:!1},t.prototype.toggleRecording=function(e){if(this.$inReplay)return;return e&&e._emit("changeStatus"),this.recording?(this.macro.pop(),this.off("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(e){this.macro.push([e.command,e.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},t.prototype.replay=function(e){if(this.$inReplay||!this.macro)return;if(this.recording)return this.toggleRecording(e);try{this.$inReplay=!0,this.macro.forEach(function(t){typeof t=="string"?this.exec(t,e):this.exec(t[0],e,t[1])},this)}finally{this.$inReplay=!1}},t.prototype.trimMacro=function(e){return e.map(function(e){return typeof e[0]!="string"&&(e[0]=e[0].name),e[1]||(e=e[0]),e})},t}(s);i.implement(u.prototype,o),t.CommandManager=u}),define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(e,t,n){"use strict";function o(e,t){return{win:e,mac:t}}var r=e("../lib/lang"),i=e("../config"),s=e("../range").Range;t.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:o("Ctrl-,","Command-,"),exec:function(e){i.loadModule("ace/ext/settings_menu",function(t){t.init(e),e.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:o("Alt-E","F4"),exec:function(e){i.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:o("Alt-Shift-E","Shift-F4"),exec:function(e){i.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:o("Ctrl-A","Command-A"),exec:function(e){e.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:o(null,"Ctrl-L"),exec:function(e){e.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:o("Ctrl-L","Command-L"),exec:function(e,t){typeof t=="number"&&!isNaN(t)&&e.gotoLine(t),e.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:o("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(e){e.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:o("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(e){e.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:o("F2","F2"),exec:function(e){e.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:o("Alt-F2","Alt-F2"),exec:function(e){e.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:o(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:o(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:o("Alt-0","Command-Option-0"),exec:function(e){e.session.foldAll(),e.session.unfold(e.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:o("Alt-Shift-0","Command-Option-Shift-0"),exec:function(e){e.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:o("Ctrl-K","Command-G"),exec:function(e){e.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:o("Ctrl-Shift-K","Command-Shift-G"),exec:function(e){e.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:o("Alt-K","Ctrl-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:o("Alt-Shift-K","Ctrl-Shift-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:o("Ctrl-F","Command-F"),exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(e){e.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:o("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(e){e.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:o("Ctrl-Home","Command-Home|Command-Up"),exec:function(e){e.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:o("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(e){e.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:o("Up","Up|Ctrl-P"),exec:function(e,t){e.navigateUp(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:o("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(e){e.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:o("Ctrl-End","Command-End|Command-Down"),exec:function(e){e.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:o("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(e){e.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:o("Down","Down|Ctrl-N"),exec:function(e,t){e.navigateDown(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:o("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(e){e.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:o("Ctrl-Left","Option-Left"),exec:function(e){e.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:o("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:o("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(e){e.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:o("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(e){e.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:o("Left","Left|Ctrl-B"),exec:function(e,t){e.navigateLeft(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:o("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(e){e.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:o("Ctrl-Right","Option-Right"),exec:function(e){e.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:o("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:o("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(e){e.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:o("Shift-Right","Shift-Right"),exec:function(e){e.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:o("Right","Right|Ctrl-F"),exec:function(e,t){e.navigateRight(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(e){e.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:o(null,"Option-PageDown"),exec:function(e){e.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:o("PageDown","PageDown|Ctrl-V"),exec:function(e){e.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(e){e.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:o(null,"Option-PageUp"),exec:function(e){e.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(e){e.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:o("Ctrl-Up",null),exec:function(e){e.renderer.scrollBy(0,-2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:o("Ctrl-Down",null),exec:function(e){e.renderer.scrollBy(0,2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:o("Ctrl-Alt-E","Command-Option-E"),exec:function(e){e.commands.toggleRecording(e)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:o("Ctrl-Shift-E","Command-Shift-E"),exec:function(e){e.commands.replay(e)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:o("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(e){e.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:o("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(e){e.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:o("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(e){e.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:o(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(e){},readOnly:!0},{name:"cut",description:"Cut",exec:function(e){var t=e.$copyWithEmptySelection&&e.selection.isEmpty(),n=t?e.selection.getLineRange():e.selection.getRange();e._emit("cut",n),n.isEmpty()||e.session.remove(n),e.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(e,t){e.$handlePaste(t)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:o("Ctrl-D","Command-D"),exec:function(e){e.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:o("Ctrl-Shift-D","Command-Shift-D"),exec:function(e){e.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:o("Ctrl-Alt-S","Command-Alt-S"),exec:function(e){e.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:o("Ctrl-/","Command-/"),exec:function(e){e.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:o("Ctrl-Shift-/","Command-Shift-/"),exec:function(e){e.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:o("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(e){e.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:o("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(e){e.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:o("Ctrl-H","Command-Option-F"),exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"undo",description:"Undo",bindKey:o("Ctrl-Z","Command-Z"),exec:function(e){e.undo()}},{name:"redo",description:"Redo",bindKey:o("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(e){e.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:o("Alt-Shift-Up","Command-Option-Up"),exec:function(e){e.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:o("Alt-Up","Option-Up"),exec:function(e){e.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:o("Alt-Shift-Down","Command-Option-Down"),exec:function(e){e.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:o("Alt-Down","Option-Down"),exec:function(e){e.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:o("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(e){e.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:o("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(e){e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:o("Shift-Delete",null),exec:function(e){if(!e.selection.isEmpty())return!1;e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:o("Alt-Backspace","Command-Backspace"),exec:function(e){e.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:o("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(e){e.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:o("Ctrl-Shift-Backspace",null),exec:function(e){var t=e.selection.getRange();t.start.column=0,e.session.remove(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:o("Ctrl-Shift-Delete",null),exec:function(e){var t=e.selection.getRange();t.end.column=Number.MAX_VALUE,e.session.remove(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:o("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(e){e.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:o("Ctrl-Delete","Alt-Delete"),exec:function(e){e.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:o("Shift-Tab","Shift-Tab"),exec:function(e){e.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:o("Tab","Tab"),exec:function(e){e.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:o("Ctrl-[","Ctrl-["),exec:function(e){e.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:o("Ctrl-]","Ctrl-]"),exec:function(e){e.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(e,t){e.insert(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(e,t){e.insert(r.stringRepeat(t.text||"",t.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:o(null,"Ctrl-O"),exec:function(e){e.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:o("Alt-Shift-X","Ctrl-T"),exec:function(e){e.transposeLetters()},multiSelectAction:function(e){e.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:o("Ctrl-U","Ctrl-U"),exec:function(e){e.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:o("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(e){e.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:o(null,null),exec:function(e){e.autoIndent()},scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:o("Ctrl-Shift-L","Command-Shift-L"),exec:function(e){var t=e.selection.getRange();t.start.column=t.end.column=0,t.end.row++,e.selection.setRange(t,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"openlink",bindKey:o("Ctrl+F3","F3"),exec:function(e){e.openLink()}},{name:"joinlines",description:"Join lines",bindKey:o(null,null),exec:function(e){var t=e.selection.isBackwards(),n=t?e.selection.getSelectionLead():e.selection.getSelectionAnchor(),i=t?e.selection.getSelectionAnchor():e.selection.getSelectionLead(),o=e.session.doc.getLine(n.row).length,u=e.session.doc.getTextRange(e.selection.getRange()),a=u.replace(/\n\s*/," ").length,f=e.session.doc.getLine(n.row);for(var l=n.row+1;l<=i.row+1;l++){var c=r.stringTrimLeft(r.stringTrimRight(e.session.doc.getLine(l)));c.length!==0&&(c=" "+c),f+=c}i.row+10?(e.selection.moveCursorTo(n.row,n.column),e.selection.selectTo(n.row,n.column+a)):(o=e.session.doc.getLine(n.row).length>o?o+1:o,e.selection.moveCursorTo(n.row,o))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:o(null,null),exec:function(e){var t=e.session.doc.getLength()-1,n=e.session.doc.getLine(t).length,r=e.selection.rangeList.ranges,i=[];r.length<1&&(r=[e.selection.getRange()]);for(var o=0;o0||e+t=0&&this.$isCustomWidgetVisible(e-t))return e-t;if(e+t<=this.lines.getLength()-1&&this.$isCustomWidgetVisible(e+t))return e+t;if(e-t>=0&&this.$isFoldWidgetVisible(e-t))return e-t;if(e+t<=this.lines.getLength()-1&&this.$isFoldWidgetVisible(e+t))return e+t}return null},e.prototype.$findNearestAnnotation=function(e){if(this.$isAnnotationVisible(e))return e;var t=0;while(e-t>0||e+t=0&&this.$isAnnotationVisible(e-t))return e-t;if(e+t<=this.lines.getLength()-1&&this.$isAnnotationVisible(e+t))return e+t}return null},e.prototype.$focusFoldWidget=function(e){if(e==null)return;var t=this.$getFoldWidget(e);t.classList.add(this.editor.renderer.keyboardFocusClassName),t.focus()},e.prototype.$focusCustomWidget=function(e){if(e==null)return;var t=this.$getCustomWidget(e);t&&(t.classList.add(this.editor.renderer.keyboardFocusClassName),t.focus())},e.prototype.$focusAnnotation=function(e){if(e==null)return;var t=this.$getAnnotation(e);t.classList.add(this.editor.renderer.keyboardFocusClassName),t.focus()},e.prototype.$blurFoldWidget=function(e){var t=this.$getFoldWidget(e);t.classList.remove(this.editor.renderer.keyboardFocusClassName),t.blur()},e.prototype.$blurCustomWidget=function(e){var t=this.$getCustomWidget(e);t&&(t.classList.remove(this.editor.renderer.keyboardFocusClassName),t.blur())},e.prototype.$blurAnnotation=function(e){var t=this.$getAnnotation(e);t.classList.remove(this.editor.renderer.keyboardFocusClassName),t.blur()},e.prototype.$moveFoldWidgetUp=function(){var e=this.activeRowIndex;while(e>0){e--;if(this.$isFoldWidgetVisible(e)||this.$isCustomWidgetVisible(e)){this.$blurFoldWidget(this.activeRowIndex),this.$blurCustomWidget(this.activeRowIndex),this.activeRowIndex=e,this.$isFoldWidgetVisible(e)?this.$focusFoldWidget(this.activeRowIndex):this.$focusCustomWidget(this.activeRowIndex);return}}return},e.prototype.$moveFoldWidgetDown=function(){var e=this.activeRowIndex;while(e0){e--;if(this.$isAnnotationVisible(e)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=e,this.$focusAnnotation(this.activeRowIndex);return}}return},e.prototype.$moveAnnotationDown=function(){var e=this.activeRowIndex;while(e=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=e("./lib/oop"),s=e("./lib/dom"),o=e("./lib/lang"),u=e("./lib/useragent"),a=e("./keyboard/textinput").TextInput,f=e("./mouse/mouse_handler").MouseHandler,l=e("./mouse/fold_handler").FoldHandler,c=e("./keyboard/keybinding").KeyBinding,h=e("./edit_session").EditSession,p=e("./search").Search,d=e("./range").Range,v=e("./lib/event_emitter").EventEmitter,m=e("./commands/command_manager").CommandManager,g=e("./commands/default_commands").commands,y=e("./config"),b=e("./token_iterator").TokenIterator,w=e("./keyboard/gutter_handler").GutterKeyboardHandler,E=e("./config").nls,S=e("./clipboard"),x=e("./lib/keys"),T=e("./lib/event"),N=e("./tooltip").HoverTooltip,C=function(){function e(t,n,r){this.id="editor"+ ++e.$uid,this.session,this.$toDestroy=[];var i=t.getContainerElement();this.container=i,this.renderer=t,this.commands=new m(u.isMac?"mac":"win",g),typeof document=="object"&&(this.textInput=new a(t.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new f(this),new l(this)),this.keyBinding=new c(this),this.$search=(new p).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=o.delayedCall(function(){this._signal("input",{}),this.session&&!this.session.destroyed&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(e,t){t._$emitInputEvent.schedule(31)}),this.setSession(n||r&&r.session||new h("")),y.resetOptions(this),r&&this.setOptions(r),y._signal("editor",this)}return e.prototype.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0)},e.prototype.startOperation=function(e){this.session.startOperation(e)},e.prototype.endOperation=function(e){this.session.endOperation(e)},e.prototype.onStartOperation=function(e){this.curOp=this.session.curOp,this.curOp.scrollTop=this.renderer.scrollTop,this.prevOp=this.session.prevOp,e||(this.previousCommand=null)},e.prototype.onEndOperation=function(e){if(this.curOp&&this.session){if(e&&e.returnValue===!1){this.curOp=null;return}this._signal("beforeEndOperation");if(!this.curOp)return;var t=this.curOp.command,n=t&&t.scrollIntoView;if(n){switch(n){case"center-animate":n="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var r=this.selection.getRange(),i=this.renderer.layerConfig;(r.start.row>=i.lastRow||r.end.row<=i.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead);break;default:}n=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.$lastSel=this.session.selection.toJSON(),this.prevOp=this.curOp,this.curOp=null}},e.prototype.$historyTracker=function(e){if(!this.$mergeUndoDeltas)return;var t=this.prevOp,n=this.$mergeableCommands,r=t.command&&e.command.name==t.command.name;if(e.command.name=="insertstring"){var i=e.args;this.mergeNextCommand===undefined&&(this.mergeNextCommand=!0),r=r&&this.mergeNextCommand&&(!/\s/.test(i)||/\s/.test(t.args)),this.mergeNextCommand=!0}else r=r&&n.indexOf(e.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(r=!1),r?this.session.mergeUndoDeltas=!0:n.indexOf(e.command.name)!==-1&&(this.sequenceStartTime=Date.now())},e.prototype.setKeyboardHandler=function(e,t){if(e&&typeof e=="string"&&e!="ace"){this.$keybindingId=e;var n=this;y.loadModule(["keybinding",e],function(r){n.$keybindingId==e&&n.keyBinding.setKeyboardHandler(r&&r.handler),t&&t()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(e),t&&t()},e.prototype.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},e.prototype.setSession=function(e){if(this.session==e)return;this.curOp&&this.endOperation(),this.curOp={};var t=this.session;if(t){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange),this.session.off("startOperation",this.$onStartOperation),this.session.off("endOperation",this.$onEndOperation);var n=this.session.getSelection();this.session.$fontMetrics=null,n.off("changeCursor",this.$onCursorChange),n.off("changeSelection",this.$onSelectionChange)}this.session=e,e?(this.$onDocumentChange=this.onDocumentChange.bind(this),e.on("change",this.$onDocumentChange),this.renderer.setSession(e),e.$fontMetrics=this.renderer.$fontMetrics,this.$onChangeMode=this.onChangeMode.bind(this),e.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),e.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),e.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),e.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),e.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),e.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=e.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.$onStartOperation=this.onStartOperation.bind(this),this.session.on("startOperation",this.$onStartOperation),this.$onEndOperation=this.onEndOperation.bind(this),this.session.on("endOperation",this.$onEndOperation),this.onChangeMode(),this.onCursorChange(),this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(e)),this._signal("changeSession",{session:e,oldSession:t}),this.curOp=null,t&&t._signal("changeEditor",{oldEditor:this}),t&&(t.$editor=null),e&&e._signal("changeEditor",{editor:this}),e&&(e.$editor=this),e&&!e.destroyed&&e.bgTokenizer.scheduleStart()},e.prototype.getSession=function(){return this.session},e.prototype.setValue=function(e,t){return this.session.doc.setValue(e),t?t==1?this.navigateFileEnd():t==-1&&this.navigateFileStart():this.selectAll(),e},e.prototype.getValue=function(){return this.session.getValue()},e.prototype.getSelection=function(){return this.selection},e.prototype.resize=function(e){this.renderer.onResize(e)},e.prototype.setTheme=function(e,t){this.renderer.setTheme(e,t)},e.prototype.getTheme=function(){return this.renderer.getTheme()},e.prototype.setStyle=function(e,t){this.renderer.setStyle(e,t)},e.prototype.unsetStyle=function(e){this.renderer.unsetStyle(e)},e.prototype.getFontSize=function(){return this.getOption("fontSize")||s.computedStyle(this.container).fontSize},e.prototype.setFontSize=function(e){this.setOption("fontSize",e)},e.prototype.$highlightBrackets=function(){if(this.$highlightPending)return;var e=this;this.$highlightPending=!0,setTimeout(function(){e.$highlightPending=!1;var t=e.session;if(!t||t.destroyed)return;t.$bracketHighlight&&(t.$bracketHighlight.markerIds.forEach(function(e){t.removeMarker(e)}),t.$bracketHighlight=null);var n=e.getCursorPosition(),r=e.getKeyboardHandler(),i=r&&r.$getDirectionForHighlight&&r.$getDirectionForHighlight(e),s=t.getMatchingBracketRanges(n,i);if(!s){var o=new b(t,n.row,n.column),u=o.getCurrentToken();if(u&&/\b(?:tag-open|tag-name)/.test(u.type)){var a=t.getMatchingTags(n);a&&(s=[a.openTagName.isEmpty()?a.openTag:a.openTagName,a.closeTagName.isEmpty()?a.closeTag:a.closeTagName])}}!s&&t.$mode.getMatching&&(s=t.$mode.getMatching(e.session));if(!s){e.getHighlightIndentGuides()&&e.renderer.$textLayer.$highlightIndentGuide();return}var f="ace_bracket";Array.isArray(s)?s.length==1&&(f="ace_error_bracket"):s=[s],s.length==2&&(d.comparePoints(s[0].end,s[1].start)==0?s=[d.fromPoints(s[0].start,s[1].end)]:d.comparePoints(s[0].start,s[1].end)==0&&(s=[d.fromPoints(s[1].start,s[0].end)])),t.$bracketHighlight={ranges:s,markerIds:s.map(function(e){return t.addMarker(e,f,"text")})},e.getHighlightIndentGuides()&&e.renderer.$textLayer.$highlightIndentGuide()},50)},e.prototype.focus=function(){this.textInput.focus()},e.prototype.isFocused=function(){return this.textInput.isFocused()},e.prototype.blur=function(){this.textInput.blur()},e.prototype.onFocus=function(e){if(this.$isFocused)return;this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",e)},e.prototype.onBlur=function(e){if(!this.$isFocused)return;this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",e)},e.prototype.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$updateHighlightActiveLine()},e.prototype.onDocumentChange=function(e){var t=this.session.$useWrapMode,n=e.start.row==e.end.row?e.end.row:Infinity;this.renderer.updateLines(e.start.row,n,t),this._signal("change",e),this.$cursorChange()},e.prototype.onTokenizerUpdate=function(e){var t=e.data;this.renderer.updateLines(t.first,t.last)},e.prototype.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},e.prototype.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},e.prototype.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},e.prototype.$updateHighlightActiveLine=function(){var e=this.getSession(),t;if(this.$highlightActiveLine){if(this.$selectionStyle!="line"||!this.selection.isMultiLine())t=this.getCursorPosition();this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(t=!1),this.renderer.$maxLines&&this.session.getLength()===1&&!(this.renderer.$minLines>1)&&(t=!1)}if(e.$highlightLineMarker&&!t)e.removeMarker(e.$highlightLineMarker.id),e.$highlightLineMarker=null;else if(!e.$highlightLineMarker&&t){var n=new d(t.row,t.column,t.row,Infinity);n.id=e.addMarker(n,"ace_active-line","screenLine"),e.$highlightLineMarker=n}else t&&(e.$highlightLineMarker.start.row=t.row,e.$highlightLineMarker.end.row=t.row,e.$highlightLineMarker.start.column=t.column,e._signal("changeBackMarker"))},e.prototype.onSelectionChange=function(e){var t=this.session;t.$selectionMarker&&t.removeMarker(t.$selectionMarker),t.$selectionMarker=null;if(!this.selection.isEmpty()){var n=this.selection.getRange(),r=this.getSelectionStyle();t.$selectionMarker=t.addMarker(n,"ace_selection",r)}else this.$updateHighlightActiveLine();var i=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(i),this._signal("changeSelection")},e.prototype.$getSelectionHighLightRegexp=function(){var e=this.session,t=this.getSelectionRange();if(t.isEmpty()||t.isMultiLine())return;var n=t.start.column,r=t.end.column,i=e.getLine(t.start.row),s=i.substring(n,r);if(s.length>5e3||!/[\w\d]/.test(s))return;var o=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:s}),u=i.substring(n-1,r+1);if(!o.test(u))return;return o},e.prototype.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},e.prototype.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},e.prototype.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},e.prototype.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},e.prototype.onChangeMode=function(e){this.renderer.updateText(),this._emit("changeMode",e)},e.prototype.onChangeWrapLimit=function(){this.renderer.updateFull()},e.prototype.onChangeWrapMode=function(){this.renderer.onResize(!0)},e.prototype.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},e.prototype.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},e.prototype.getCopyText=function(){var e=this.getSelectedText(),t=this.session.doc.getNewLineCharacter(),n=!1;if(!e&&this.$copyWithEmptySelection){n=!0;var r=this.selection.getAllRanges();for(var i=0;iu.search(/\S|$/)){var a=u.substr(i.column).search(/\S|$/);n.doc.removeInLine(i.row,i.column,i.column+a)}}this.clearSelection();var f=i.column,l=n.getState(i.row),u=n.getLine(i.row),c=r.checkOutdent(l,u,e);n.insert(i,e),s&&s.selection&&(s.selection.length==2?this.selection.setSelectionRange(new d(i.row,f+s.selection[0],i.row,f+s.selection[1])):this.selection.setSelectionRange(new d(i.row+s.selection[0],s.selection[1],i.row+s.selection[2],s.selection[3])));if(this.$enableAutoIndent){if(n.getDocument().isNewLine(e)){var h=r.getNextLineIndent(l,u.slice(0,i.column),n.getTabString());n.insert({row:i.row+1,column:0},h)}c&&r.autoOutdent(l,n,i.row)}},e.prototype.autoIndent=function(){var e=this.session,t=e.getMode(),n=this.selection.isEmpty()?[new d(0,0,e.doc.getLength()-1,0)]:this.selection.getAllRanges(),r="",i="",s="",o=e.getTabString();for(var u=0;u0&&(r=e.getState(l-1),i=e.getLine(l-1),s=t.getNextLineIndent(r,i,o));var c=e.getLine(l),h=t.$getIndent(c);if(s!==h){if(h.length>0){var p=new d(l,0,l,h.length);e.remove(p)}s.length>0&&e.insert({row:l,column:0},s)}t.autoOutdent(r,e,l)}}},e.prototype.onTextInput=function(e,t){if(!t)return this.keyBinding.onTextInput(e);this.startOperation({command:{name:"insertstring"}});var n=this.applyComposition.bind(this,e,t);this.selection.rangeCount?this.forEachSelection(n):n(),this.endOperation()},e.prototype.applyComposition=function(e,t){if(t.extendLeft||t.extendRight){var n=this.selection.getRange();n.start.column-=t.extendLeft,n.end.column+=t.extendRight,n.start.column<0&&(n.start.row--,n.start.column+=this.session.getLine(n.start.row).length+1),this.selection.setRange(n),!e&&!n.isEmpty()&&this.execCommand(t.extendLeft?"backspace":"del")}(e||!this.selection.isEmpty())&&this.insert(e,!0);if(t.restoreStart||t.restoreEnd){var n=this.selection.getRange();n.start.column-=t.restoreStart,n.end.column-=t.restoreEnd,this.selection.setRange(n)}},e.prototype.onCommandKey=function(e,t,n){return this.keyBinding.onCommandKey(e,t,n)},e.prototype.setOverwrite=function(e){this.session.setOverwrite(e)},e.prototype.getOverwrite=function(){return this.session.getOverwrite()},e.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},e.prototype.setScrollSpeed=function(e){this.setOption("scrollSpeed",e)},e.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},e.prototype.setDragDelay=function(e){this.setOption("dragDelay",e)},e.prototype.getDragDelay=function(){return this.getOption("dragDelay")},e.prototype.setSelectionStyle=function(e){this.setOption("selectionStyle",e)},e.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},e.prototype.setHighlightActiveLine=function(e){this.setOption("highlightActiveLine",e)},e.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},e.prototype.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},e.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},e.prototype.setHighlightSelectedWord=function(e){this.setOption("highlightSelectedWord",e)},e.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},e.prototype.setAnimatedScroll=function(e){this.renderer.setAnimatedScroll(e)},e.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},e.prototype.setShowInvisibles=function(e){this.renderer.setShowInvisibles(e)},e.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},e.prototype.setDisplayIndentGuides=function(e){this.renderer.setDisplayIndentGuides(e)},e.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},e.prototype.setHighlightIndentGuides=function(e){this.renderer.setHighlightIndentGuides(e)},e.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},e.prototype.setShowPrintMargin=function(e){this.renderer.setShowPrintMargin(e)},e.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},e.prototype.setPrintMarginColumn=function(e){this.renderer.setPrintMarginColumn(e)},e.prototype.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},e.prototype.setReadOnly=function(e){this.setOption("readOnly",e)},e.prototype.getReadOnly=function(){return this.getOption("readOnly")},e.prototype.setBehavioursEnabled=function(e){this.setOption("behavioursEnabled",e)},e.prototype.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},e.prototype.setWrapBehavioursEnabled=function(e){this.setOption("wrapBehavioursEnabled",e)},e.prototype.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},e.prototype.setShowFoldWidgets=function(e){this.setOption("showFoldWidgets",e)},e.prototype.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},e.prototype.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},e.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},e.prototype.remove=function(e){this.selection.isEmpty()&&(e=="left"?this.selection.selectLeft():this.selection.selectRight());var t=this.getSelectionRange();if(this.getBehavioursEnabled()){var n=this.session,r=n.getState(t.start.row),i=n.getMode().transformAction(r,"deletion",this,n,t);if(t.end.column===0){var s=n.getTextRange(t);if(s[s.length-1]=="\n"){var o=n.getLine(t.end.row);/^\s+$/.test(o)&&(t.end.column=o.length)}}i&&(t=i)}this.session.remove(t),this.clearSelection()},e.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},e.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},e.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},e.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var e=this.getSelectionRange();e.start.column==e.end.column&&e.start.row==e.end.row&&(e.end.column=0,e.end.row++),this.session.remove(e),this.clearSelection()},e.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var e=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(e)},e.prototype.setGhostText=function(e,t){this.renderer.setGhostText(e,t)},e.prototype.removeGhostText=function(){this.renderer.removeGhostText()},e.prototype.transposeLetters=function(){if(!this.selection.isEmpty())return;var e=this.getCursorPosition(),t=e.column;if(t===0)return;var n=this.session.getLine(e.row),r,i;tt.toLowerCase()?1:0});var i=new d(0,0,0,0);for(var r=e.first;r<=e.last;r++){var s=t.getLine(r);i.start.row=r,i.end.row=r,i.end.column=s.length,t.replace(i,n[r-e.first])}},e.prototype.toggleCommentLines=function(){var e=this.session.getState(this.getCursorPosition().row),t=this.$getSelectedRows();this.session.getMode().toggleCommentLines(e,this.session,t.first,t.last)},e.prototype.toggleBlockComment=function(){var e=this.getCursorPosition(),t=this.session.getState(e.row),n=this.getSelectionRange();this.session.getMode().toggleBlockComment(t,this.session,n,e)},e.prototype.getNumberAt=function(e,t){var n=/[\-]?[0-9]+(?:\.[0-9]+)?/g;n.lastIndex=0;var r=this.session.getLine(e);while(n.lastIndex=t){var s={value:i[0],start:i.index,end:i.index+i[0].length};return s}}return null},e.prototype.modifyNumber=function(e){var t=this.selection.getCursor().row,n=this.selection.getCursor().column,r=new d(t,n-1,t,n),i=this.session.getTextRange(r);if(!isNaN(parseFloat(i))&&isFinite(i)){var s=this.getNumberAt(t,n);if(s){var o=s.value.indexOf(".")>=0?s.start+s.value.indexOf(".")+1:s.end,u=s.start+s.value.length-o,a=parseFloat(s.value);a*=Math.pow(10,u),o!==s.end&&n=u&&s<=a&&(n=t,f.selection.clearSelection(),f.moveCursorTo(e,u+r),f.selection.selectTo(e,a+r)),u=a});var l=this.$toggleWordPairs,c;for(var h=0;h=a&&u<=f&&p.match(/((?:https?|ftp):\/\/[\S]+)/)){l=p.replace(/[\s:.,'";}\]]+$/,"");break}a=f}}catch(d){n={error:d}}finally{try{h&&!h.done&&(i=c.return)&&i.call(c)}finally{if(n)throw n.error}}return l},e.prototype.openLink=function(){var e=this.selection.getCursor(),t=this.findLinkAt(e.row,e.column);return t&&window.open(t,"_blank"),t!=null},e.prototype.removeLines=function(){var e=this.$getSelectedRows();this.session.removeFullLines(e.first,e.last),this.clearSelection()},e.prototype.duplicateSelection=function(){var e=this.selection,t=this.session,n=e.getRange(),r=e.isBackwards();if(n.isEmpty()){var i=n.start.row;t.duplicateLines(i,i)}else{var s=r?n.start:n.end,o=t.insert(s,t.getTextRange(n));n.start=s,n.end=o,e.setSelectionRange(n,r)}},e.prototype.moveLinesDown=function(){this.$moveLines(1,!1)},e.prototype.moveLinesUp=function(){this.$moveLines(-1,!1)},e.prototype.moveText=function(e,t,n){return this.session.moveText(e,t,n)},e.prototype.copyLinesUp=function(){this.$moveLines(-1,!0)},e.prototype.copyLinesDown=function(){this.$moveLines(1,!0)},e.prototype.$moveLines=function(e,t){var n,r,i=this.selection;if(!i.inMultiSelectMode||this.inVirtualSelectionMode){var s=i.toOrientedRange();n=this.$getSelectedRows(s),r=this.session.$moveLines(n.first,n.last,t?0:e),t&&e==-1&&(r=0),s.moveBy(r,0),i.fromOrientedRange(s)}else{var o=i.rangeList.ranges;i.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;var u=0,a=0,f=o.length;for(var l=0;lp+1)break;p=d.last}l--,u=this.session.$moveLines(h,p,t?0:e),t&&e==-1&&(c=l+1);while(c<=l)o[c].moveBy(u,0),c++;t||(u=0),a+=u}i.fromOrientedRange(i.ranges[0]),i.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},e.prototype.$getSelectedRows=function(e){return e=(e||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(e.start.row),last:this.session.getRowFoldEnd(e.end.row)}},e.prototype.onCompositionStart=function(e){this.renderer.showComposition(e)},e.prototype.onCompositionUpdate=function(e){this.renderer.setCompositionText(e)},e.prototype.onCompositionEnd=function(){this.renderer.hideComposition()},e.prototype.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},e.prototype.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},e.prototype.isRowVisible=function(e){return e>=this.getFirstVisibleRow()&&e<=this.getLastVisibleRow()},e.prototype.isRowFullyVisible=function(e){return e>=this.renderer.getFirstFullyVisibleRow()&&e<=this.renderer.getLastFullyVisibleRow()},e.prototype.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},e.prototype.$moveByPage=function(e,t){var n=this.renderer,r=this.renderer.layerConfig,i=e*Math.floor(r.height/r.lineHeight);t===!0?this.selection.$moveSelection(function(){this.moveCursorBy(i,0)}):t===!1&&(this.selection.moveCursorBy(i,0),this.selection.clearSelection());var s=n.scrollTop;n.scrollBy(0,i*r.lineHeight),t!=null&&n.scrollCursorIntoView(null,.5),n.animateScrolling(s)},e.prototype.selectPageDown=function(){this.$moveByPage(1,!0)},e.prototype.selectPageUp=function(){this.$moveByPage(-1,!0)},e.prototype.gotoPageDown=function(){this.$moveByPage(1,!1)},e.prototype.gotoPageUp=function(){this.$moveByPage(-1,!1)},e.prototype.scrollPageDown=function(){this.$moveByPage(1)},e.prototype.scrollPageUp=function(){this.$moveByPage(-1)},e.prototype.scrollToRow=function(e){this.renderer.scrollToRow(e)},e.prototype.scrollToLine=function(e,t,n,r){this.renderer.scrollToLine(e,t,n,r)},e.prototype.centerSelection=function(){var e=this.getSelectionRange(),t={row:Math.floor(e.start.row+(e.end.row-e.start.row)/2),column:Math.floor(e.start.column+(e.end.column-e.start.column)/2)};this.renderer.alignCursor(t,.5)},e.prototype.getCursorPosition=function(){return this.selection.getCursor()},e.prototype.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},e.prototype.getSelectionRange=function(){return this.selection.getRange()},e.prototype.selectAll=function(){this.selection.selectAll()},e.prototype.clearSelection=function(){this.selection.clearSelection()},e.prototype.moveCursorTo=function(e,t){this.selection.moveCursorTo(e,t)},e.prototype.moveCursorToPosition=function(e){this.selection.moveCursorToPosition(e)},e.prototype.jumpToMatching=function(e,t){var n=this.getCursorPosition(),r=new b(this.session,n.row,n.column),i=r.getCurrentToken(),s=0;i&&i.type.indexOf("tag-name")!==-1&&(i=r.stepBackward());var o=i||r.stepForward();if(!o)return;var u,a=!1,f={},l=n.column-o.start,c,h={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(o.value.match(/[{}()\[\]]/g))for(;l1?f[o.value]++:i.value==="=0;--s)this.$tryReplace(n[s],e)&&r++;return this.selection.setSelectionRange(i),r},e.prototype.$tryReplace=function(e,t){var n=this.session.getTextRange(e);return t=this.$search.replace(n,t),t!==null?(e.end=this.session.replace(e,t),e):null},e.prototype.getLastSearchOptions=function(){return this.$search.getOptions()},e.prototype.find=function(e,t,n){t||(t={}),typeof e=="string"||e instanceof RegExp?t.needle=e:typeof e=="object"&&i.mixin(t,e);var r=this.selection.getRange();t.needle==null&&(e=this.session.getTextRange(r)||this.$search.$options.needle,e||(r=this.session.getWordRange(r.start.row,r.start.column),e=this.session.getTextRange(r)),this.$search.set({needle:e})),this.$search.set(t),t.start||this.$search.set({start:r});var s=this.$search.find(this.session);if(t.preventScroll)return s;if(s)return this.revealRange(s,n),s;t.backwards?r.start=r.end:r.end=r.start,this.selection.setRange(r)},e.prototype.findNext=function(e,t){this.find({skipCurrent:!0,backwards:!1},e,t)},e.prototype.findPrevious=function(e,t){this.find(e,{skipCurrent:!0,backwards:!0},t)},e.prototype.revealRange=function(e,t){this.session.unfold(e),this.selection.setSelectionRange(e);var n=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(e.start,e.end,.5),t!==!1&&this.renderer.animateScrolling(n)},e.prototype.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},e.prototype.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},e.prototype.destroy=function(){this.destroyed=!0,this.$toDestroy&&(this.$toDestroy.forEach(function(e){e.destroy()}),this.$toDestroy=[]),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},e.prototype.setAutoScrollEditorIntoView=function(e){if(!e)return;var t,n=this,r=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var i=this.$scrollAnchor;i.style.cssText="position:absolute",this.container.insertBefore(i,this.container.firstChild);var s=this.on("changeSelection",function(){r=!0}),o=this.renderer.on("beforeRender",function(){r&&(t=n.renderer.container.getBoundingClientRect())}),u=this.renderer.on("afterRender",function(){if(r&&t&&(n.isFocused()||n.searchBox&&n.searchBox.isFocused())){var e=n.renderer,s=e.$cursorLayer.$pixelPos,o=e.layerConfig,u=s.top-o.offset;s.top>=0&&u+t.top<0?r=!0:s.topwindow.innerHeight?r=!1:r=null,r!=null&&(i.style.top=u+"px",i.style.left=s.left+"px",i.style.height=o.lineHeight+"px",i.scrollIntoView(r)),r=t=null}});this.setAutoScrollEditorIntoView=function(e){if(e)return;delete this.setAutoScrollEditorIntoView,this.off("changeSelection",s),this.renderer.off("afterRender",u),this.renderer.off("beforeRender",o)}},e.prototype.$resetCursorStyle=function(){var e=this.$cursorStyle||"ace",t=this.renderer.$cursorLayer;if(!t)return;t.setSmoothBlinking(/smooth/.test(e)),t.isBlinking=!this.$readOnly&&e!="wide",s.setCssClass(t.element,"ace_slim-cursors",/slim/.test(e))},e.prototype.prompt=function(e,t,n){var r=this;y.loadModule("ace/ext/prompt",function(i){i.prompt(r,e,t,n)})},Object.defineProperty(e.prototype,"hoverTooltip",{get:function(){return this.$hoverTooltip||(this.$hoverTooltip=new N(this.container))},set:function(e){this.$hoverTooltip&&this.$hoverTooltip.destroy(),this.$hoverTooltip=e},enumerable:!1,configurable:!0}),e}();C.$uid=0,C.prototype.curOp=null,C.prototype.prevOp={},C.prototype.$mergeableCommands=["backspace","del","insertstring"],C.prototype.$toggleWordPairs=[["first","last"],["true","false"],["yes","no"],["width","height"],["top","bottom"],["right","left"],["on","off"],["x","y"],["get","set"],["max","min"],["horizontal","vertical"],["show","hide"],["add","remove"],["up","down"],["before","after"],["even","odd"],["in","out"],["inside","outside"],["next","previous"],["increase","decrease"],["attach","detach"],["&&","||"],["==","!="]],i.implement(C.prototype,v),y.defineOptions(C.prototype,"editor",{selectionStyle:{set:function(e){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:e})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(e){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(e){var t=this;this.textInput.setReadOnly(e);if(this.destroyed)return;this.$resetCursorStyle(),this.$readOnlyCallback||(this.$readOnlyCallback=function(e){var n=!1;if(e&&e.type=="keydown"){e&&e.key&&!e.ctrlKey&&!e.metaKey&&(e.key==" "&&e.preventDefault(),n=e.key.length==1);if(!n)return}else e&&e.type!=="exec"&&(n=!0);if(n){var r=s.createElement("div");r.textContent=E("editor.tooltip.disable-editing","Editing is disabled"),t.hoverTooltip.isOpen||t.hoverTooltip.showForRange(t,t.getSelectionRange(),r)}else t.hoverTooltip&&t.hoverTooltip.isOpen&&t.hoverTooltip.hide()});var n=this.textInput.getElement();e?(T.addListener(n,"keydown",this.$readOnlyCallback,this),this.commands.on("exec",this.$readOnlyCallback),this.commands.on("commandUnavailable",this.$readOnlyCallback)):(T.removeListener(n,"keydown",this.$readOnlyCallback),this.commands.off("exec",this.$readOnlyCallback),this.commands.off("commandUnavailable",this.$readOnlyCallback))},initialValue:!1},copyWithEmptySelection:{set:function(e){this.textInput.setCopyWithEmptySelection(e)},initialValue:!1},cursorStyle:{set:function(e){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(e){this.setAutoScrollEditorIntoView(e)}},keyboardHandler:{set:function(e){this.setKeyboardHandler(e)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(e){this.session.setValue(e)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(e){this.setSession(e)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(e){this.renderer.$gutterLayer.setShowLineNumbers(e),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),e&&this.$relativeLineNumbers?k.attach(this):k.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(e){this.$showLineNumbers&&e?k.attach(this):k.detach(this)}},placeholder:{set:function(e){this.$updatePlaceholder||(this.$updatePlaceholder=function(){var e=this.session&&(this.renderer.$composition||this.session.getLength()>1||this.session.getLine(0).length>0);if(e&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),s.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(!e&&!this.renderer.placeholderNode){this.renderer.on("afterRender",this.$updatePlaceholder),s.addCssClass(this.container,"ace_hasPlaceholder");var t=s.createElement("div");t.className="ace_placeholder",t.textContent=this.$placeholder||"",this.renderer.placeholderNode=t,this.renderer.content.appendChild(this.renderer.placeholderNode)}else!e&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"")}.bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},enableKeyboardAccessibility:{set:function(e){var t={name:"blurTextInput",description:"Set focus to the editor content div to allow tabbing through the page",bindKey:"Esc",exec:function(e){e.blur(),e.renderer.scroller.focus()},readOnly:!0},n=function(e){if(e.target==this.renderer.scroller&&e.keyCode===x.enter){e.preventDefault();var t=this.getCursorPosition().row;this.isRowVisible(t)||this.scrollToLine(t,!0,!0),this.focus()}},r;e?(this.renderer.enableKeyboardAccessibility=!0,this.renderer.keyboardFocusClassName="ace_keyboard-focus",this.textInput.getElement().setAttribute("tabindex",-1),this.textInput.setNumberOfExtraLines(u.isWin?3:0),this.renderer.scroller.setAttribute("tabindex",0),this.renderer.scroller.setAttribute("role","group"),this.renderer.scroller.setAttribute("aria-roledescription",E("editor.scroller.aria-roledescription","editor")),this.renderer.scroller.classList.add(this.renderer.keyboardFocusClassName),this.renderer.scroller.setAttribute("aria-label",E("editor.scroller.aria-label","Editor content, press Enter to start editing, press Escape to exit")),this.renderer.scroller.addEventListener("keyup",n.bind(this)),this.commands.addCommand(t),this.renderer.$gutter.setAttribute("tabindex",0),this.renderer.$gutter.setAttribute("aria-hidden",!1),this.renderer.$gutter.setAttribute("role","group"),this.renderer.$gutter.setAttribute("aria-roledescription",E("editor.gutter.aria-roledescription","editor gutter")),this.renderer.$gutter.setAttribute("aria-label",E("editor.gutter.aria-label","Editor gutter, press Enter to interact with controls using arrow keys, press Escape to exit")),this.renderer.$gutter.classList.add(this.renderer.keyboardFocusClassName),this.renderer.content.setAttribute("aria-hidden",!0),r||(r=new w(this)),r.addListener(),this.textInput.setAriaOptions({setLabel:!0})):(this.renderer.enableKeyboardAccessibility=!1,this.textInput.getElement().setAttribute("tabindex",0),this.textInput.setNumberOfExtraLines(0),this.renderer.scroller.setAttribute("tabindex",-1),this.renderer.scroller.removeAttribute("role"),this.renderer.scroller.removeAttribute("aria-roledescription"),this.renderer.scroller.classList.remove(this.renderer.keyboardFocusClassName),this.renderer.scroller.removeAttribute("aria-label"),this.renderer.scroller.removeEventListener("keyup",n.bind(this)),this.commands.removeCommand(t),this.renderer.content.removeAttribute("aria-hidden"),this.renderer.$gutter.setAttribute("tabindex",-1),this.renderer.$gutter.setAttribute("aria-hidden",!0),this.renderer.$gutter.removeAttribute("role"),this.renderer.$gutter.removeAttribute("aria-roledescription"),this.renderer.$gutter.removeAttribute("aria-label"),this.renderer.$gutter.classList.remove(this.renderer.keyboardFocusClassName),r&&r.removeListener())},initialValue:!1},textInputAriaLabel:{set:function(e){this.$textInputAriaLabel=e},initialValue:""},enableMobileMenu:{set:function(e){this.$enableMobileMenu=e},initialValue:!0},customScrollbar:"renderer",hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",displayIndentGuides:"renderer",highlightIndentGuides:"renderer",showGutter:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",hasCssTransforms:"renderer",maxPixelHeight:"renderer",useTextareaForIME:"renderer",useResizeObserver:"renderer",useSvgGutterIcons:"renderer",showFoldedAnnotations:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimeout:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",navigateWithinSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});var k={getText:function(e,t){return(Math.abs(e.selection.lead.row-t)||t+1+(t<9?"\u00b7":""))+""},getWidth:function(e,t,n){return Math.max(t.toString().length,(n.lastRow+1).toString().length,2)*n.characterWidth},update:function(e,t){t.renderer.$loop.schedule(t.renderer.CHANGE_GUTTER)},attach:function(e){e.renderer.$gutterLayer.$renderer=this,e.on("changeSelection",this.update),this.update(null,e)},detach:function(e){e.renderer.$gutterLayer.$renderer==this&&(e.renderer.$gutterLayer.$renderer=null),e.off("changeSelection",this.update),this.update(null,e)}};t.Editor=C}),define("ace/layer/lines",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=function(){function e(e,t){this.element=e,this.canvasHeight=t||5e5,this.element.style.height=this.canvasHeight*2+"px",this.cells=[],this.cellCache=[],this.$offsetCoefficient=0}return e.prototype.moveContainer=function(e){r.translate(this.element,0,-(e.firstRowScreen*e.lineHeight%this.canvasHeight)-e.offset*this.$offsetCoefficient)},e.prototype.pageChanged=function(e,t){return Math.floor(e.firstRowScreen*e.lineHeight/this.canvasHeight)!==Math.floor(t.firstRowScreen*t.lineHeight/this.canvasHeight)},e.prototype.computeLineTop=function(e,t,n){var r=t.firstRowScreen*t.lineHeight,i=Math.floor(r/this.canvasHeight),s=n.documentToScreenRow(e,0)*t.lineHeight;return s-i*this.canvasHeight},e.prototype.$getCellByScreenRow=function(e,t){var n=t.firstRowScreen*t.lineHeight,r=Math.floor(n/this.canvasHeight),i=e*t.lineHeight-r*this.canvasHeight;for(var s=this.cells.length-1;s>=0;s--){var o=this.cells[s],u=parseInt(o.element.style.top),a=parseInt(o.element.style.height);if(u<=i){if(u+as&&(a=i.end.row+1,i=t.getNextFoldLine(a,i),s=i?i.start.row:Infinity);if(a>r){while(this.$lines.getLength()>u+1)this.$lines.pop();break}o=this.$lines.get(++u),o?o.row=a:(o=this.$lines.createCell(a,e,this.session,l),this.$lines.push(o)),this.$renderCell(o,e,i,a),a++}this._signal("afterRender"),this.$updateGutterWidth(e),this.$showCursorMarker&&this.$highlightGutterLine&&this.$updateCursorMarker()},e.prototype.$updateGutterWidth=function(e){var t=this.session,n=t.gutterRenderer||this.$renderer,r=t.$firstLineNumber,i=this.$lines.last()?this.$lines.last().text:"";if(this.$fixedWidth||t.$useWrapMode)i=t.getLength()+r-1;var s=n?n.getWidth(t,i,e):i.toString().length*e.characterWidth,o=this.$padding||this.$computePadding();s+=o.left+o.right,s!==this.gutterWidth&&!isNaN(s)&&(this.gutterWidth=s,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",s))},e.prototype.$updateCursorRow=function(){if(!this.$highlightGutterLine)return;var e=this.session.selection.getCursor();if(this.$cursorRow===e.row)return;this.$cursorRow=e.row},e.prototype.updateLineHighlight=function(){this.$showCursorMarker&&this.$updateCursorMarker();if(!this.$highlightGutterLine)return;var e=this.session.selection.cursor.row;this.$cursorRow=e;if(this.$cursorCell&&this.$cursorCell.row==e)return;this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var t=this.$lines.cells;this.$cursorCell=null;for(var n=0;n=this.$cursorRow){if(r.row>this.$cursorRow){var i=this.session.getFoldLine(this.$cursorRow);if(!(n>0&&i&&i.start.row==t[n-1].row))break;r=t[n-1]}r.element.className="ace_gutter-active-line "+r.element.className,this.$cursorCell=r;break}}},e.prototype.$updateCursorMarker=function(){if(!this.session)return;var e=this.session;this.$highlightElement||(this.$highlightElement=r.createElement("div"),this.$highlightElement.className="ace_gutter-cursor",this.$highlightElement.style.pointerEvents="none",this.element.appendChild(this.$highlightElement));var t=e.selection.cursor,n=this.config,i=this.$lines,s=n.firstRowScreen*n.lineHeight,o=Math.floor(s/i.canvasHeight),u=e.documentToScreenRow(t)*n.lineHeight,a=u-o*i.canvasHeight;r.setStyle(this.$highlightElement.style,"height",n.lineHeight+"px"),r.setStyle(this.$highlightElement.style,"top",a+"px")},e.prototype.scrollLines=function(e){var t=this.config;this.config=e,this.$updateCursorRow();if(this.$lines.pageChanged(t,e))return this.update(e);this.$lines.moveContainer(e);var n=Math.min(e.lastRow+e.gutterOffset,this.session.getLength()-1),r=this.oldLastRow;this.oldLastRow=n;if(!t||r0;i--)this.$lines.shift();if(r>n)for(var i=this.session.getFoldedRowCount(n+1,r);i>0;i--)this.$lines.pop();e.firstRowr&&this.$lines.push(this.$renderLines(e,r+1,n)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(e)},e.prototype.$renderLines=function(e,t,n){var r=[],i=t,s=this.session.getNextFoldLine(i),o=s?s.start.row:Infinity;for(;;){i>o&&(i=s.end.row+1,s=this.session.getNextFoldLine(i,s),o=s?s.start.row:Infinity);if(i>n)break;var u=this.$lines.createCell(i,e,this.session,l);this.$renderCell(u,e,s,i),r.push(u),i++}return r},e.prototype.$renderCell=function(e,t,n,i){var s=e.element,o=this.session,u=s.childNodes[0],f=s.childNodes[1],l=s.childNodes[2],c=s.childNodes[3],h=l.firstChild,p=o.$firstLineNumber,d=o.$breakpoints,v=o.$decorations,m=o.gutterRenderer||this.$renderer,g=this.$showFoldWidgets&&o.foldWidgets,y=n?n.start.row:Number.MAX_VALUE,b=t.lineHeight+"px",w=this.$useSvgGutterIcons?"ace_gutter-cell_svg-icons ":"ace_gutter-cell ",E=this.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",S=(m?m.getText(o,i):i+p).toString();this.$highlightGutterLine&&(i==this.$cursorRow||n&&i=y&&this.$cursorRow<=n.end.row)&&(w+="ace_gutter-active-line ",this.$cursorCell!=e&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=e)),d[i]&&(w+=d[i]),v[i]&&(w+=v[i]),this.$annotations[i]&&i!==y&&(w+=this.$annotations[i].className);if(g){var x=g[i];x==null&&(x=g[i]=o.getFoldWidget(i))}if(x){var T="ace_fold-widget ace_"+x,N=x=="start"&&i==y&&it[r].row)return;while(n<=r){var i=Math.floor((n+r)/2),s=t[i];if(s.row>e)r=i-1;else{if(!(s.rown.right-t.right)return"foldWidgets"},e}();f.prototype.$fixedWidth=!1,f.prototype.$highlightGutterLine=!0,f.prototype.$renderer=undefined,f.prototype.$showLineNumbers=!0,f.prototype.$showFoldWidgets=!0,i.implement(f.prototype,o),t.Gutter=f}),define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,t,n){"use strict";function o(e,t,n,r){return(e?1:0)|(t?2:0)|(n?4:0)|(r?8:0)}var r=e("../range").Range,i=e("../lib/dom"),s=function(){function e(e){this.element=i.createElement("div"),this.element.className="ace_layer ace_marker-layer",e.appendChild(this.element)}return e.prototype.setPadding=function(e){this.$padding=e},e.prototype.setSession=function(e){this.session=e},e.prototype.setMarkers=function(e){this.markers=e},e.prototype.elt=function(e,t){var n=this.i!=-1&&this.element.childNodes[this.i];n?this.i++:(n=document.createElement("div"),this.element.appendChild(n),this.i=-1),n.style.cssText=t,n.className=e},e.prototype.update=function(e){if(!e)return;this.config=e,this.element.style.display="none",this.i=0;var t;for(var n in this.markers){var r=this.markers[n];if(!r.range){r.update(t,this,this.session,e);continue}var i=r.range.clipRows(e.firstRow,e.lastRow);if(i.isEmpty())continue;i=i.toScreenRange(this.session);if(r.renderer){var s=this.$getTop(i.start.row,e),o=this.$padding+e.fontMetrics.textWidth(i.start.row,i.start.column);r.renderer(t,i,o,s,e)}else r.type=="fullLine"?this.drawFullLineMarker(t,i,r.clazz,e):r.type=="screenLine"?this.drawScreenLineMarker(t,i,r.clazz,e):i.isMultiLine()?r.type=="text"?this.drawTextMarker(t,i,r.clazz,e):this.drawMultiLineMarker(t,i,r.clazz,e):this.drawSingleLineMarker(t,i,r.clazz+" ace_start"+" ace_br15",e)}if(this.i!=-1)while(this.ip,l==f),i,l==f?0:1,s)},e.prototype.drawMultiLineMarker=function(e,t,n,r,i){var s=this.$padding,o=r.lineHeight,u=this.$getTop(t.start.row,r),a=s+r.fontMetrics.textWidth(t.start.row,t.start.column);i=i||"";if(this.session.$bidiHandler.isBidiRow(t.start.row)){var f=t.clone();f.end.row=f.start.row,f.end.column=Number.MAX_VALUE,this.drawBidiSingleLineMarker(e,f,n+" ace_br1 ace_start",r,null,i)}else this.elt(n+" ace_br1 ace_start","height:"+o+"px;"+"right:"+s+"px;"+"top:"+u+"px;left:"+a+"px;"+(i||""));if(this.session.$bidiHandler.isBidiRow(t.end.row)){var f=t.clone();f.start.row=f.end.row,f.start.column=0,this.drawBidiSingleLineMarker(e,f,n+" ace_br12",r,null,i)}else{u=this.$getTop(t.end.row,r);var l=r.fontMetrics.textWidth(t.end.row,t.end.column);this.elt(n+" ace_br12","height:"+o+"px;"+"width:"+l+"px;"+"top:"+u+"px;"+"left:"+s+"px;"+(i||""))}o=(t.end.row-t.start.row-1)*r.lineHeight;if(o<=0)return;u=this.$getTop(t.start.row+1,r);var c=(t.start.column?1:0)|(t.end.column?0:8);this.elt(n+(c?" ace_br"+c:""),"height:"+o+"px;"+"right:"+s+"px;"+"top:"+u+"px;"+"left:"+s+"px;"+(i||""))},e.prototype.drawSingleLineMarker=function(e,t,n,r,i,s){if(this.session.$bidiHandler.isBidiRow(t.start.row))return this.drawBidiSingleLineMarker(e,t,n,r,i,s);var o=r.lineHeight,u=r.fontMetrics.textWidth(t.start.row,t.end.column)+(i||0)*r.characterWidth,a=this.$getTop(t.start.row,r),f=r.fontMetrics.textWidth(t.start.row,t.start.column);this.elt(n,"height:"+o+"px;"+"width:"+(u-f)+"px;"+"top:"+a+"px;"+"left:"+(this.$padding+f)+"px;"+(s||""))},e.prototype.drawBidiSingleLineMarker=function(e,t,n,r,i,s){var o=r.lineHeight,u=this.$getTop(t.start.row,r),a=this.$padding,f=this.config.fontMetrics.getRects(t.start,t.end);f.forEach(function(e){this.elt(n,"height:"+o+"px;"+"width:"+(e.width+(i||0))+"px;"+"top:"+u+"px;"+"left:"+(a+e.left)+"px;"+(s||""))},this)},e.prototype.drawFullLineMarker=function(e,t,n,r,i){var s=this.$getTop(t.start.row,r),o=r.lineHeight;t.start.row!=t.end.row&&(o+=this.$getTop(t.end.row,r)-s),this.elt(n,"height:"+o+"px;"+"top:"+s+"px;"+"left:0;right:0;"+(i||""))},e.prototype.drawScreenLineMarker=function(e,t,n,r,i){var s=this.$getTop(t.start.row,r),o=r.lineHeight;this.elt(n,"height:"+o+"px;"+"top:"+s+"px;"+"left:0;right:0;"+(i||""))},e}();s.prototype.$padding=0,t.Marker=s}),define("ace/layer/text_util",["require","exports","module"],function(e,t,n){var r=new Set(["text","rparen","lparen"]);t.isTextToken=function(e){return r.has(e)}}),define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter","ace/config","ace/layer/text_util"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/dom"),s=e("../lib/lang"),o=e("./lines").Lines,u=e("../lib/event_emitter").EventEmitter,a=e("../config").nls,f=e("./text_util").isTextToken,l=function(){function e(e){this.dom=i,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",e.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new o(this.element)}return e.prototype.$updateEolChar=function(){var e=this.session.doc,t=e.getNewLineCharacter()=="\n"&&e.getNewLineMode()!="windows",n=t?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=n)return this.EOL_CHAR=n,!0},e.prototype.setPadding=function(e){this.$padding=e,this.element.style.margin="0 "+e+"px"},e.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},e.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},e.prototype.$setFontMetrics=function(e){this.$fontMetrics=e,this.$fontMetrics.on("changeCharacterSize",function(e){this._signal("changeCharacterSize",e)}.bind(this)),this.$pollSizeChanges()},e.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},e.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},e.prototype.setSession=function(e){this.session=e,e&&this.$computeTabString()},e.prototype.setShowInvisibles=function(e){return this.showInvisibles==e?!1:(this.showInvisibles=e,typeof e=="string"?(this.showSpaces=/tab/i.test(e),this.showTabs=/space/i.test(e),this.showEOL=/eol/i.test(e)):this.showSpaces=this.showTabs=this.showEOL=e,this.$computeTabString(),!0)},e.prototype.setDisplayIndentGuides=function(e){return this.displayIndentGuides==e?!1:(this.displayIndentGuides=e,this.$computeTabString(),!0)},e.prototype.setHighlightIndentGuides=function(e){return this.$highlightIndentGuides===e?!1:(this.$highlightIndentGuides=e,e)},e.prototype.$computeTabString=function(){var e=this.session.getTabSize();this.tabSize=e;var t=this.$tabStrings=[0];for(var n=1;nl&&(u=a.end.row+1,a=this.session.getNextFoldLine(u,a),l=a?a.start.row:Infinity);if(u>i)break;var c=s[o++];if(c){this.dom.removeChildren(c),this.$renderLine(c,u,u==l?a:!1),f&&(c.style.top=this.$lines.computeLineTop(u,e,this.session)+"px");var h=e.lineHeight*this.session.getRowLength(u)+"px";c.style.height!=h&&(f=!0,c.style.height=h)}u++}if(f)while(o0;i--)this.$lines.shift();if(t.lastRow>e.lastRow)for(var i=this.session.getFoldedRowCount(e.lastRow+1,t.lastRow);i>0;i--)this.$lines.pop();e.firstRowt.lastRow&&this.$lines.push(this.$renderLinesFragment(e,t.lastRow+1,e.lastRow)),this.$highlightIndentGuide()},e.prototype.$renderLinesFragment=function(e,t,n){var r=[],s=t,o=this.session.getNextFoldLine(s),u=o?o.start.row:Infinity;for(;;){s>u&&(s=o.end.row+1,o=this.session.getNextFoldLine(s,o),u=o?o.start.row:Infinity);if(s>n)break;var a=this.$lines.createCell(s,e,this.session),f=a.element;this.dom.removeChildren(f),i.setStyle(f.style,"height",this.$lines.computeLineHeight(s,e,this.session)+"px"),i.setStyle(f.style,"top",this.$lines.computeLineTop(s,e,this.session)+"px"),this.$renderLine(f,s,s==u?o:!1),this.$useLineGroups()?f.className="ace_line_group":f.className="ace_line",r.push(a),s++}return r},e.prototype.update=function(e){this.$lines.moveContainer(e),this.config=e;var t=e.firstRow,n=e.lastRow,r=this.$lines;while(r.getLength())r.pop();r.push(this.$renderLinesFragment(e,t,n))},e.prototype.$renderToken=function(e,t,n,r){var i=this,o=/(\t)|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200C\u200E\u200f\u2028\u2029\u202F\u205F\uFEFF\uFFF9-\uFFFC\u2066\u2067\u2068\u202A\u202B\u202D\u202E\u202C\u2069\u2060\u2061\u2062\u2063\u2064\u206A\u206B\u206B\u206C\u206D\u206E\u206F]+)|(\u3000+)/g,u=this.dom.createFragment(this.element),l,c=0;while(l=o.exec(r)){var h=l[1],p=l[2],d=l[3],v=l[4];if(!i.showSpaces&&p)continue;var m=c!=l.index?r.slice(c,l.index):"";c=l.index+l[0].length,m&&u.appendChild(this.dom.createTextNode(m,this.element));if(h){var g=i.session.getScreenTabSize(t+l.index),y=i.$tabStrings[g].cloneNode(!0);y.charCount=1,u.appendChild(y),t+=g-1}else if(p)if(i.showSpaces){var b=this.dom.createElement("span");b.className="ace_invisible ace_invisible_space",b.textContent=s.stringRepeat(i.SPACE_CHAR,p.length),u.appendChild(b)}else u.appendChild(this.dom.createTextNode(p,this.element));else if(d){var b=this.dom.createElement("span");b.className="ace_invisible ace_invisible_space ace_invalid",b.textContent=s.stringRepeat(i.SPACE_CHAR,d.length),u.appendChild(b)}else if(v)if(i.showSpaces){var b=this.dom.createElement("span");b.className="ace_invisible ace_invisible_space",b.textContent=s.stringRepeat(i.CJK_SPACE_CHAR,v.length),u.appendChild(b)}else u.appendChild(this.dom.createTextNode(v,this.element))}var w=c?r.slice(c):r;if(w.length>256)for(var E=0;E=n)return t;if(t[0]==" "){r-=r%this.tabSize;var i=r/this.tabSize;for(var s=0;ss[o].start.row?this.$highlightIndentGuideMarker.dir=-1:this.$highlightIndentGuideMarker.dir=1;break}}if(!this.$highlightIndentGuideMarker.end&&e[t.row]!==""&&t.column===e[t.row].length){this.$highlightIndentGuideMarker.dir=1;for(var o=t.row+1;o0))return;r=e.element.childNodes[0]}var i=r.childNodes;if(i){var s=i[t-1];s&&s.classList&&s.classList.contains("ace_indent-guide")&&s.classList.add("ace_indent-guide-active")}}},e.prototype.$renderHighlightIndentGuide=function(){if(!this.$lines)return;var e=this.$lines.cells;this.$clearActiveIndentGuide();var t=this.$highlightIndentGuideMarker.indentLevel;if(t!==0)if(this.$highlightIndentGuideMarker.dir===1)for(var n=0;n=this.$highlightIndentGuideMarker.start+1){if(r.row>=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(r,t)}}else for(var n=e.length-1;n>=0;n--){var r=e[n];if(this.$highlightIndentGuideMarker.end&&r.row=o){u=this.$renderToken(a,u,l,c.substring(0,o-r)),c=c.substring(o-r),r=o,a=this.$createLineElement(),e.appendChild(a);var h=this.dom.createTextNode(s.stringRepeat("\u00a0",n.indent),this.element);h.charCount=0,a.appendChild(h),i++,u=0,o=n[i]||Number.MAX_VALUE}c.length!=0&&(r+=c.length,u=this.$renderToken(a,u,l,c))}}n[n.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(a,u,null,"",!0)},e.prototype.$renderSimpleLine=function(e,t){var n=0;for(var r=0;rthis.MAX_LINE_LENGTH)return this.$renderOverflowMessage(e,n,i,s);n=this.$renderToken(e,n,i,s)}},e.prototype.$renderOverflowMessage=function(e,t,n,r,i){n&&this.$renderToken(e,t,n,r.slice(0,this.MAX_LINE_LENGTH-t));var s=this.dom.createElement("span");s.className="ace_inline_button ace_keyword ace_toggle_wrap",s.textContent=i?"":"",e.appendChild(s)},e.prototype.$renderLine=function(e,t,n){!n&&n!=0&&(n=this.session.getFoldLine(t));if(n)var r=this.$getFoldLineTokens(t,n);else var r=this.session.getTokens(t);var i=e;if(r.length){var s=this.session.getRowSplitData(t);if(s&&s.length){this.$renderWrappedLine(e,r,s);var i=e.lastChild}else{var i=e;this.$useLineGroups()&&(i=this.$createLineElement(),e.appendChild(i)),this.$renderSimpleLine(i,r)}}else this.$useLineGroups()&&(i=this.$createLineElement(),e.appendChild(i));if(this.showEOL&&i){n&&(t=n.end.row);var o=this.dom.createElement("span");o.className="ace_invisible ace_invisible_eol",o.textContent=t==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,i.appendChild(o)}},e.prototype.$getFoldLineTokens=function(e,t){function i(e,t,n){var i=0,s=0;while(s+e[i].value.lengthn-t&&(o=o.substring(0,n-t)),r.push({type:e[i].type,value:o}),s=t+o.length,i+=1}while(sn?r.push({type:e[i].type,value:o.substring(0,n-s)}):r.push(e[i]),s+=o.length,i+=1}}var n=this.session,r=[],s=n.getTokens(e);return t.walk(function(e,t,o,u,a){e!=null?r.push({type:"fold",value:e}):(a&&(s=n.getTokens(t)),s.length&&i(s,u,o))},t.end.row,this.session.getLine(t.end.row).length),r},e.prototype.$useLineGroups=function(){return this.session.getUseWrapMode()},e}();l.prototype.EOF_CHAR="\u00b6",l.prototype.EOL_CHAR_LF="\u00ac",l.prototype.EOL_CHAR_CRLF="\u00a4",l.prototype.EOL_CHAR=l.prototype.EOL_CHAR_LF,l.prototype.TAB_CHAR="\u2014",l.prototype.SPACE_CHAR="\u00b7",l.prototype.CJK_SPACE_CHAR="\u30fb",l.prototype.$padding=0,l.prototype.MAX_LINE_LENGTH=1e4,l.prototype.showInvisibles=!1,l.prototype.showSpaces=!1,l.prototype.showTabs=!1,l.prototype.showEOL=!1,l.prototype.displayIndentGuides=!0,l.prototype.$highlightIndentGuides=!0,l.prototype.$tabStrings=[],l.prototype.destroy={},l.prototype.onChangeTabSize=l.prototype.$computeTabString,r.implement(l.prototype,u),t.Text=l}),define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=function(){function e(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_cursor-layer",e.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),r.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)}return e.prototype.$updateOpacity=function(e){var t=this.cursors;for(var n=t.length;n--;)r.setStyle(t[n].style,"opacity",e?"":"0")},e.prototype.$startCssAnimation=function(){var e=this.cursors;for(var t=e.length;t--;)e[t].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout(function(){this.$isAnimating&&r.addCssClass(this.element,"ace_animate-blinking")}.bind(this))},e.prototype.$stopCssAnimation=function(){this.$isAnimating=!1,r.removeCssClass(this.element,"ace_animate-blinking")},e.prototype.setPadding=function(e){this.$padding=e},e.prototype.setSession=function(e){this.session=e},e.prototype.setBlinking=function(e){e!=this.isBlinking&&(this.isBlinking=e,this.restartTimer())},e.prototype.setBlinkInterval=function(e){e!=this.blinkInterval&&(this.blinkInterval=e,this.restartTimer())},e.prototype.setSmoothBlinking=function(e){e!=this.smoothBlinking&&(this.smoothBlinking=e,r.setCssClass(this.element,"ace_smooth-blinking",e),this.$updateCursors(!0),this.restartTimer())},e.prototype.addCursor=function(){var e=r.createElement("div");return e.className="ace_cursor",this.element.appendChild(e),this.cursors.push(e),e},e.prototype.removeCursor=function(){if(this.cursors.length>1){var e=this.cursors.pop();return e.parentNode.removeChild(e),e}},e.prototype.hideCursor=function(){this.isVisible=!1,r.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},e.prototype.showCursor=function(){this.isVisible=!0,r.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},e.prototype.restartTimer=function(){var e=this.$updateCursors;clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,r.removeCssClass(this.element,"ace_smooth-blinking")),e(!0);if(!this.isBlinking||!this.blinkInterval||!this.isVisible){this.$stopCssAnimation();return}this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout(function(){this.$isSmoothBlinking&&r.addCssClass(this.element,"ace_smooth-blinking")}.bind(this)));if(r.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var t=function(){this.timeoutId=setTimeout(function(){e(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){e(!0),t()},this.blinkInterval),t()}},e.prototype.getPixelPosition=function(e,t){if(!this.config||!this.session)return{left:0,top:0,width:0};e||(e=this.session.selection.getCursor());var n=this.session.documentToScreenPosition(e),r=this.config.fontMetrics.textWidth(n.row,n.column),i=this.$padding+r,s=(n.row-(t?this.config.firstRowScreen:0))*this.config.lineHeight,o=this.config.fontMetrics.textWidth(n.row,n.column+1)-r;return{left:i,top:s,width:Math.abs(o)||this.config.characterWidth}},e.prototype.isCursorInView=function(e,t){return e.top>=0&&e.tope.height+e.offset||o.top<0)&&n>1)continue;var u=this.cursors[i++]||this.addCursor(),a=u.style;this.drawCursor?this.drawCursor(u,o,e,t[n],this.session):this.isCursorInView(o,e)?(r.setStyle(a,"display","block"),r.translate(u,o.left,o.top),r.setStyle(a,"width",Math.round(o.width)+"px"),r.setStyle(a,"height",e.lineHeight+"px")):r.setStyle(a,"display","none")}while(this.cursors.length>i)this.removeCursor();var f=this.session.getOverwrite();this.$setOverwrite(f),this.$pixelPos=o,this.restartTimer()},e.prototype.$setOverwrite=function(e){e!=this.overwrite&&(this.overwrite=e,e?r.addCssClass(this.element,"ace_overwrite-cursors"):r.removeCssClass(this.element,"ace_overwrite-cursors"))},e.prototype.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)},e}();i.prototype.$padding=0,i.prototype.drawCursor=null,t.Cursor=i}),define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("./lib/oop"),s=e("./lib/dom"),o=e("./lib/event"),u=e("./lib/event_emitter").EventEmitter,a=32768,f=function(){function e(e,t){this.element=s.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+t,this.element.tabIndex=-1,this.inner=s.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent="\u00a0",this.element.appendChild(this.inner),e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,o.addListener(this.element,"scroll",this.onScroll.bind(this)),o.addListener(this.element,"mousedown",o.preventDefault)}return e.prototype.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e,this.coeff=1},e}();i.implement(f.prototype,u);var l=function(e){function t(t,n){var r=e.call(this,t,"-v")||this;return r.scrollTop=0,r.scrollHeight=0,n.$scrollbarWidth=r.width=s.scrollbarWidth(t.ownerDocument),r.inner.style.width=r.element.style.width=(r.width||15)+5+"px",r.$minWidth=0,r}return r(t,e),t.prototype.onScroll=function(){if(!this.skipEvent){this.scrollTop=this.element.scrollTop;if(this.coeff!=1){var e=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-e)/(this.coeff-e)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},t.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},t.prototype.setHeight=function(e){this.element.style.height=e+"px"},t.prototype.setScrollHeight=function(e){this.scrollHeight=e,e>a?(this.coeff=a/e,e=a):this.coeff!=1&&(this.coeff=1),this.inner.style.height=e+"px"},t.prototype.setScrollTop=function(e){this.scrollTop!=e&&(this.skipEvent=!0,this.scrollTop=e,this.element.scrollTop=e*this.coeff)},t}(f);l.prototype.setInnerHeight=l.prototype.setScrollHeight;var c=function(e){function t(t,n){var r=e.call(this,t,"-h")||this;return r.scrollLeft=0,r.height=n.$scrollbarWidth,r.inner.style.height=r.element.style.height=(r.height||15)+5+"px",r}return r(t,e),t.prototype.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},t.prototype.getHeight=function(){return this.isVisible?this.height:0},t.prototype.setWidth=function(e){this.element.style.width=e+"px"},t.prototype.setInnerWidth=function(e){this.inner.style.width=e+"px"},t.prototype.setScrollWidth=function(e){this.inner.style.width=e+"px"},t.prototype.setScrollLeft=function(e){this.scrollLeft!=e&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=e)},t}(f);t.ScrollBar=l,t.ScrollBarV=l,t.ScrollBarH=c,t.VScrollBar=l,t.HScrollBar=c}),define("ace/scrollbar_custom",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("./lib/oop"),s=e("./lib/dom"),o=e("./lib/event"),u=e("./lib/event_emitter").EventEmitter;s.importCssString(".ace_editor>.ace_sb-v div, .ace_editor>.ace_sb-h div{\n position: absolute;\n background: rgba(128, 128, 128, 0.6);\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n border: 1px solid #bbb;\n border-radius: 2px;\n z-index: 8;\n}\n.ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h {\n position: absolute;\n z-index: 6;\n background: none;\n overflow: hidden!important;\n}\n.ace_editor>.ace_sb-v {\n z-index: 6;\n right: 0;\n top: 0;\n width: 12px;\n}\n.ace_editor>.ace_sb-v div {\n z-index: 8;\n right: 0;\n width: 100%;\n}\n.ace_editor>.ace_sb-h {\n bottom: 0;\n left: 0;\n height: 12px;\n}\n.ace_editor>.ace_sb-h div {\n bottom: 0;\n height: 100%;\n}\n.ace_editor>.ace_sb_grabbed {\n z-index: 8;\n background: #000;\n}","ace_scrollbar.css",!1);var a=function(){function e(e,t){this.element=s.createElement("div"),this.element.className="ace_sb"+t,this.inner=s.createElement("div"),this.inner.className="",this.element.appendChild(this.inner),this.VScrollWidth=12,this.HScrollHeight=12,e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,o.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return e.prototype.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e,this.coeff=1},e}();i.implement(a.prototype,u);var f=function(e){function t(t,n){var r=e.call(this,t,"-v")||this;return r.scrollTop=0,r.scrollHeight=0,r.parent=t,r.width=r.VScrollWidth,r.renderer=n,r.inner.style.width=r.element.style.width=(r.width||15)+"px",r.$minWidth=0,r}return r(t,e),t.prototype.onMouseDown=function(e,t){if(e!=="mousedown")return;if(o.getButton(t)!==0||t.detail===2)return;if(t.target===this.inner){var n=this,r=t.clientY,i=function(e){r=e.clientY},s=function(){clearInterval(l)},u=t.clientY,a=this.thumbTop,f=function(){if(r===undefined)return;var e=n.scrollTopFromThumbTop(a+r-u);if(e===n.scrollTop)return;n._emit("scroll",{data:e})};o.capture(this.inner,i,s);var l=setInterval(f,20);return o.preventDefault(t)}var c=t.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(c)}),o.preventDefault(t)},t.prototype.getHeight=function(){return this.height},t.prototype.scrollTopFromThumbTop=function(e){var t=e*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return t>>=0,t<0?t=0:t>this.pageHeight-this.viewHeight&&(t=this.pageHeight-this.viewHeight),t},t.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},t.prototype.setHeight=function(e){this.height=Math.max(0,e),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},t.prototype.setScrollHeight=function(e,t){if(this.pageHeight===e&&!t)return;this.pageHeight=e,this.thumbHeight=this.slideHeight*this.viewHeight/this.pageHeight,this.thumbHeight>this.slideHeight&&(this.thumbHeight=this.slideHeight),this.thumbHeight<15&&(this.thumbHeight=15),this.inner.style.height=this.thumbHeight+"px",this.scrollTop>this.pageHeight-this.viewHeight&&(this.scrollTop=this.pageHeight-this.viewHeight,this.scrollTop<0&&(this.scrollTop=0),this._emit("scroll",{data:this.scrollTop}))},t.prototype.setScrollTop=function(e){this.scrollTop=e,e<0&&(e=0),this.thumbTop=e*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},t}(a);f.prototype.setInnerHeight=f.prototype.setScrollHeight;var l=function(e){function t(t,n){var r=e.call(this,t,"-h")||this;return r.scrollLeft=0,r.scrollWidth=0,r.height=r.HScrollHeight,r.inner.style.height=r.element.style.height=(r.height||12)+"px",r.renderer=n,r}return r(t,e),t.prototype.onMouseDown=function(e,t){if(e!=="mousedown")return;if(o.getButton(t)!==0||t.detail===2)return;if(t.target===this.inner){var n=this,r=t.clientX,i=function(e){r=e.clientX},s=function(){clearInterval(l)},u=t.clientX,a=this.thumbLeft,f=function(){if(r===undefined)return;var e=n.scrollLeftFromThumbLeft(a+r-u);if(e===n.scrollLeft)return;n._emit("scroll",{data:e})};o.capture(this.inner,i,s);var l=setInterval(f,20);return o.preventDefault(t)}var c=t.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(c)}),o.preventDefault(t)},t.prototype.getHeight=function(){return this.isVisible?this.height:0},t.prototype.scrollLeftFromThumbLeft=function(e){var t=e*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return t>>=0,t<0?t=0:t>this.pageWidth-this.viewWidth&&(t=this.pageWidth-this.viewWidth),t},t.prototype.setWidth=function(e){this.width=Math.max(0,e),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},t.prototype.setScrollWidth=function(e,t){if(this.pageWidth===e&&!t)return;this.pageWidth=e,this.thumbWidth=this.slideWidth*this.viewWidth/this.pageWidth,this.thumbWidth>this.slideWidth&&(this.thumbWidth=this.slideWidth),this.thumbWidth<15&&(this.thumbWidth=15),this.inner.style.width=this.thumbWidth+"px",this.scrollLeft>this.pageWidth-this.viewWidth&&(this.scrollLeft=this.pageWidth-this.viewWidth,this.scrollLeft<0&&(this.scrollLeft=0),this._emit("scroll",{data:this.scrollLeft}))},t.prototype.setScrollLeft=function(e){this.scrollLeft=e,e<0&&(e=0),this.thumbLeft=e*(this.slideWidth-this.thumbWidth)/(this.pageWidth-this.viewWidth),this.inner.style.left=this.thumbLeft+"px"},t}(a);l.prototype.setInnerWidth=l.prototype.setScrollWidth,t.ScrollBar=f,t.ScrollBarV=f,t.ScrollBarH=l,t.VScrollBar=f,t.HScrollBar=l}),define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,t,n){"use strict";var r=e("./lib/event"),i=function(){function e(e,t){this.onRender=e,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=t||window;var n=this;this._flush=function(e){n.pending=!1;var t=n.changes;t&&(r.blockIdle(100),n.changes=0,n.onRender(t));if(n.changes){if(n.$recursionLimit--<0)return;n.schedule()}else n.$recursionLimit=2}}return e.prototype.schedule=function(e){this.changes=this.changes|e,this.changes&&!this.pending&&(r.nextFrame(this._flush),this.pending=!0)},e.prototype.clear=function(e){var t=this.changes;return this.changes=0,t},e}();t.RenderLoop=i}),define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){function p(e){var t=[];for(var n=0;n>0&3,d>>2&3,d>>4&3,d>>6&3],m=v.map(function(e){return l[e]}),g=m.map(function(e,t){var n=r(e,2),i=n[0],s=n[1],o=a[t],l=f[t]?u.slice(3,6):u.slice(0,3),c=u.slice(6,9),h=l[0]-o*c[0],p=l[1]-o*c[1];return[h,p,i*h,s*p,o*c[2]-l[2]]}),y=E(g),c;if(y){var b=r(y,4),S=b[0],x=b[1],T=b[2],N=b[3];T<0&&(S+=T,T=-T),N<0&&(x+=N,N=-N);if(w(u,S,x,T,N,t)){c={left:S,top:x,width:T,height:N,right:S+T,bottom:x+N,mappingIdx:p};break}}}return c||console.warn("No valid mapping found in 256 combinations."),c}function w(e,t,n,r,i,s){var o=[[t,n],[t+r,n],[t+r,n+i],[t,n+i]];return o.every(function(t){var n=b(e,t[0],t[1]);return s.left-.5<=n[0]&&n[0]<=s.left+s.width+.5&&s.top-.5<=n[1]&&n[1]<=s.top+s.height+.5})}function E(e){var t,n=4;for(var i=0;iMath.abs(e[s][i])&&(s=o);t=r([e[s],e[i]],2),e[i]=t[0],e[s]=t[1];var u=e[i][i];if(Math.abs(u)<1e-10)return null;for(var o=i;o<=n;o++)e[i][o]/=u;for(var a=0;a0)&&!(i=r.next()).done)s.push(i.value)}catch(u){o={error:u}}finally{try{i&&!i.done&&(n=r["return"])&&n.call(r)}finally{if(o)throw o.error}}return s},i=e("../lib/oop"),s=e("../lib/dom"),o=e("../lib/lang"),u=e("../lib/event"),a=e("../lib/event_emitter").EventEmitter,f=512,l=typeof ResizeObserver=="function",c=200,h=function(){function e(e,t,n){this.config={characterWidth:1},this.$characterSize={width:0,height:0},this.textLayer=t,this.renderer=n,this.el=s.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=s.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=s.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),e.appendChild(this.el),this.$measureNode.textContent=o.stringRepeat("X",f),l?this.$addObserver():this.checkForSizeChanges(),this.textLayer.$setFontMetrics(this),this.$scratchRange=document.createRange()}return e.prototype.$setMeasureNodeStyles=function(e,t){e.width=e.height="auto",e.left=e.top="0px",e.visibility="hidden",e.position="absolute",e.whiteSpace="pre",e.font="inherit",e.overflow=t?"hidden":"visible"},e.prototype.checkForSizeChanges=function(e){e===undefined&&(e=this.$measureSizes());if(e&&(this.$characterSize.width!==e.width||this.$characterSize.height!==e.height)){this.$measureNode.style.fontWeight="bold";var t=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=e,this.charSizes=Object.create(null),this.allowBoldFonts=t&&t.width===e.width&&t.height===e.height,this._emit("changeCharacterSize",{data:e})}},e.prototype.$addObserver=function(){var e=this;this.$observer=new window.ResizeObserver(function(t){e.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},e.prototype.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var e=this;return this.$pollSizeChangesTimer=u.onIdle(function t(){e.checkForSizeChanges(),u.onIdle(t,500)},500)},e.prototype.setPolling=function(e){e?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},e.prototype.$measureSizes=function(e){var t={height:(e||this.$measureNode).clientHeight,width:(e||this.$measureNode).clientWidth/f};return t.width===0||t.height===0?null:t},e.prototype.$measureCharWidth=function(e){this.$main.textContent=o.stringRepeat(e,f);var t=this.$main.getBoundingClientRect();return t.width/f},e.prototype.getCharacterWidth=function(e){var t=this.charSizes[e];return t===undefined&&(t=this.charSizes[e]=this.$measureCharWidth(e)/this.$characterSize.width),t},e.prototype.getTextWidth=function(e){return e?(this.$main.textContent=e,this.$main.clientWidth):0},e.prototype.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},e.prototype.$initTransformMeasureNodes=function(){var e=function(e,t){return["div",{style:"position: absolute;left:"+e+"px;top:"+t+"px;"}]};this.els=s.buildDom([e(0,0),e(c,0),e(0,c),e(c,c)],this.el)},e.prototype.getTransform=function(){function e(e){var t=e.getBoundingClientRect();return[t.left,t.top]}if(this.config.$transformData)return this.config.$transformData;this.els||this.$initTransformMeasureNodes();var t=e(this.els[0]),n=e(this.els[1]),r=e(this.els[2]),i=e(this.els[3]),s=d(v(i,n),v(i,r),v(m(n,r),m(i,t))),o=g((1+s[0])/c,v(n,t)),u=g((1+s[1])/c,v(r,t)),a=[o[0],u[0],0,o[1],u[1],0,s[0]/c,s[1]/c,1],f=1/(a[0]*a[4]-a[3]*a[1]),l=[a[4]*f,-a[1]*f,0,-a[3]*f,a[0]*f,0,(a[3]*a[7]-a[4]*a[6])*f,(a[1]*a[6]-a[0]*a[7])*f,1];return this.config.$transformData={M:a,MInv:l,t:t},this.config.$transformData},e.prototype.transformCoordinates=function(e,t){this.config.$transformData||this.getTransform();var n=this.config.$transformData;return t?m(b(n.M,t[0],t[1]),n.t):b(n.MInv,e[0]-n.t[0],e[1]-n.t[1])},e.prototype.recoverRect=function(e,t){var n=e.M,i=Math.abs(n[6])<1e-10&&Math.abs(n[7])<1e-10,s=t.left,o=t.top,u=t.width,a=t.height;s-=e.t[0],o-=e.t[1];if(i){var f=r(n,6),l=f[0],c=f[1],h=f[2],p=f[3],d=f[4],v=f[5],m=[Math.abs(l),Math.abs(c),Math.abs(p),Math.abs(d)],g=m[0]*m[3]-m[2]*m[1],b=void 0,w=void 0;Math.abs(g)<1e-10?(w=this.config&&this.config.lineHeight||0,b=(u-m[1]*w)/m[0]):(b=(m[3]*u-m[1]*a)/g,w=(-m[2]*u+m[0]*a)/g);var E=l*d-c*p,S=s+u/2-h,x=o+a/2-v,T=(d*S-c*x)/E,N=(-p*S+l*x)/E;return{left:T-b/2,top:N-w/2,width:b,height:w,right:T+b/2,bottom:N+w/2}}return y(e,t)},e.prototype.$findElementForScreenRow=function(e){var t=this.textLayer;if(!this.config)return null;var n=t.$lines.$getCellByScreenRow(e,this.config),r=n&&n.cell.element;if(r&&t.$useLineGroups()){var i=Math.floor(n.offset/this.config.lineHeight);r=r.children[Math.max(i,0)]}return r},e.prototype.textWidth=function(e,t){var n=this.$findElementForScreenRow(e);return!n||!document.createRange?t*this.config.characterWidth:this.$measureLineToColumn(n,t)},e.prototype.$measureLineToColumn=function(e,t){var n=this.textLayer;try{var r=this.$findColumnPosition(e,t);if(!r)return t*this.config.characterWidth;this.$scratchRange.setStart(r.node,r.offset),this.$scratchRange.setEnd(r.node,r.offset);var i=this.$scratchRange.getBoundingClientRect();if(this.renderer.$hasCssTransforms){var s=this.getTransform(),o=this.recoverRect(s,i),u=this.renderer.gutterWidth+this.renderer.margin.left+this.renderer.$padding-this.renderer.scrollLeft;return o.left-u+r.overflow*this.config.characterWidth}var a=n.element.getBoundingClientRect();return i.left-a.left+r.overflow*this.config.characterWidth}catch(f){return console.error("Error measuring text width:",f),t*this.config.characterWidth}},e.prototype.$findColumnPosition=function(e,t){var n=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,null),r=0,i,s;while(i=n.nextNode()){var o=i.nodeValue,u=o.length;if(r+u>=t)return{node:i,offset:t-r,overflow:0};r+=u,s=i}return s&&{node:s,offset:s.nodeValue.length,overflow:t-r}},e.prototype.$pixelToColumn=function(e,t,n,r,i){function p(e){if(e.nodeType===Node.TEXT_NODE){var t=e.nodeValue.length,i=Number.MAX_VALUE,s=-1,u=undefined,d=e.nodeValue;for(var v=0;v<=t;v++){o.setStart(e,v),o.setEnd(e,v);if(v>0&&v .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons {\n padding-right: 13px;\n}\n\n.ace_fold-widget, .ace_custom-widget {\n box-sizing: border-box;\n\n margin: 0 -12px 0 1px;\n display: none;\n width: 11px;\n vertical-align: top;\n\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");\n background-repeat: no-repeat;\n background-position: center;\n\n border-radius: 3px;\n \n border: 1px solid transparent;\n cursor: pointer;\n pointer-events: auto;\n}\n\n.ace_custom-widget {\n background: none;\n}\n\n.ace_folding-enabled .ace_fold-widget {\n display: inline-block; \n}\n\n.ace_fold-widget.ace_end {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");\n}\n\n.ace_fold-widget.ace_closed {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");\n}\n\n.ace_fold-widget:hover {\n border: 1px solid rgba(0, 0, 0, 0.3);\n background-color: rgba(255, 255, 255, 0.2);\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);\n}\n\n.ace_fold-widget:active {\n border: 1px solid rgba(0, 0, 0, 0.4);\n background-color: rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);\n}\n/**\n * Dark version for fold widgets\n */\n.ace_dark .ace_fold-widget {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");\n}\n.ace_dark .ace_fold-widget.ace_end {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");\n}\n.ace_dark .ace_fold-widget.ace_closed {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");\n}\n.ace_dark .ace_fold-widget:hover {\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\n background-color: rgba(255, 255, 255, 0.1);\n}\n.ace_dark .ace_fold-widget:active {\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\n}\n\n.ace_inline_button {\n border: 1px solid lightgray;\n display: inline-block;\n margin: -1px 8px;\n padding: 0 5px;\n pointer-events: auto;\n cursor: pointer;\n}\n.ace_inline_button:hover {\n border-color: gray;\n background: rgba(200,200,200,0.2);\n display: inline-block;\n pointer-events: auto;\n}\n\n.ace_fold-widget.ace_invalid {\n background-color: #FFB4B4;\n border-color: #DE5555;\n}\n\n.ace_fade-fold-widgets .ace_fold-widget {\n transition: opacity 0.4s ease 0.05s;\n opacity: 0;\n}\n\n.ace_fade-fold-widgets:hover .ace_fold-widget {\n transition: opacity 0.05s ease 0.05s;\n opacity:1;\n}\n\n.ace_underline {\n text-decoration: underline;\n}\n\n.ace_bold {\n font-weight: bold;\n}\n\n.ace_nobold .ace_bold {\n font-weight: normal;\n}\n\n.ace_italic {\n font-style: italic;\n}\n\n\n.ace_error-marker {\n background-color: rgba(255, 0, 0,0.2);\n position: absolute;\n z-index: 9;\n}\n\n.ace_highlight-marker {\n background-color: rgba(255, 255, 0,0.2);\n position: absolute;\n z-index: 8;\n}\n\n.ace_mobile-menu {\n position: absolute;\n line-height: 1.5;\n border-radius: 4px;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n background: white;\n box-shadow: 1px 3px 2px grey;\n border: 1px solid #dcdcdc;\n color: black;\n}\n.ace_dark > .ace_mobile-menu {\n background: #333;\n color: #ccc;\n box-shadow: 1px 3px 2px grey;\n border: 1px solid #444;\n\n}\n.ace_mobile-button {\n padding: 2px;\n cursor: pointer;\n overflow: hidden;\n}\n.ace_mobile-button:hover {\n background-color: #eee;\n opacity:1;\n}\n.ace_mobile-button:active {\n background-color: #ddd;\n}\n\n.ace_placeholder {\n position: relative;\n font-family: arial;\n transform: scale(0.9);\n transform-origin: left;\n white-space: pre;\n opacity: 0.7;\n margin: 0 10px;\n z-index: 1;\n}\n\n.ace_ghost_text {\n opacity: 0.5;\n font-style: italic;\n}\n\n.ace_ghost_text_container > div {\n white-space: pre;\n}\n\n.ghost_text_line_wrapped::after {\n content: "\u21a9";\n position: absolute;\n}\n\n.ace_lineWidgetContainer.ace_ghost_text {\n margin: 0px 4px\n}\n\n.ace_screenreader-only {\n position:absolute;\n left:-10000px;\n top:auto;\n width:1px;\n height:1px;\n overflow:hidden;\n}\n\n.ace_hidden_token {\n display: none;\n}'}),define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=e("../lib/oop"),s=e("../lib/event_emitter").EventEmitter,o=function(){function e(e,t){this.renderer=t,this.pixelRatio=1,this.maxHeight=t.layerConfig.maxHeight,this.lineHeight=t.layerConfig.lineHeight,this.minDecorationHeight=2*this.pixelRatio|0,this.halfMinDecorationHeight=this.minDecorationHeight/2|0,this.colors={},this.colors.dark={error:"rgba(255, 18, 18, 1)",warning:"rgba(18, 136, 18, 1)",info:"rgba(18, 18, 136, 1)"},this.colors.light={error:"rgb(255,51,51)",warning:"rgb(32,133,72)",info:"rgb(35,68,138)"},this.setScrollBarV(e)}return e.prototype.$createCanvas=function(){this.canvas=r.createElement("canvas"),this.canvas.style.top="0px",this.canvas.style.right="0px",this.canvas.style.zIndex="7",this.canvas.style.position="absolute"},e.prototype.setScrollBarV=function(e){this.$createCanvas(),this.scrollbarV=e,e.element.appendChild(this.canvas),this.setDimensions()},e.prototype.$updateDecorators=function(e){function r(e,t){return e.priorityt.priority?1:0}if(typeof this.canvas.getContext!="function")return;var t=this.renderer.theme.isDark===!0?this.colors.dark:this.colors.light;this.setDimensions(e);var n=this.canvas.getContext("2d"),i=this.renderer.session.$annotations;n.clearRect(0,0,this.canvas.width,this.canvas.height);if(i){var s={info:1,warning:2,error:3};i.forEach(function(e){e.priority=s[e.type]||null}),i=i.sort(r);for(var o=0;othis.canvasHeight&&(h=this.canvasHeight-p);var d=h-p,v=h+p,m=v-d;n.fillStyle=t[i[o].type]||null,n.fillRect(0,d,Math.round(this.oneZoneWidth-1),m)}}var g=this.renderer.session.selection.getCursor();if(g){var y=Math.round(this.getVerticalOffsetForRow(g.row)*this.heightRatio);n.fillStyle="rgba(0, 0, 0, 0.5)",n.fillRect(0,y,this.canvasWidth,2)}},e.prototype.getVerticalOffsetForRow=function(e){e|=0;var t=this.renderer.session.documentToScreenRow(e,0)*this.lineHeight;return t},e.prototype.setDimensions=function(e){e=e||this.renderer.layerConfig,this.maxHeight=e.maxHeight,this.lineHeight=e.lineHeight,this.canvasHeight=e.height,this.canvasWidth=this.scrollbarV.width||this.canvasWidth,this.setZoneWidth(),this.canvas.width=this.canvasWidth,this.canvas.height=this.canvasHeight,this.maxHeighte&&(this.$changedLines.firstRow=e),this.$changedLines.lastRowthis.layerConfig.lastRow)return;this.$loop.schedule(this.CHANGE_LINES)},e.prototype.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},e.prototype.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},e.prototype.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},e.prototype.updateFull=function(e){e?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},e.prototype.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},e.prototype.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},e.prototype.onResize=function(e,t,n,r){if(this.resizing>2)return;this.resizing>0?this.resizing++:this.resizing=e?1:0;var i=this.container;r||(r=i.clientHeight||i.scrollHeight),!r&&this.$maxLines&&this.lineHeight>1&&(!i.style.height||i.style.height=="0px")&&(i.style.height="1px",r=i.clientHeight||i.scrollHeight),n||(n=i.clientWidth||i.scrollWidth);var s=this.$updateCachedSize(e,t,n,r);this.$resizeTimer&&this.$resizeTimer.cancel();if(!this.$size.scrollerHeight||!n&&!r)return this.resizing=0;e&&(this.$gutterLayer.$padding=null),e?this.$renderChanges(s|this.$changes,!0):this.$loop.schedule(s|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.$customScrollbar&&this.$updateCustomScrollbar(!0)},e.prototype.$updateCachedSize=function(e,t,n,r){r-=this.$extraHeight||0;var s=0,o=this.$size,u={width:o.width,height:o.height,scrollerHeight:o.scrollerHeight,scrollerWidth:o.scrollerWidth};r&&(e||o.height!=r)&&(o.height=r,s|=this.CHANGE_SIZE,o.scrollerHeight=o.height,this.$horizScroll&&(o.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.setHeight(o.scrollerHeight),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",s|=this.CHANGE_SCROLL);if(n&&(e||o.width!=n)){s|=this.CHANGE_SIZE,o.width=n,t==null&&(t=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=t,i.setStyle(this.scrollBarH.element.style,"left",t+"px"),i.setStyle(this.scroller.style,"left",t+this.margin.left+"px"),o.scrollerWidth=Math.max(0,n-t-this.scrollBarV.getWidth()-this.margin.h),i.setStyle(this.$gutter.style,"left",this.margin.left+"px");var a=this.scrollBarV.getWidth()+"px";i.setStyle(this.scrollBarH.element.style,"right",a),i.setStyle(this.scroller.style,"right",a),i.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),this.scrollBarH.setWidth(o.scrollerWidth);if(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||e)s|=this.CHANGE_FULL}return o.$dirty=!n||!r,s&&this._signal("resize",u),s},e.prototype.onGutterResize=function(e){var t=this.$showGutter?e:0;t!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,t,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):this.$computeLayerConfig()},e.prototype.adjustWrapLimit=function(){var e=this.$size.scrollerWidth-this.$padding*2,t=Math.floor(e/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)},e.prototype.setAnimatedScroll=function(e){this.setOption("animatedScroll",e)},e.prototype.getAnimatedScroll=function(){return this.$animatedScroll},e.prototype.setShowInvisibles=function(e){this.setOption("showInvisibles",e),this.session.$bidiHandler.setShowInvisibles(e)},e.prototype.getShowInvisibles=function(){return this.getOption("showInvisibles")},e.prototype.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},e.prototype.setDisplayIndentGuides=function(e){this.setOption("displayIndentGuides",e)},e.prototype.getHighlightIndentGuides=function(){return this.getOption("highlightIndentGuides")},e.prototype.setHighlightIndentGuides=function(e){this.setOption("highlightIndentGuides",e)},e.prototype.setShowPrintMargin=function(e){this.setOption("showPrintMargin",e)},e.prototype.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},e.prototype.setPrintMarginColumn=function(e){this.setOption("printMarginColumn",e)},e.prototype.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},e.prototype.getShowGutter=function(){return this.getOption("showGutter")},e.prototype.setShowGutter=function(e){return this.setOption("showGutter",e)},e.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},e.prototype.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},e.prototype.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},e.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},e.prototype.$updatePrintMargin=function(){if(!this.$showPrintMargin&&!this.$printMarginEl)return;if(!this.$printMarginEl){var e=i.createElement("div");e.className="ace_layer ace_print-margin-layer",this.$printMarginEl=i.createElement("div"),this.$printMarginEl.className="ace_print-margin",e.appendChild(this.$printMarginEl),this.content.insertBefore(e,this.content.firstChild)}var t=this.$printMarginEl.style;t.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",t.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit()},e.prototype.getContainerElement=function(){return this.container},e.prototype.getMouseEventTarget=function(){return this.scroller},e.prototype.getTextAreaContainer=function(){return this.container},e.prototype.$moveTextAreaToCursor=function(){if(this.$isMousePressed)return;var e=this.textarea.style,t=this.$composition;if(!this.$keepTextAreaAtCursor&&!t){i.translate(this.textarea,-100,0);return}var n=this.$cursorLayer.$pixelPos;if(!n)return;t&&t.markerRange&&(n=this.$cursorLayer.getPixelPosition(t.markerRange.start,!0));var r=this.layerConfig,s=n.top,o=n.left;s-=r.offset;var u=t&&t.useTextareaForIME||w.isMobile?this.lineHeight:1;if(s<0||s>r.height-u){i.translate(this.textarea,0,0);return}var a=1,f=this.$size.height-u;if(!t)s+=this.lineHeight;else if(t.useTextareaForIME){var l=this.textarea.value;a=this.$fontMetrics.getTextWidth(l)+1}else s+=this.lineHeight+2;o-=this.scrollLeft,o>this.$size.scrollerWidth-a&&(o=this.$size.scrollerWidth-a),o+=this.gutterWidth+this.margin.left,i.setStyle(e,"height",u+"px"),i.setStyle(e,"width",a+"px"),i.translate(this.textarea,Math.min(o,this.$size.scrollerWidth-a),Math.min(s,f))},e.prototype.getFirstVisibleRow=function(){return this.layerConfig.firstRow},e.prototype.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)},e.prototype.getLastFullyVisibleRow=function(){var e=this.layerConfig,t=e.lastRow,n=this.session.documentToScreenRow(t,0)*e.lineHeight;return n-this.session.getScrollTop()>e.height-e.lineHeight?t-1:t},e.prototype.getLastVisibleRow=function(){return this.layerConfig.lastRow},e.prototype.setPadding=function(e){this.$padding=e,this.$textLayer.setPadding(e),this.$cursorLayer.setPadding(e),this.$markerFront.setPadding(e),this.$markerBack.setPadding(e),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},e.prototype.setScrollMargin=function(e,t,n,r){var i=this.scrollMargin;i.top=e|0,i.bottom=t|0,i.right=r|0,i.left=n|0,i.v=i.top+i.bottom,i.h=i.left+i.right,i.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-i.top),this.updateFull()},e.prototype.setMargin=function(e,t,n,r){var i=this.margin;i.top=e|0,i.bottom=t|0,i.right=r|0,i.left=n|0,i.v=i.top+i.bottom,i.h=i.left+i.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},e.prototype.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},e.prototype.setHScrollBarAlwaysVisible=function(e){this.setOption("hScrollBarAlwaysVisible",e)},e.prototype.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},e.prototype.setVScrollBarAlwaysVisible=function(e){this.setOption("vScrollBarAlwaysVisible",e)},e.prototype.$updateScrollBarV=function(){var e=this.layerConfig.maxHeight,t=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(e-=(t-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>e-t&&(e=this.scrollTop+t,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(e+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},e.prototype.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},e.prototype.freeze=function(){this.$frozen=!0},e.prototype.unfreeze=function(){this.$frozen=!1},e.prototype.$renderChanges=function(e,t){this.$changes&&(e|=this.$changes,this.$changes=0);if(!this.session||!this.container.offsetWidth||this.$frozen||!e&&!t){this.$changes|=e;return}if(this.$size.$dirty)return this.$changes|=e,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",e);var n=this.layerConfig;if(e&this.CHANGE_FULL||e&this.CHANGE_SIZE||e&this.CHANGE_TEXT||e&this.CHANGE_LINES||e&this.CHANGE_SCROLL||e&this.CHANGE_H_SCROLL){e|=this.$computeLayerConfig()|this.$loop.clear();if(n.firstRow!=this.layerConfig.firstRow&&n.firstRowScreen==this.layerConfig.firstRowScreen){var r=this.scrollTop+(n.firstRow-Math.max(this.layerConfig.firstRow,0))*this.lineHeight;r>0&&(this.scrollTop=r,e|=this.CHANGE_SCROLL,e|=this.$computeLayerConfig()|this.$loop.clear())}n=this.layerConfig}e&this.CHANGE_H_SCROLL&&(this.$updateContentTransformAndSize(n,e),this.scroller.className=this.scrollLeft<=0?"ace_scroller ":"ace_scroller ace_scroll-left ",this.enableKeyboardAccessibility&&(this.scroller.className+=this.keyboardFocusClassName));if(e&this.CHANGE_FULL){this.$changedLines=null,this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$updateContentTransformAndSize(n,e),this.$moveTextAreaToCursor(),this._signal("afterRender",e);return}if(e&this.CHANGE_SCROLL){this.$changedLines=null,e&this.CHANGE_TEXT||e&this.CHANGE_LINES?this.$textLayer.update(n):this.$textLayer.scrollLines(n),this.$showGutter&&(e&this.CHANGE_GUTTER||e&this.CHANGE_LINES?this.$gutterLayer.update(n):this.$gutterLayer.scrollLines(n)),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$updateContentTransformAndSize(n,e),this.$moveTextAreaToCursor(),this._signal("afterRender",e);return}e&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n),this.$updateContentTransformAndSize(n,e)):e&this.CHANGE_LINES?((this.$updateLines()||e&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n),this.$updateContentTransformAndSize(n,e)):e&this.CHANGE_TEXT||e&this.CHANGE_GUTTER?(this.$showGutter&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n)):e&this.CHANGE_CURSOR&&(this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n)),e&this.CHANGE_CURSOR&&(this.$cursorLayer.update(n),this.$moveTextAreaToCursor()),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(n),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(n),this._signal("afterRender",e)},e.prototype.$autosize=function(){var e=this.session.getScreenLength()*this.lineHeight,t=this.$maxLines*this.lineHeight,n=Math.min(t,Math.max((this.$minLines||1)*this.lineHeight,e))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(n+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&n>this.$maxPixelHeight&&(n=this.$maxPixelHeight);var r=n<=2*this.lineHeight,i=!r&&e>t;if(n!=this.desiredHeight||this.$size.height!=this.desiredHeight||i!=this.$vScroll){i!=this.$vScroll&&(this.$vScroll=i,this.scrollBarV.setVisible(i));var s=this.container.clientWidth;this.container.style.height=n+"px",this.$updateCachedSize(!0,this.$gutterWidth,s,n),this.desiredHeight=n,this._signal("autosize")}},e.prototype.$updateContentTransformAndSize=function(e,t){var n=this.scrollMargin;if(this.session&&!this.session.getUseWrapMode()){var r=this.$getLongestRenderedLine();e.widthe&&(e=o)}return e},e.prototype.$computeLayerConfig=function(){var e=this.session,t=this.$size,n=t.height<=2*this.lineHeight,r=this.session.getScreenLength(),i=r*this.lineHeight,s=this.$getLongestLine(),o=!n&&(this.$hScrollBarAlwaysVisible||t.scrollerWidth-s-2*this.$padding<0),u=this.$horizScroll!==o;u&&(this.$horizScroll=o,this.scrollBarH.setVisible(o));var a=this.$vScroll;this.$maxLines&&this.lineHeight>1&&(this.$autosize(),n=t.height<=2*this.lineHeight);var f=t.scrollerHeight+this.lineHeight,l=!this.$maxLines&&this.$scrollPastEnd?(t.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;i+=l;var c=this.scrollMargin;this.session.setScrollTop(Math.max(-c.top,Math.min(this.scrollTop,i-t.scrollerHeight+c.bottom)));var h=!n&&(this.$vScrollBarAlwaysVisible||t.scrollerHeight-i+l<0||this.scrollTop>c.top),p=a!==h;p&&(this.$vScroll=h,this.scrollBarV.setVisible(h));var d=this.scrollTop%this.lineHeight,v=Math.ceil(f/this.lineHeight)-1,m=Math.max(0,Math.round((this.scrollTop-d)/this.lineHeight)),g=m+v,y,b,w=this.lineHeight;m=e.screenToDocumentRow(m,0);var E=e.getFoldLine(m);E&&(m=E.start.row),y=e.documentToScreenRow(m,0),b=e.getRowLength(m)*w,g=Math.min(e.screenToDocumentRow(g,0),e.getLength()-1),f=t.scrollerHeight+e.getRowLength(g)*w+b,d=this.scrollTop-y*w,d<0&&y>0&&(y=Math.max(0,y+Math.floor(d/w)),d=this.scrollTop-y*w);var S=0;if(this.layerConfig.width!=s||u)S=this.CHANGE_H_SCROLL;if(u||p)S|=this.$updateCachedSize(!0,this.gutterWidth,t.width,t.height),this._signal("scrollbarVisibilityChanged"),p&&(s=this.$getLongestLine());return this.layerConfig={width:s,padding:this.$padding,firstRow:m,firstRowScreen:y,lastRow:g,lineHeight:w,characterWidth:this.characterWidth,fontMetrics:this.$fontMetrics,minHeight:f,maxHeight:i,offset:d,gutterOffset:w?Math.max(0,Math.ceil((d+t.height-t.scrollerHeight)/w)):0,height:this.$size.scrollerHeight},this.$fontMetrics.config=this.layerConfig,this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(s-this.$padding),S},e.prototype.$updateLines=function(){if(!this.$changedLines)return;var e=this.$changedLines.firstRow,t=this.$changedLines.lastRow;this.$changedLines=null;var n=this.layerConfig;if(e>n.lastRow+1)return;if(tthis.$textLayer.MAX_LINE_LENGTH&&(e=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(e*this.characterWidth))},e.prototype.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},e.prototype.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},e.prototype.addGutterDecoration=function(e,t){this.$gutterLayer.addGutterDecoration(e,t)},e.prototype.removeGutterDecoration=function(e,t){this.$gutterLayer.removeGutterDecoration(e,t)},e.prototype.updateBreakpoints=function(e){this._rows=e,this.$loop.schedule(this.CHANGE_GUTTER)},e.prototype.setAnnotations=function(e){this.$gutterLayer.setAnnotations(e),this.$loop.schedule(this.CHANGE_GUTTER)},e.prototype.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},e.prototype.hideCursor=function(){this.$cursorLayer.hideCursor()},e.prototype.showCursor=function(){this.$cursorLayer.showCursor()},e.prototype.scrollSelectionIntoView=function(e,t,n){this.scrollCursorIntoView(e,n),this.scrollCursorIntoView(t,n)},e.prototype.scrollCursorIntoView=function(e,t,n){if(this.$size.scrollerHeight===0)return;var r=this.$cursorLayer.getPixelPosition(e),i=r.left,s=r.top,o=n&&n.top||0,u=n&&n.bottom||0;this.$scrollAnimation&&(this.$stopAnimation=!0);var a=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;a+o>s?(t&&a+o>s+this.lineHeight&&(s-=t*this.$size.scrollerHeight),s===0&&(s=-this.scrollMargin.top),this.session.setScrollTop(s)):a+this.$size.scrollerHeight-u=1-this.scrollMargin.top)return!0;if(t>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom)return!0;if(e<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left)return!0;if(e>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},e.prototype.pixelToScreenCoordinates=function(e,t){var n;if(this.$hasCssTransforms){n={top:this.margin.top,left:this.gutterWidth+this.margin.left};var r=this.$fontMetrics.transformCoordinates([e,t]);e=r[0],t=r[1]}else n=this.scroller.getBoundingClientRect();var i=e+this.scrollLeft-n.left-this.$padding,s=i/this.characterWidth,o=(t+this.scrollTop-n.top)/this.lineHeight,u=this.$blockCursor?Math.floor(s):Math.round(s);return u=this.$fontMetrics.$pixelToColumn(o,u,e,this.$blockCursor),{row:o,column:u,side:s-u>0?1:-1,offsetX:i}},e.prototype.screenToTextCoordinates=function(e,t){var n=this.pixelToScreenCoordinates(e,t);return this.session.screenToDocumentPosition(n.row,Math.max(n.column,0))},e.prototype.textToScreenCoordinates=function(e,t){var n=this.session.documentToScreenPosition(e,t),r=this.$padding+this.$fontMetrics.textWidth(n.row,n.column),i=n.row*this.lineHeight;if(this.$hasCssTransforms){var s=this.$fontMetrics.transformCoordinates(null,[this.gutterWidth+this.margin.left+r-this.scrollLeft,this.margin.top+i-this.scrollTop]);return{pageX:s[0],pageY:s[1]}}var o=this.scroller.getBoundingClientRect();return{pageX:o.left+r-this.scrollLeft,pageY:o.top+i-this.scrollTop}},e.prototype.visualizeFocus=function(){i.addCssClass(this.container,"ace_focus")},e.prototype.visualizeBlur=function(){i.removeCssClass(this.container,"ace_focus")},e.prototype.showComposition=function(e){this.$composition=e,e.cssText||(e.cssText=this.textarea.style.cssText),e.useTextareaForIME==undefined&&(e.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(i.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):e.markerId=this.session.addMarker(e.markerRange,"ace_composition_marker","text")},e.prototype.setCompositionText=function(e){var t=this.session.selection.cursor;this.addToken(e,"composition_placeholder",t.row,t.column),this.$moveTextAreaToCursor()},e.prototype.hideComposition=function(){if(!this.$composition)return;this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),i.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var e=this.session.selection.cursor;this.removeExtraToken(e.row,e.column),this.$composition=null,this.$cursorLayer.element.style.display=""},e.prototype.setGhostText=function(e,t){var n=this.session.selection.cursor,r=t||{row:n.row,column:n.column};this.removeGhostText();var s=this.$calculateWrappedTextChunks(e,r);this.addToken(s[0].text,"ghost_text",r.row,r.column),this.$ghostText={text:e,position:{row:r.row,column:r.column}};var o=i.createElement("div");if(s.length>1){var u=this.hideTokensAfterPosition(r.row,r.column),a;s.slice(1).forEach(function(e){var t=i.createElement("div"),n=i.createElement("span");n.className="ace_ghost_text",e.wrapped&&(t.className="ghost_text_line_wrapped"),e.text.length===0&&(e.text=" "),n.appendChild(i.createTextNode(e.text)),t.appendChild(n),o.appendChild(t),a=t}),u.forEach(function(e){var t=i.createElement("span");E(e.type)||(t.className="ace_"+e.type.replace(/\./g," ace_")),t.appendChild(i.createTextNode(e.value)),a.appendChild(t)}),this.$ghostTextWidget={el:o,row:r.row,column:r.column,className:"ace_ghost_text_container"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget);var f=this.$cursorLayer.getPixelPosition(r,!0),l=this.container,c=l.getBoundingClientRect().height,h=s.length*this.lineHeight,p=h0){var f=0;a.push(i[o].length);for(var l=0;l1||Math.abs(e.$size.height-r)>1?e.$resizeTimer.delay():e.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)},e}();S.prototype.CHANGE_CURSOR=1,S.prototype.CHANGE_MARKER=2,S.prototype.CHANGE_GUTTER=4,S.prototype.CHANGE_SCROLL=8,S.prototype.CHANGE_LINES=16,S.prototype.CHANGE_TEXT=32,S.prototype.CHANGE_SIZE=64,S.prototype.CHANGE_MARKER_BACK=128,S.prototype.CHANGE_MARKER_FRONT=256,S.prototype.CHANGE_FULL=512,S.prototype.CHANGE_H_SCROLL=1024,S.prototype.$changes=0,S.prototype.$padding=null,S.prototype.$frozen=!1,S.prototype.STEPS=8,r.implement(S.prototype,g),o.defineOptions(S.prototype,"renderer",{useResizeObserver:{set:function(e){!e&&this.$resizeObserver?(this.$resizeObserver.disconnect(),this.$resizeTimer.cancel(),this.$resizeTimer=this.$resizeObserver=null):e&&!this.$resizeObserver&&this.$addResizeObserver()}},animatedScroll:{initialValue:!1},showInvisibles:{set:function(e){this.$textLayer.setShowInvisibles(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(e){typeof e=="number"&&(this.$printMarginColumn=e),this.$showPrintMargin=!!e,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(e){this.$gutter.style.display=e?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},useSvgGutterIcons:{set:function(e){this.$gutterLayer.$useSvgGutterIcons=e},initialValue:!1},showFoldedAnnotations:{set:function(e){this.$gutterLayer.$showFoldedAnnotations=e},initialValue:!1},fadeFoldWidgets:{set:function(e){i.setCssClass(this.$gutter,"ace_fade-fold-widgets",e)},initialValue:!1},showFoldWidgets:{set:function(e){this.$gutterLayer.setShowFoldWidgets(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(e){this.$textLayer.setDisplayIndentGuides(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightIndentGuides:{set:function(e){this.$textLayer.setHighlightIndentGuides(e)==1?this.$textLayer.$highlightIndentGuide():this.$textLayer.$clearActiveIndentGuide(this.$textLayer.$lines.cells)},initialValue:!0},highlightGutterLine:{set:function(e){this.$gutterLayer.setHighlightGutterLine(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(e){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(e){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(e){typeof e=="number"&&(e+="px"),this.container.style.fontSize=e,this.updateFontSize()},initialValue:12},fontFamily:{set:function(e){this.container.style.fontFamily=e,this.updateFontSize()}},maxLines:{set:function(e){this.updateFull()}},minLines:{set:function(e){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(e){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(e){e=+e||0;if(this.$scrollPastEnd==e)return;this.$scrollPastEnd=e,this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(e){this.$gutterLayer.$fixedWidth=!!e,this.$loop.schedule(this.CHANGE_GUTTER)}},customScrollbar:{set:function(e){this.$updateCustomScrollbar(e)},initialValue:!1},theme:{set:function(e){this.setTheme(e)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!w.isMobile&&!w.isIE}}),t.VirtualRenderer=S}),define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(e,t,n){"use strict";function u(e){var t="importScripts('"+i.qualifyURL(e)+"');";try{return new Blob([t],{type:"application/javascript"})}catch(n){var r=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,s=new r;return s.append(t),s.getBlob("application/javascript")}}function a(e){if(typeof Worker=="undefined")return{postMessage:function(){},terminate:function(){}};if(o.get("loadWorkerFromBlob")){var t=u(e),n=window.URL||window.webkitURL,r=n.createObjectURL(t);return new Worker(r)}return new Worker(e)}var r=e("../lib/oop"),i=e("../lib/net"),s=e("../lib/event_emitter").EventEmitter,o=e("../config"),f=function(e){e.postMessage||(e=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=e,this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){r.implement(this,s),this.$createWorkerFromOldConfig=function(t,n,r,i,s){e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl);if(o.get("packaged")||!e.toUrl)i=i||o.moduleUrl(n,"worker");else{var u=this.$normalizePath;i=i||u(e.toUrl("ace/worker/worker.js",null,"_"));var f={};t.forEach(function(t){f[t]=u(e.toUrl(t,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=a(i),s&&this.send("importScripts",s),this.$worker.postMessage({init:!0,tlns:f,module:n,classname:r}),this.$worker},this.onMessage=function(e){var t=e.data;switch(t.type){case"event":this._signal(t.name,{data:t.data});break;case"call":var n=this.callbacks[t.id];n&&(n(t.data),delete this.callbacks[t.id]);break;case"error":this.reportError(t.data);break;case"log":window.console&&console.log&&console.log.apply(console,t.data)}},this.reportError=function(e){window.console&&console.error&&console.error(e)},this.$normalizePath=function(e){return i.qualifyURL(e)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker.onerror=function(e){e.preventDefault()},this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(e,t){this.$worker.postMessage({command:e,args:t})},this.call=function(e,t,n){if(n){var r=this.callbackId++;this.callbacks[r]=n,t.push(r)}this.send(e,t)},this.emit=function(e,t){try{t.data&&t.data.err&&(t.data.err={message:t.data.err.message,stack:t.data.err.stack,code:t.data.err.code}),this.$worker&&this.$worker.postMessage({event:e,data:{data:t.data}})}catch(n){console.error(n.stack)}},this.attachToDocument=function(e){this.$doc&&this.terminate(),this.$doc=e,this.call("setValue",[e.getValue()]),e.on("change",this.changeListener,!0)},this.changeListener=function(e){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),e.action=="insert"?this.deltaQueue.push(e.start,e.lines):this.deltaQueue.push(e.start,e.end)},this.$sendDeltaQueue=function(){var e=this.deltaQueue;if(!e)return;this.deltaQueue=null,e.length>50&&e.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:e})}}).call(f.prototype);var l=function(e,t,n){var r=null,i=!1,u=Object.create(s),a=[],l=new f({messageBuffer:a,terminate:function(){},postMessage:function(e){a.push(e);if(!r)return;i?setTimeout(c):c()}});l.setEmitSync=function(e){i=e};var c=function(){var e=a.shift();e.command?r[e.command].apply(r,e.args):e.event&&u._signal(e.event,e.data)};return u.postMessage=function(e){l.onMessage({data:e})},u.callback=function(e,t){this.postMessage({type:"call",id:t,data:e})},u.emit=function(e,t){this.postMessage({type:"event",name:e,data:t})},o.loadModule(["worker",t],function(e){r=new e[n](u);while(a.length)c()}),l};t.UIWorkerClient=l,t.WorkerClient=f,t.createWorker=a}),define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,t,n){"use strict";var r=e("./range").Range,i=e("./lib/event_emitter").EventEmitter,s=e("./lib/oop"),o=function(){function e(e,t,n,r,i,s){var o=this;this.length=t,this.session=e,this.doc=e.getDocument(),this.mainClass=i,this.othersClass=s,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate,!0),this.$others=r,this.$onCursorChange=function(){setTimeout(function(){o.onCursorChange()})},this.$pos=n;var u=e.getUndoManager().$undoStack||e.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=u.length,this.setup(),e.selection.on("changeCursor",this.$onCursorChange)}return e.prototype.setup=function(){var e=this,t=this.doc,n=this.session;this.selectionBefore=n.selection.toJSON(),n.selection.inMultiSelectMode&&n.selection.toSingleRange(),this.pos=t.createAnchor(this.$pos.row,this.$pos.column);var i=this.pos;i.$insertRight=!0,i.detach(),i.markerId=n.addMarker(new r(i.row,i.column,i.row,i.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(n){var r=t.createAnchor(n.row,n.column);r.$insertRight=!0,r.detach(),e.others.push(r)}),n.setUndoSelect(!1)},e.prototype.showOtherMarkers=function(){if(this.othersActive)return;var e=this.session,t=this;this.othersActive=!0,this.others.forEach(function(n){n.markerId=e.addMarker(new r(n.row,n.column,n.row,n.column+t.length),t.othersClass,null,!1)})},e.prototype.hideOtherMarkers=function(){if(!this.othersActive)return;this.othersActive=!1;for(var e=0;e=this.pos.column&&t.start.column<=this.pos.column+this.length+1,s=t.start.column-this.pos.column;this.updateAnchors(e),i&&(this.length+=n);if(i&&!this.session.$fromUndo)if(e.action==="insert")for(var o=this.others.length-1;o>=0;o--){var u=this.others[o],a={row:u.row,column:u.column+s};this.doc.insertMergedLines(a,e.lines)}else if(e.action==="remove")for(var o=this.others.length-1;o>=0;o--){var u=this.others[o],a={row:u.row,column:u.column+s};this.doc.remove(new r(a.row,a.column,a.row,a.column-n))}this.$updating=!1,this.updateMarkers()},e.prototype.updateAnchors=function(e){this.pos.onChange(e);for(var t=this.others.length;t--;)this.others[t].onChange(e);this.updateMarkers()},e.prototype.updateMarkers=function(){if(this.$updating)return;var e=this,t=this.session,n=function(n,i){t.removeMarker(n.markerId),n.markerId=t.addMarker(new r(n.row,n.column,n.row,n.column+e.length),i,null,!1)};n(this.pos,this.mainClass);for(var i=this.others.length;i--;)n(this.others[i],this.othersClass)},e.prototype.onCursorChange=function(e){if(this.$updating||!this.session)return;var t=this.session.selection.getCursor();t.row===this.pos.row&&t.column>=this.pos.column&&t.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",e)):(this.hideOtherMarkers(),this._emit("cursorLeave",e))},e.prototype.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.off("change",this.$onUpdate),this.session.selection.off("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},e.prototype.cancel=function(){if(this.$undoStackDepth===-1)return;var e=this.session.getUndoManager(),t=(e.$undoStack||e.$undostack).length-this.$undoStackDepth;for(var n=0;n1?e.multiSelect.joinSelections():e.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(e){e.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(e){e.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(e){e.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],t.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(e){e.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(e){return e&&e.inMultiSelectMode}}];var r=e("../keyboard/hash_handler").HashHandler;t.keyboardHandler=new r(t.multiSelectCommands)}),define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(e,t,n){function h(e,t,n){return c.$options.wrap=!0,c.$options.needle=t,c.$options.backwards=n==-1,c.find(e)}function v(e,t){return e.row==t.row&&e.column==t.column}function m(e){if(e.$multiselectOnSessionChange)return;e.$onAddRange=e.$onAddRange.bind(e),e.$onRemoveRange=e.$onRemoveRange.bind(e),e.$onMultiSelect=e.$onMultiSelect.bind(e),e.$onSingleSelect=e.$onSingleSelect.bind(e),e.$multiselectOnSessionChange=t.onSessionChange.bind(e),e.$checkMultiselectChange=e.$checkMultiselectChange.bind(e),e.$multiselectOnSessionChange(e),e.on("changeSession",e.$multiselectOnSessionChange),e.on("mousedown",o),e.commands.addCommands(f.defaultCommands),g(e)}function g(e){function r(t){n&&(e.renderer.setMouseCursor(""),n=!1)}if(!e.textInput)return;var t=e.textInput.getElement(),n=!1;u.addListener(t,"keydown",function(t){var i=t.keyCode==18&&!(t.ctrlKey||t.shiftKey||t.metaKey);e.$blockSelectEnabled&&i?n||(e.renderer.setMouseCursor("crosshair"),n=!0):n&&r()},e),u.addListener(t,"keyup",r,e),u.addListener(t,"blur",r,e)}var r=e("./range_list").RangeList,i=e("./range").Range,s=e("./selection").Selection,o=e("./mouse/multi_select_handler").onMouseDown,u=e("./lib/event"),a=e("./lib/lang"),f=e("./commands/multi_select_commands");t.commands=f.defaultCommands.concat(f.multiSelectCommands);var l=e("./search").Search,c=new l,p=e("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(p.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(e,t){if(!e)return;if(!this.inMultiSelectMode&&this.rangeCount===0){var n=this.toOrientedRange();this.rangeList.add(n),this.rangeList.add(e);if(this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),t||this.fromOrientedRange(e);this.rangeList.removeAll(),this.rangeList.add(n),this.$onAddRange(n)}e.cursor||(e.cursor=e.end);var r=this.rangeList.add(e);return this.$onAddRange(e),r.length&&this.$onRemoveRange(r),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),t||this.fromOrientedRange(e)},this.toSingleRange=function(e){e=e||this.ranges[0];var t=this.rangeList.removeAll();t.length&&this.$onRemoveRange(t),e&&this.fromOrientedRange(e)},this.substractPoint=function(e){var t=this.rangeList.substractPoint(e);if(t)return this.$onRemoveRange(t),t[0]},this.mergeOverlappingRanges=function(){var e=this.rangeList.merge();e.length&&this.$onRemoveRange(e)},this.$onAddRange=function(e){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(e),this._signal("addRange",{range:e})},this.$onRemoveRange=function(e){this.rangeCount=this.rangeList.ranges.length;if(this.rangeCount==1&&this.inMultiSelectMode){var t=this.rangeList.ranges.pop();e.push(t),this.rangeCount=0}for(var n=e.length;n--;){var r=this.ranges.indexOf(e[n]);r!=-1&&this.ranges.splice(r,1)}this._signal("removeRange",{ranges:e}),this.rangeCount===0&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),t=t||this.ranges[0],t&&!t.isEqual(this.getRange())&&this.fromOrientedRange(t)},this.$initRangeList=function(){if(this.rangeList)return;this.rangeList=new r,this.ranges=[],this.rangeCount=0},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){var e=this.ranges.length?this.ranges:[this.getRange()],t=[];for(var n=0;n1){var e=this.rangeList.ranges,t=e[e.length-1],n=i.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(n,t.cursor==t.start)}else{var r=this.session.documentToScreenPosition(this.cursor),s=this.session.documentToScreenPosition(this.anchor),o=this.rectangularRangeBlock(r,s);o.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(e,t,n){var r=[],s=e.column0)d--;if(d>0){var m=0;while(r[m].isEmpty())m++}for(var g=d;g>=m;g--)r[g].isEmpty()&&r.splice(g,1)}return r}}.call(s.prototype);var d=e("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(e){e.cursor||(e.cursor=e.end);var t=this.getSelectionStyle();return e.marker=this.session.addMarker(e,"ace_selection",t),this.session.$selectionMarkers.push(e),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,e},this.removeSelectionMarker=function(e){if(!e.marker)return;this.session.removeMarker(e.marker);var t=this.session.$selectionMarkers.indexOf(e);t!=-1&&this.session.$selectionMarkers.splice(t,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length},this.removeSelectionMarkers=function(e){var t=this.session.$selectionMarkers;for(var n=e.length;n--;){var r=e[n];if(!r.marker)continue;this.session.removeMarker(r.marker);var i=t.indexOf(r);i!=-1&&t.splice(i,1)}this.session.selectionMarkerCount=t.length},this.$onAddRange=function(e){this.addSelectionMarker(e.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(e){this.removeSelectionMarkers(e.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(e){if(this.inMultiSelectMode)return;this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(f.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onSingleSelect=function(e){if(this.session.multiSelect.inVirtualMode)return;this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(f.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection")},this.$onMultiSelectExec=function(e){var t=e.command,n=e.editor;if(!n.multiSelect)return;if(!t.multiSelectAction){var r=t.exec(n,e.args||{});n.multiSelect.addRange(n.multiSelect.toOrientedRange()),n.multiSelect.mergeOverlappingRanges()}else t.multiSelectAction=="forEach"?r=n.forEachSelection(t,e.args):t.multiSelectAction=="forEachLine"?r=n.forEachSelection(t,e.args,!0):t.multiSelectAction=="single"?(n.exitMultiSelectMode(),r=t.exec(n,e.args||{})):r=t.multiSelectAction(n,e.args||{});return r},this.forEachSelection=function(e,t,n){if(this.inVirtualSelectionMode)return;var r=n&&n.keepOrder,i=n==1||n&&n.$byLines,o=this.session,u=this.selection,a=u.rangeList,f=(r?u:a).ranges,l;if(!f.length)return e.exec?e.exec(this,t||{}):e(this,t||{});var c=u._eventRegistry;u._eventRegistry={};var h=new s(o);this.inVirtualSelectionMode=!0;try{for(var p=f.length;p--;){if(i)while(p>0&&f[p].start.row==f[p-1].end.row)p--;h.fromOrientedRange(f[p]),h.index=p,this.selection=o.selection=h;var d=e.exec?e.exec(this,t||{}):e(this,t||{});!l&&d!==undefined&&(l=d),h.toOrientedRange(f[p])}h.detach()}finally{this.selection=o.selection=u,this.inVirtualSelectionMode=!1,u._eventRegistry=c,u.mergeOverlappingRanges(),u.ranges[0]&&u.fromOrientedRange(u.ranges[0]);var v=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),v&&v.from==v.to&&this.renderer.animateScrolling(v.from),l}},this.exitMultiSelectMode=function(){if(!this.inMultiSelectMode||this.inVirtualSelectionMode)return;this.multiSelect.toSingleRange()},this.getSelectedText=function(){var e="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var t=this.multiSelect.rangeList.ranges,n=[];for(var r=0;r0);u<0&&(u=0),f>=c&&(f=c-1)}var p=this.session.removeFullLines(u,f);p=this.$reAlignText(p,l),this.session.insert({row:u,column:0},p.join("\n")+"\n"),l||(o.start.column=0,o.end.column=p[p.length-1].length),this.selection.setRange(o)}else{s.forEach(function(e){t.substractPoint(e.cursor)});var d=0,v=Infinity,m=n.map(function(t){var n=t.cursor,r=e.getLine(n.row),i=r.substr(n.column).search(/\S/g);return i==-1&&(i=0),n.column>d&&(d=n.column),io?e.insert(r,a.stringRepeat(" ",s-o)):e.remove(new i(r.row,r.column,r.row,r.column-s+o)),t.start.column=t.end.column=d,t.start.row=t.end.row=r.row,t.cursor=t.end}),t.fromOrientedRange(n[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(e,t){function u(e){return a.stringRepeat(" ",e)}function f(e){return e[2]?u(i)+e[2]+u(s-e[2].length+o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function l(e){return e[2]?u(i+s-e[2].length)+e[2]+u(o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function c(e){return e[2]?u(i)+e[2]+u(o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}var n=!0,r=!0,i,s,o;return e.map(function(e){var t=e.match(/(\s*)(.*?)(\s*)([=:].*)/);return t?i==null?(i=t[1].length,s=t[2].length,o=t[3].length,t):(i+s+o!=t[1].length+t[2].length+t[3].length&&(r=!1),i!=t[1].length&&(n=!1),i>t[1].length&&(i=t[1].length),st[3].length&&(o=t[3].length),t):[e]}).map(t?f:n?r?l:f:c)}}).call(d.prototype),t.onSessionChange=function(e){var t=e.session;t&&!t.multiSelect&&(t.$selectionMarkers=[],t.selection.$initRangeList(),t.multiSelect=t.selection),this.multiSelect=t&&t.multiSelect;var n=e.oldSession;n&&(n.multiSelect.off("addRange",this.$onAddRange),n.multiSelect.off("removeRange",this.$onRemoveRange),n.multiSelect.off("multiSelect",this.$onMultiSelect),n.multiSelect.off("singleSelect",this.$onSingleSelect),n.multiSelect.lead.off("change",this.$checkMultiselectChange),n.multiSelect.anchor.off("change",this.$checkMultiselectChange)),t&&(t.multiSelect.on("addRange",this.$onAddRange),t.multiSelect.on("removeRange",this.$onRemoveRange),t.multiSelect.on("multiSelect",this.$onMultiSelect),t.multiSelect.on("singleSelect",this.$onSingleSelect),t.multiSelect.lead.on("change",this.$checkMultiselectChange),t.multiSelect.anchor.on("change",this.$checkMultiselectChange)),t&&this.inMultiSelectMode!=t.selection.inMultiSelectMode&&(t.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},t.MultiSelect=m,e("./config").defineOptions(d.prototype,"editor",{enableMultiselect:{set:function(e){m(this),e?this.on("mousedown",o):this.off("mousedown",o)},value:!0},enableBlockSelect:{set:function(e){this.$blockSelectEnabled=e},value:!0}})}),define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../../range").Range,i=t.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);return this.foldingStartMarker.test(r)?"start":t=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(r)?"end":""},this.getFoldWidgetRange=function(e,t,n){return null},this.indentationBlock=function(e,t,n){var i=/\S/,s=e.getLine(t),o=s.search(i);if(o==-1)return;var u=n||s.length,a=e.getLength(),f=t,l=t;while(++tf){var p=e.getLine(l).length;return new r(f,u,l,p)}},this.openingBracketBlock=function(e,t,n,i,s){var o={row:n,column:i+1},u=e.$findClosingBracket(t,o,s);if(!u)return;var a=e.foldWidgets[u.row];return a==null&&(a=e.getFoldWidget(u.row)),a=="start"&&u.row>o.row&&(u.row--,u.column=e.getLine(u.row).length),r.fromPoints(o,u)},this.closingBracketBlock=function(e,t,n,i,s){var o={row:n,column:i},u=e.$findOpeningBracket(t,o);if(!u)return;return u.column++,o.column--,r.fromPoints(u,o)}}).call(i.prototype)}),define("ace/ext/error_marker",["require","exports","module","ace/lib/dom","ace/range","ace/config"],function(e,t,n){"use strict";function o(e,t,n){var r=0,i=e.length-1;while(r<=i){var s=r+i>>1,o=n(t,e[s]);if(o>0)r=s+1;else{if(!(o<0))return s;i=s-1}}return-(r+1)}function u(e,t,n){var r=e.getAnnotations().sort(i.comparePoints);if(!r.length)return;var s=o(r,{row:t,column:-1},i.comparePoints);s<0&&(s=-s-1),s>=r.length?s=n>0?0:r.length-1:s===0&&n<0&&(s=r.length-1);var u=r[s];if(!u||!n)return;if(u.row===t){do u=r[s+=n];while(u&&u.row===t);if(!u)return r.slice()}var a=[];t=u.row;do a[n<0?"unshift":"push"](u),u=r[s+=n];while(u&&u.row==t);return a.length&&a}var r=e("../lib/dom"),i=e("../range").Range,s=e("../config").nls;t.showErrorMarker=function(e,t){var n=e.session,i=e.getCursorPosition(),o=i.row,a=n.widgetManager.getWidgetsAtRow(o).filter(function(e){return e.type=="errorMarker"})[0];a?a.destroy():o-=t;var f=u(n,o,t),l;if(f){var c=f[0];i.column=(c.pos&&typeof c.column!="number"?c.pos.sc:c.column)||0,i.row=c.row,l=e.renderer.$gutterLayer.$annotations[i.row]}else{if(a)return;l={displayText:[s("error-marker.good-state","Looks good!")],className:"ace_ok"}}e.session.unfold(i.row),e.selection.moveToPosition(i);var h={row:i.row,fixedWidth:!0,coverGutter:!0,el:r.createElement("div"),type:"errorMarker"},p=h.el.appendChild(r.createElement("div")),d=h.el.appendChild(r.createElement("div"));d.className="error_widget_arrow "+l.className;var v=e.renderer.$cursorLayer.getPixelPosition(i).left;d.style.left=v+e.renderer.gutterWidth-5+"px",h.el.className="error_widget_wrapper",p.className="error_widget "+l.className,l.displayText.forEach(function(e,t){p.appendChild(r.createTextNode(e)),t{let t=0;return()=>t++})();function s(t){return null==t}function n(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function o(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){return("number"==typeof t||t instanceof Number)&&isFinite(+t)}function r(t,e){return a(t)?t:e}function l(t,e){return void 0===t?e:t}const h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:+t/e,c=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function d(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function u(t,e,i,s){let a,r,l;if(n(t))if(r=t.length,s)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;at,x:t=>t.x,y:t=>t.y};function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function M(t,e){const i=y[e]||(y[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,S=t=>"function"==typeof t,P=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function D(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const C=Math.PI,O=2*C,A=O+C,T=Number.POSITIVE_INFINITY,L=C/180,E=C/2,R=C/4,I=2*C/3,z=Math.log10,F=Math.sign;function V(t,e,i){return Math.abs(t-e)t-e)).pop(),e}function N(t){return!function(t){return"symbol"==typeof t||"object"==typeof t&&null!==t&&!(Symbol.toPrimitive in t||"toString"in t||"valueOf"in t)}(t)&&!isNaN(parseFloat(t))&&isFinite(t)}function H(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;sl&&h=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function et(t,e,i){i=i||(i=>t[i]1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const it=(t,e,i,s)=>et(t,i,s?s=>{const n=t[s][e];return nt[s][e]et(t,i,(s=>t[s][e]>=i));function nt(t,e,i){let s=0,n=t.length;for(;ss&&t[n-1]>i;)n--;return s>0||n{const i="_onData"+w(e),s=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...e){const n=s.apply(this,e);return t._chartjs.listeners.forEach((t=>{"function"==typeof t[i]&&t[i](...e)})),n}})})))}function rt(t,e){const i=t._chartjs;if(!i)return;const s=i.listeners,n=s.indexOf(e);-1!==n&&s.splice(n,1),s.length>0||(ot.forEach((e=>{delete t[e]})),delete t._chartjs)}function lt(t){const e=new Set(t);return e.size===t.length?t:Array.from(e)}const ht="undefined"==typeof window?function(t){return t()}:window.requestAnimationFrame;function ct(t,e){let i=[],s=!1;return function(...n){i=n,s||(s=!0,ht.call(window,(()=>{s=!1,t.apply(e,i)})))}}function dt(t,e){let i;return function(...s){return e?(clearTimeout(i),i=setTimeout(t,e,s)):t.apply(this,s),e}}const ut=t=>"start"===t?"left":"end"===t?"right":"center",ft=(t,e,i)=>"start"===t?e:"end"===t?i:(e+i)/2,gt=(t,e,i,s)=>t===(s?"left":"right")?i:"center"===t?(e+i)/2:e;function pt(t,e,i){const n=e.length;let o=0,a=n;if(t._sorted){const{iScale:r,vScale:l,_parsed:h}=t,c=t.dataset&&t.dataset.options?t.dataset.options.spanGaps:null,d=r.axis,{min:u,max:f,minDefined:g,maxDefined:p}=r.getUserBounds();if(g){if(o=Math.min(it(h,d,u).lo,i?n:it(e,d,r.getPixelForValue(u)).lo),c){const t=h.slice(0,o+1).reverse().findIndex((t=>!s(t[l.axis])));o-=Math.max(0,t)}o=Z(o,0,n-1)}if(p){let t=Math.max(it(h,r.axis,f,!0).hi+1,i?0:it(e,d,r.getPixelForValue(f),!0).hi+1);if(c){const e=h.slice(t-1).findIndex((t=>!s(t[l.axis])));t+=Math.max(0,e)}a=Z(t,o,n)-o}else a=n-o}return{start:o,count:a}}function mt(t){const{xScale:e,yScale:i,_scaleRanges:s}=t,n={xmin:e.min,xmax:e.max,ymin:i.min,ymax:i.max};if(!s)return t._scaleRanges=n,!0;const o=s.xmin!==e.min||s.xmax!==e.max||s.ymin!==i.min||s.ymax!==i.max;return Object.assign(s,n),o}class xt{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,e,i,s){const n=e.listeners[s],o=e.duration;n.forEach((s=>s({chart:t,initial:e.initial,numSteps:o,currentStep:Math.min(i-e.start,o)})))}_refresh(){this._request||(this._running=!0,this._request=ht.call(window,(()=>{this._update(),this._request=null,this._running&&this._refresh()})))}_update(t=Date.now()){let e=0;this._charts.forEach(((i,s)=>{if(!i.running||!i.items.length)return;const n=i.items;let o,a=n.length-1,r=!1;for(;a>=0;--a)o=n[a],o._active?(o._total>i.duration&&(i.duration=o._total),o.tick(t),r=!0):(n[a]=n[n.length-1],n.pop());r&&(s.draw(),this._notify(s,i,t,"progress")),n.length||(i.running=!1,this._notify(s,i,t,"complete"),i.initial=!1),e+=n.length})),this._lastDate=t,0===e&&(this._running=!1)}_getAnims(t){const e=this._charts;let i=e.get(t);return i||(i={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,i)),i}listen(t,e,i){this._getAnims(t).listeners[e].push(i)}add(t,e){e&&e.length&&this._getAnims(t).items.push(...e)}has(t){return this._getAnims(t).items.length>0}start(t){const e=this._charts.get(t);e&&(e.running=!0,e.start=Date.now(),e.duration=e.items.reduce(((t,e)=>Math.max(t,e._duration)),0),this._refresh())}running(t){if(!this._running)return!1;const e=this._charts.get(t);return!!(e&&e.running&&e.items.length)}stop(t){const e=this._charts.get(t);if(!e||!e.items.length)return;const i=e.items;let s=i.length-1;for(;s>=0;--s)i[s].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var bt=new xt; +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Chart=e()}(this,(function(){"use strict";var t=Object.freeze({__proto__:null,get Colors(){return Jo},get Decimation(){return ta},get Filler(){return ba},get Legend(){return Ma},get SubTitle(){return Pa},get Title(){return ka},get Tooltip(){return Wa}});function e(){}const i=(()=>{let t=0;return()=>t++})();function s(t){return null==t}function n(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function o(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){return("number"==typeof t||t instanceof Number)&&isFinite(+t)}function r(t,e){return a(t)?t:e}function l(t,e){return void 0===t?e:t}const h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:+t/e,c=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function d(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function u(t,e,i,s){let a,r,l;if(n(t))if(r=t.length,s)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;at,x:t=>t.x,y:t=>t.y};function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function M(t,e){const i=y[e]||(y[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,S=t=>"function"==typeof t,P=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function D(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const C=Math.PI,O=2*C,A=O+C,T=Number.POSITIVE_INFINITY,L=C/180,E=C/2,R=C/4,I=2*C/3,z=Math.log10,F=Math.sign;function V(t,e,i){return Math.abs(t-e)t-e)).pop(),e}function W(t){return!function(t){return"symbol"==typeof t||"object"==typeof t&&null!==t&&!(Symbol.toPrimitive in t||"toString"in t||"valueOf"in t)}(t)&&!isNaN(parseFloat(t))&&isFinite(t)}function H(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;sl&&h=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function et(t,e,i){i=i||(i=>t[i]1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const it=(t,e,i,s)=>et(t,i,s?s=>{const n=t[s][e];return nt[s][e]et(t,i,(s=>t[s][e]>=i));function nt(t,e,i){let s=0,n=t.length;for(;ss&&t[n-1]>i;)n--;return s>0||n{const i="_onData"+w(e),s=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...e){const n=s.apply(this,e);return t._chartjs.listeners.forEach((t=>{"function"==typeof t[i]&&t[i](...e)})),n}})})))}function rt(t,e){const i=t._chartjs;if(!i)return;const s=i.listeners,n=s.indexOf(e);-1!==n&&s.splice(n,1),s.length>0||(ot.forEach((e=>{delete t[e]})),delete t._chartjs)}function lt(t){const e=new Set(t);return e.size===t.length?t:Array.from(e)}const ht="undefined"==typeof window?function(t){return t()}:window.requestAnimationFrame;function ct(t,e){let i=[],s=!1;return function(...n){i=n,s||(s=!0,ht.call(window,(()=>{s=!1,t.apply(e,i)})))}}function dt(t,e){let i;return function(...s){return e?(clearTimeout(i),i=setTimeout(t,e,s)):t.apply(this,s),e}}const ut=t=>"start"===t?"left":"end"===t?"right":"center",ft=(t,e,i)=>"start"===t?e:"end"===t?i:(e+i)/2,gt=(t,e,i,s)=>t===(s?"left":"right")?i:"center"===t?(e+i)/2:e;function pt(t,e,i){const n=e.length;let o=0,a=n;if(t._sorted){const{iScale:r,vScale:l,_parsed:h}=t,c=t.dataset&&t.dataset.options?t.dataset.options.spanGaps:null,d=r.axis,{min:u,max:f,minDefined:g,maxDefined:p}=r.getUserBounds();if(g){if(o=Math.min(it(h,d,u).lo,i?n:it(e,d,r.getPixelForValue(u)).lo),c){const t=h.slice(0,o+1).reverse().findIndex((t=>!s(t[l.axis])));o-=Math.max(0,t)}o=Z(o,0,n-1)}if(p){let t=Math.max(it(h,r.axis,f,!0).hi+1,i?0:it(e,d,r.getPixelForValue(f),!0).hi+1);if(c){const e=h.slice(t-1).findIndex((t=>!s(t[l.axis])));t+=Math.max(0,e)}a=Z(t,o,n)-o}else a=n-o}return{start:o,count:a}}function mt(t){const{xScale:e,yScale:i,_scaleRanges:s}=t,n={xmin:e.min,xmax:e.max,ymin:i.min,ymax:i.max};if(!s)return t._scaleRanges=n,!0;const o=s.xmin!==e.min||s.xmax!==e.max||s.ymin!==i.min||s.ymax!==i.max;return Object.assign(s,n),o}class xt{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,e,i,s){const n=e.listeners[s],o=e.duration;n.forEach((s=>s({chart:t,initial:e.initial,numSteps:o,currentStep:Math.min(i-e.start,o)})))}_refresh(){this._request||(this._running=!0,this._request=ht.call(window,(()=>{this._update(),this._request=null,this._running&&this._refresh()})))}_update(t=Date.now()){let e=0;this._charts.forEach(((i,s)=>{if(!i.running||!i.items.length)return;const n=i.items;let o,a=n.length-1,r=!1;for(;a>=0;--a)o=n[a],o._active?(o._total>i.duration&&(i.duration=o._total),o.tick(t),r=!0):(n[a]=n[n.length-1],n.pop());r&&(s.draw(),this._notify(s,i,t,"progress")),n.length||(i.running=!1,this._notify(s,i,t,"complete"),i.initial=!1),e+=n.length})),this._lastDate=t,0===e&&(this._running=!1)}_getAnims(t){const e=this._charts;let i=e.get(t);return i||(i={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,i)),i}listen(t,e,i){this._getAnims(t).listeners[e].push(i)}add(t,e){e&&e.length&&this._getAnims(t).items.push(...e)}has(t){return this._getAnims(t).items.length>0}start(t){const e=this._charts.get(t);e&&(e.running=!0,e.start=Date.now(),e.duration=e.items.reduce(((t,e)=>Math.max(t,e._duration)),0),this._refresh())}running(t){if(!this._running)return!1;const e=this._charts.get(t);return!!(e&&e.running&&e.items.length)}stop(t){const e=this._charts.get(t);if(!e||!e.items.length)return;const i=e.items;let s=i.length-1;for(;s>=0;--s)i[s].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var bt=new xt; /*! * @kurkle/color v0.3.2 * https://github.com/kurkle/color#readme * (c) 2023 Jukka Kurkela * Released under the MIT License - */function _t(t){return t+.5|0}const yt=(t,e,i)=>Math.max(Math.min(t,i),e);function vt(t){return yt(_t(2.55*t),0,255)}function Mt(t){return yt(_t(255*t),0,255)}function wt(t){return yt(_t(t/2.55)/100,0,1)}function kt(t){return yt(_t(100*t),0,100)}const St={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Pt=[..."0123456789ABCDEF"],Dt=t=>Pt[15&t],Ct=t=>Pt[(240&t)>>4]+Pt[15&t],Ot=t=>(240&t)>>4==(15&t);function At(t){var e=(t=>Ot(t.r)&&Ot(t.g)&&Ot(t.b)&&Ot(t.a))(t)?Dt:Ct;return t?"#"+e(t.r)+e(t.g)+e(t.b)+((t,e)=>t<255?e(t):"")(t.a,e):void 0}const Tt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Lt(t,e,i){const s=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function Et(t,e,i){const s=(s,n=(s+t/60)%6)=>i-i*e*Math.max(Math.min(n,4-n,1),0);return[s(5),s(3),s(1)]}function Rt(t,e,i){const s=Lt(t,1,.5);let n;for(e+i>1&&(n=1/(e+i),e*=n,i*=n),n=0;n<3;n++)s[n]*=1-e-i,s[n]+=e;return s}function It(t){const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),o=Math.min(e,i,s),a=(n+o)/2;let r,l,h;return n!==o&&(h=n-o,l=a>.5?h/(2-n-o):h/(n+o),r=function(t,e,i,s,n){return t===n?(e-i)/s+(e>16&255,o>>8&255,255&o]}return t}(),Ht.transparent=[0,0,0,0]);const e=Ht[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}const $t=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const Yt=t=>t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Ut=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Xt(t,e,i){if(t){let s=It(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*i,0===e?360:1)),s=Ft(s),t.r=s[0],t.g=s[1],t.b=s[2]}}function qt(t,e){return t?Object.assign(e||{},t):t}function Kt(t){var e={r:0,g:0,b:0,a:255};return Array.isArray(t)?t.length>=3&&(e={r:t[0],g:t[1],b:t[2],a:255},t.length>3&&(e.a=Mt(t[3]))):(e=qt(t,{r:0,g:0,b:0,a:1})).a=Mt(e.a),e}function Gt(t){return"r"===t.charAt(0)?function(t){const e=$t.exec(t);let i,s,n,o=255;if(e){if(e[7]!==i){const t=+e[7];o=e[8]?vt(t):yt(255*t,0,255)}return i=+e[1],s=+e[3],n=+e[5],i=255&(e[2]?vt(i):yt(i,0,255)),s=255&(e[4]?vt(s):yt(s,0,255)),n=255&(e[6]?vt(n):yt(n,0,255)),{r:i,g:s,b:n,a:o}}}(t):Bt(t)}class Jt{constructor(t){if(t instanceof Jt)return t;const e=typeof t;let i;var s,n,o;"object"===e?i=Kt(t):"string"===e&&(o=(s=t).length,"#"===s[0]&&(4===o||5===o?n={r:255&17*St[s[1]],g:255&17*St[s[2]],b:255&17*St[s[3]],a:5===o?17*St[s[4]]:255}:7!==o&&9!==o||(n={r:St[s[1]]<<4|St[s[2]],g:St[s[3]]<<4|St[s[4]],b:St[s[5]]<<4|St[s[6]],a:9===o?St[s[7]]<<4|St[s[8]]:255})),i=n||jt(t)||Gt(t)),this._rgb=i,this._valid=!!i}get valid(){return this._valid}get rgb(){var t=qt(this._rgb);return t&&(t.a=wt(t.a)),t}set rgb(t){this._rgb=Kt(t)}rgbString(){return this._valid?(t=this._rgb)&&(t.a<255?`rgba(${t.r}, ${t.g}, ${t.b}, ${wt(t.a)})`:`rgb(${t.r}, ${t.g}, ${t.b})`):void 0;var t}hexString(){return this._valid?At(this._rgb):void 0}hslString(){return this._valid?function(t){if(!t)return;const e=It(t),i=e[0],s=kt(e[1]),n=kt(e[2]);return t.a<255?`hsla(${i}, ${s}%, ${n}%, ${wt(t.a)})`:`hsl(${i}, ${s}%, ${n}%)`}(this._rgb):void 0}mix(t,e){if(t){const i=this.rgb,s=t.rgb;let n;const o=e===n?.5:e,a=2*o-1,r=i.a-s.a,l=((a*r==-1?a:(a+r)/(1+a*r))+1)/2;n=1-l,i.r=255&l*i.r+n*s.r+.5,i.g=255&l*i.g+n*s.g+.5,i.b=255&l*i.b+n*s.b+.5,i.a=o*i.a+(1-o)*s.a,this.rgb=i}return this}interpolate(t,e){return t&&(this._rgb=function(t,e,i){const s=Ut(wt(t.r)),n=Ut(wt(t.g)),o=Ut(wt(t.b));return{r:Mt(Yt(s+i*(Ut(wt(e.r))-s))),g:Mt(Yt(n+i*(Ut(wt(e.g))-n))),b:Mt(Yt(o+i*(Ut(wt(e.b))-o))),a:t.a+i*(e.a-t.a)}}(this._rgb,t._rgb,e)),this}clone(){return new Jt(this.rgb)}alpha(t){return this._rgb.a=Mt(t),this}clearer(t){return this._rgb.a*=1-t,this}greyscale(){const t=this._rgb,e=_t(.3*t.r+.59*t.g+.11*t.b);return t.r=t.g=t.b=e,this}opaquer(t){return this._rgb.a*=1+t,this}negate(){const t=this._rgb;return t.r=255-t.r,t.g=255-t.g,t.b=255-t.b,this}lighten(t){return Xt(this._rgb,2,t),this}darken(t){return Xt(this._rgb,2,-t),this}saturate(t){return Xt(this._rgb,1,t),this}desaturate(t){return Xt(this._rgb,1,-t),this}rotate(t){return function(t,e){var i=It(t);i[0]=Vt(i[0]+e),i=Ft(i),t.r=i[0],t.g=i[1],t.b=i[2]}(this._rgb,t),this}}function Zt(t){if(t&&"object"==typeof t){const e=t.toString();return"[object CanvasPattern]"===e||"[object CanvasGradient]"===e}return!1}function Qt(t){return Zt(t)?t:new Jt(t)}function te(t){return Zt(t)?t:new Jt(t).saturate(.5).darken(.1).hexString()}const ee=["x","y","borderWidth","radius","tension"],ie=["color","borderColor","backgroundColor"];const se=new Map;function ne(t,e,i){return function(t,e){e=e||{};const i=t+JSON.stringify(e);let s=se.get(i);return s||(s=new Intl.NumberFormat(t,e),se.set(i,s)),s}(e,i).format(t)}const oe={values:t=>n(t)?t:""+t,numeric(t,e,i){if(0===t)return"0";const s=this.chart.options.locale;let n,o=t;if(i.length>1){const e=Math.max(Math.abs(i[0].value),Math.abs(i[i.length-1].value));(e<1e-4||e>1e15)&&(n="scientific"),o=function(t,e){let i=e.length>3?e[2].value-e[1].value:e[1].value-e[0].value;Math.abs(i)>=1&&t!==Math.floor(t)&&(i=t-Math.floor(t));return i}(t,i)}const a=z(Math.abs(o)),r=isNaN(a)?1:Math.max(Math.min(-1*Math.floor(a),20),0),l={notation:n,minimumFractionDigits:r,maximumFractionDigits:r};return Object.assign(l,this.options.ticks.format),ne(t,s,l)},logarithmic(t,e,i){if(0===t)return"0";const s=i[e].significand||t/Math.pow(10,Math.floor(z(t)));return[1,2,3,5,10,15].includes(s)||e>.8*i.length?oe.numeric.call(this,t,e,i):""}};var ae={formatters:oe};const re=Object.create(null),le=Object.create(null);function he(t,e){if(!e)return t;const i=e.split(".");for(let e=0,s=i.length;et.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(t,e)=>te(e.backgroundColor),this.hoverBorderColor=(t,e)=>te(e.borderColor),this.hoverColor=(t,e)=>te(e.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(t),this.apply(e)}set(t,e){return ce(this,t,e)}get(t){return he(this,t)}describe(t,e){return ce(le,t,e)}override(t,e){return ce(re,t,e)}route(t,e,i,s){const n=he(this,t),a=he(this,i),r="_"+e;Object.defineProperties(n,{[r]:{value:n[e],writable:!0},[e]:{enumerable:!0,get(){const t=this[r],e=a[s];return o(t)?Object.assign({},e,t):l(t,e)},set(t){this[r]=t}}})}apply(t){t.forEach((t=>t(this)))}}var ue=new de({_scriptable:t=>!t.startsWith("on"),_indexable:t=>"events"!==t,hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[function(t){t.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),t.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:t=>"onProgress"!==t&&"onComplete"!==t&&"fn"!==t}),t.set("animations",{colors:{type:"color",properties:ie},numbers:{type:"number",properties:ee}}),t.describe("animations",{_fallback:"animation"}),t.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:t=>0|t}}}})},function(t){t.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})},function(t){t.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",clip:!0,grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(t,e)=>e.lineWidth,tickColor:(t,e)=>e.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:ae.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),t.route("scale.ticks","color","","color"),t.route("scale.grid","color","","borderColor"),t.route("scale.border","color","","borderColor"),t.route("scale.title","color","","color"),t.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&"callback"!==t&&"parser"!==t,_indexable:t=>"borderDash"!==t&&"tickBorderDash"!==t&&"dash"!==t}),t.describe("scales",{_fallback:"scale"}),t.describe("scale.ticks",{_scriptable:t=>"backdropPadding"!==t&&"callback"!==t,_indexable:t=>"backdropPadding"!==t})}]);function fe(){return"undefined"!=typeof window&&"undefined"!=typeof document}function ge(t){let e=t.parentNode;return e&&"[object ShadowRoot]"===e.toString()&&(e=e.host),e}function pe(t,e,i){let s;return"string"==typeof t?(s=parseInt(t,10),-1!==t.indexOf("%")&&(s=s/100*e.parentNode[i])):s=t,s}const me=t=>t.ownerDocument.defaultView.getComputedStyle(t,null);function xe(t,e){return me(t).getPropertyValue(e)}const be=["top","right","bottom","left"];function _e(t,e,i){const s={};i=i?"-"+i:"";for(let n=0;n<4;n++){const o=be[n];s[o]=parseFloat(t[e+"-"+o+i])||0}return s.width=s.left+s.right,s.height=s.top+s.bottom,s}const ye=(t,e,i)=>(t>0||e>0)&&(!i||!i.shadowRoot);function ve(t,e){if("native"in t)return t;const{canvas:i,currentDevicePixelRatio:s}=e,n=me(i),o="border-box"===n.boxSizing,a=_e(n,"padding"),r=_e(n,"border","width"),{x:l,y:h,box:c}=function(t,e){const i=t.touches,s=i&&i.length?i[0]:t,{offsetX:n,offsetY:o}=s;let a,r,l=!1;if(ye(n,o,t.target))a=n,r=o;else{const t=e.getBoundingClientRect();a=s.clientX-t.left,r=s.clientY-t.top,l=!0}return{x:a,y:r,box:l}}(t,i),d=a.left+(c&&r.left),u=a.top+(c&&r.top);let{width:f,height:g}=e;return o&&(f-=a.width+r.width,g-=a.height+r.height),{x:Math.round((l-d)/f*i.width/s),y:Math.round((h-u)/g*i.height/s)}}const Me=t=>Math.round(10*t)/10;function we(t,e,i,s){const n=me(t),o=_e(n,"margin"),a=pe(n.maxWidth,t,"clientWidth")||T,r=pe(n.maxHeight,t,"clientHeight")||T,l=function(t,e,i){let s,n;if(void 0===e||void 0===i){const o=t&&ge(t);if(o){const t=o.getBoundingClientRect(),a=me(o),r=_e(a,"border","width"),l=_e(a,"padding");e=t.width-l.width-r.width,i=t.height-l.height-r.height,s=pe(a.maxWidth,o,"clientWidth"),n=pe(a.maxHeight,o,"clientHeight")}else e=t.clientWidth,i=t.clientHeight}return{width:e,height:i,maxWidth:s||T,maxHeight:n||T}}(t,e,i);let{width:h,height:c}=l;if("content-box"===n.boxSizing){const t=_e(n,"border","width"),e=_e(n,"padding");h-=e.width+t.width,c-=e.height+t.height}h=Math.max(0,h-o.width),c=Math.max(0,s?h/s:c-o.height),h=Me(Math.min(h,a,l.maxWidth)),c=Me(Math.min(c,r,l.maxHeight)),h&&!c&&(c=Me(h/2));return(void 0!==e||void 0!==i)&&s&&l.height&&c>l.height&&(c=l.height,h=Me(Math.floor(c*s))),{width:h,height:c}}function ke(t,e,i){const s=e||1,n=Me(t.height*s),o=Me(t.width*s);t.height=Me(t.height),t.width=Me(t.width);const a=t.canvas;return a.style&&(i||!a.style.height&&!a.style.width)&&(a.style.height=`${t.height}px`,a.style.width=`${t.width}px`),(t.currentDevicePixelRatio!==s||a.height!==n||a.width!==o)&&(t.currentDevicePixelRatio=s,a.height=n,a.width=o,t.ctx.setTransform(s,0,0,s,0,0),!0)}const Se=function(){let t=!1;try{const e={get passive(){return t=!0,!1}};fe()&&(window.addEventListener("test",null,e),window.removeEventListener("test",null,e))}catch(t){}return t}();function Pe(t,e){const i=xe(t,e),s=i&&i.match(/^(\d+)(\.\d+)?px$/);return s?+s[1]:void 0}function De(t){return!t||s(t.size)||s(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}function Ce(t,e,i,s,n){let o=e[n];return o||(o=e[n]=t.measureText(n).width,i.push(n)),o>s&&(s=o),s}function Oe(t,e,i,s){let o=(s=s||{}).data=s.data||{},a=s.garbageCollect=s.garbageCollect||[];s.font!==e&&(o=s.data={},a=s.garbageCollect=[],s.font=e),t.save(),t.font=e;let r=0;const l=i.length;let h,c,d,u,f;for(h=0;hi.length){for(h=0;h0&&t.stroke()}}function Re(t,e,i){return i=i||.5,!e||t&&t.x>e.left-i&&t.xe.top-i&&t.y0&&""!==r.strokeColor;let c,d;for(t.save(),t.font=a.string,function(t,e){e.translation&&t.translate(e.translation[0],e.translation[1]),s(e.rotation)||t.rotate(e.rotation),e.color&&(t.fillStyle=e.color),e.textAlign&&(t.textAlign=e.textAlign),e.textBaseline&&(t.textBaseline=e.textBaseline)}(t,r),c=0;ct[0])){const o=i||t;void 0===s&&(s=ti("_fallback",t));const a={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:t,_rootScopes:o,_fallback:s,_getTarget:n,override:i=>je([i,...t],e,o,s)};return new Proxy(a,{deleteProperty:(e,i)=>(delete e[i],delete e._keys,delete t[0][i],!0),get:(i,s)=>qe(i,s,(()=>function(t,e,i,s){let n;for(const o of e)if(n=ti(Ue(o,t),i),void 0!==n)return Xe(t,n)?Ze(i,s,t,n):n}(s,e,t,i))),getOwnPropertyDescriptor:(t,e)=>Reflect.getOwnPropertyDescriptor(t._scopes[0],e),getPrototypeOf:()=>Reflect.getPrototypeOf(t[0]),has:(t,e)=>ei(t).includes(e),ownKeys:t=>ei(t),set(t,e,i){const s=t._storage||(t._storage=n());return t[e]=s[e]=i,delete t._keys,!0}})}function $e(t,e,i,s){const a={_cacheable:!1,_proxy:t,_context:e,_subProxy:i,_stack:new Set,_descriptors:Ye(t,s),setContext:e=>$e(t,e,i,s),override:n=>$e(t.override(n),e,i,s)};return new Proxy(a,{deleteProperty:(e,i)=>(delete e[i],delete t[i],!0),get:(t,e,i)=>qe(t,e,(()=>function(t,e,i){const{_proxy:s,_context:a,_subProxy:r,_descriptors:l}=t;let h=s[e];S(h)&&l.isScriptable(e)&&(h=function(t,e,i,s){const{_proxy:n,_context:o,_subProxy:a,_stack:r}=i;if(r.has(t))throw new Error("Recursion detected: "+Array.from(r).join("->")+"->"+t);r.add(t);let l=e(o,a||s);r.delete(t),Xe(t,l)&&(l=Ze(n._scopes,n,t,l));return l}(e,h,t,i));n(h)&&h.length&&(h=function(t,e,i,s){const{_proxy:n,_context:a,_subProxy:r,_descriptors:l}=i;if(void 0!==a.index&&s(t))return e[a.index%e.length];if(o(e[0])){const i=e,s=n._scopes.filter((t=>t!==i));e=[];for(const o of i){const i=Ze(s,n,t,o);e.push($e(i,a,r&&r[t],l))}}return e}(e,h,t,l.isIndexable));Xe(e,h)&&(h=$e(h,a,r&&r[e],l));return h}(t,e,i))),getOwnPropertyDescriptor:(e,i)=>e._descriptors.allKeys?Reflect.has(t,i)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(t,i),getPrototypeOf:()=>Reflect.getPrototypeOf(t),has:(e,i)=>Reflect.has(t,i),ownKeys:()=>Reflect.ownKeys(t),set:(e,i,s)=>(t[i]=s,delete e[i],!0)})}function Ye(t,e={scriptable:!0,indexable:!0}){const{_scriptable:i=e.scriptable,_indexable:s=e.indexable,_allKeys:n=e.allKeys}=t;return{allKeys:n,scriptable:i,indexable:s,isScriptable:S(i)?i:()=>i,isIndexable:S(s)?s:()=>s}}const Ue=(t,e)=>t?t+w(e):e,Xe=(t,e)=>o(e)&&"adapters"!==t&&(null===Object.getPrototypeOf(e)||e.constructor===Object);function qe(t,e,i){if(Object.prototype.hasOwnProperty.call(t,e)||"constructor"===e)return t[e];const s=i();return t[e]=s,s}function Ke(t,e,i){return S(t)?t(e,i):t}const Ge=(t,e)=>!0===t?e:"string"==typeof t?M(e,t):void 0;function Je(t,e,i,s,n){for(const o of e){const e=Ge(i,o);if(e){t.add(e);const o=Ke(e._fallback,i,n);if(void 0!==o&&o!==i&&o!==s)return o}else if(!1===e&&void 0!==s&&i!==s)return null}return!1}function Ze(t,e,i,s){const a=e._rootScopes,r=Ke(e._fallback,i,s),l=[...t,...a],h=new Set;h.add(s);let c=Qe(h,l,i,r||i,s);return null!==c&&((void 0===r||r===i||(c=Qe(h,l,r,c,s),null!==c))&&je(Array.from(h),[""],a,r,(()=>function(t,e,i){const s=t._getTarget();e in s||(s[e]={});const a=s[e];if(n(a)&&o(i))return i;return a||{}}(e,i,s))))}function Qe(t,e,i,s,n){for(;i;)i=Je(t,e,i,s,n);return i}function ti(t,e){for(const i of e){if(!i)continue;const e=i[t];if(void 0!==e)return e}}function ei(t){let e=t._keys;return e||(e=t._keys=function(t){const e=new Set;for(const i of t)for(const t of Object.keys(i).filter((t=>!t.startsWith("_"))))e.add(t);return Array.from(e)}(t._scopes)),e}function ii(t,e,i,s){const{iScale:n}=t,{key:o="r"}=this._parsing,a=new Array(s);let r,l,h,c;for(r=0,l=s;re"x"===t?"y":"x";function ai(t,e,i,s){const n=t.skip?e:t,o=e,a=i.skip?e:i,r=q(o,n),l=q(a,o);let h=r/(r+l),c=l/(r+l);h=isNaN(h)?0:h,c=isNaN(c)?0:c;const d=s*h,u=s*c;return{previous:{x:o.x-d*(a.x-n.x),y:o.y-d*(a.y-n.y)},next:{x:o.x+u*(a.x-n.x),y:o.y+u*(a.y-n.y)}}}function ri(t,e="x"){const i=oi(e),s=t.length,n=Array(s).fill(0),o=Array(s);let a,r,l,h=ni(t,0);for(a=0;a!t.skip))),"monotone"===e.cubicInterpolationMode)ri(t,n);else{let i=s?t[t.length-1]:t[0];for(o=0,a=t.length;o0===t||1===t,di=(t,e,i)=>-Math.pow(2,10*(t-=1))*Math.sin((t-e)*O/i),ui=(t,e,i)=>Math.pow(2,-10*t)*Math.sin((t-e)*O/i)+1,fi={linear:t=>t,easeInQuad:t=>t*t,easeOutQuad:t=>-t*(t-2),easeInOutQuad:t=>(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1),easeInCubic:t=>t*t*t,easeOutCubic:t=>(t-=1)*t*t+1,easeInOutCubic:t=>(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2),easeInQuart:t=>t*t*t*t,easeOutQuart:t=>-((t-=1)*t*t*t-1),easeInOutQuart:t=>(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2),easeInQuint:t=>t*t*t*t*t,easeOutQuint:t=>(t-=1)*t*t*t*t+1,easeInOutQuint:t=>(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2),easeInSine:t=>1-Math.cos(t*E),easeOutSine:t=>Math.sin(t*E),easeInOutSine:t=>-.5*(Math.cos(C*t)-1),easeInExpo:t=>0===t?0:Math.pow(2,10*(t-1)),easeOutExpo:t=>1===t?1:1-Math.pow(2,-10*t),easeInOutExpo:t=>ci(t)?t:t<.5?.5*Math.pow(2,10*(2*t-1)):.5*(2-Math.pow(2,-10*(2*t-1))),easeInCirc:t=>t>=1?t:-(Math.sqrt(1-t*t)-1),easeOutCirc:t=>Math.sqrt(1-(t-=1)*t),easeInOutCirc:t=>(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1),easeInElastic:t=>ci(t)?t:di(t,.075,.3),easeOutElastic:t=>ci(t)?t:ui(t,.075,.3),easeInOutElastic(t){const e=.1125;return ci(t)?t:t<.5?.5*di(2*t,e,.45):.5+.5*ui(2*t-1,e,.45)},easeInBack(t){const e=1.70158;return t*t*((e+1)*t-e)},easeOutBack(t){const e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},easeInOutBack(t){let e=1.70158;return(t/=.5)<1?t*t*((1+(e*=1.525))*t-e)*.5:.5*((t-=2)*t*((1+(e*=1.525))*t+e)+2)},easeInBounce:t=>1-fi.easeOutBounce(1-t),easeOutBounce(t){const e=7.5625,i=2.75;return t<1/i?e*t*t:t<2/i?e*(t-=1.5/i)*t+.75:t<2.5/i?e*(t-=2.25/i)*t+.9375:e*(t-=2.625/i)*t+.984375},easeInOutBounce:t=>t<.5?.5*fi.easeInBounce(2*t):.5*fi.easeOutBounce(2*t-1)+.5};function gi(t,e,i,s){return{x:t.x+i*(e.x-t.x),y:t.y+i*(e.y-t.y)}}function pi(t,e,i,s){return{x:t.x+i*(e.x-t.x),y:"middle"===s?i<.5?t.y:e.y:"after"===s?i<1?t.y:e.y:i>0?e.y:t.y}}function mi(t,e,i,s){const n={x:t.cp2x,y:t.cp2y},o={x:e.cp1x,y:e.cp1y},a=gi(t,n,i),r=gi(n,o,i),l=gi(o,e,i),h=gi(a,r,i),c=gi(r,l,i);return gi(h,c,i)}const xi=/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/,bi=/^(normal|italic|initial|inherit|unset|(oblique( -?[0-9]?[0-9]deg)?))$/;function _i(t,e){const i=(""+t).match(xi);if(!i||"normal"===i[1])return 1.2*e;switch(t=+i[2],i[3]){case"px":return t;case"%":t/=100}return e*t}const yi=t=>+t||0;function vi(t,e){const i={},s=o(e),n=s?Object.keys(e):e,a=o(t)?s?i=>l(t[i],t[e[i]]):e=>t[e]:()=>t;for(const t of n)i[t]=yi(a(t));return i}function Mi(t){return vi(t,{top:"y",right:"x",bottom:"y",left:"x"})}function wi(t){return vi(t,["topLeft","topRight","bottomLeft","bottomRight"])}function ki(t){const e=Mi(t);return e.width=e.left+e.right,e.height=e.top+e.bottom,e}function Si(t,e){t=t||{},e=e||ue.font;let i=l(t.size,e.size);"string"==typeof i&&(i=parseInt(i,10));let s=l(t.style,e.style);s&&!(""+s).match(bi)&&(console.warn('Invalid font style specified: "'+s+'"'),s=void 0);const n={family:l(t.family,e.family),lineHeight:_i(l(t.lineHeight,e.lineHeight),i),size:i,style:s,weight:l(t.weight,e.weight),string:""};return n.string=De(n),n}function Pi(t,e,i,s){let o,a,r,l=!0;for(o=0,a=t.length;oi&&0===t?0:t+e;return{min:a(s,-Math.abs(o)),max:a(n,o)}}function Ci(t,e){return Object.assign(Object.create(t),e)}function Oi(t,e,i){return t?function(t,e){return{x:i=>t+t+e-i,setWidth(t){e=t},textAlign:t=>"center"===t?t:"right"===t?"left":"right",xPlus:(t,e)=>t-e,leftForLtr:(t,e)=>t-e}}(e,i):{x:t=>t,setWidth(t){},textAlign:t=>t,xPlus:(t,e)=>t+e,leftForLtr:(t,e)=>t}}function Ai(t,e){let i,s;"ltr"!==e&&"rtl"!==e||(i=t.canvas.style,s=[i.getPropertyValue("direction"),i.getPropertyPriority("direction")],i.setProperty("direction",e,"important"),t.prevTextDirection=s)}function Ti(t,e){void 0!==e&&(delete t.prevTextDirection,t.canvas.style.setProperty("direction",e[0],e[1]))}function Li(t){return"angle"===t?{between:J,compare:K,normalize:G}:{between:tt,compare:(t,e)=>t-e,normalize:t=>t}}function Ei({start:t,end:e,count:i,loop:s,style:n}){return{start:t%i,end:e%i,loop:s&&(e-t+1)%i==0,style:n}}function Ri(t,e,i){if(!i)return[t];const{property:s,start:n,end:o}=i,a=e.length,{compare:r,between:l,normalize:h}=Li(s),{start:c,end:d,loop:u,style:f}=function(t,e,i){const{property:s,start:n,end:o}=i,{between:a,normalize:r}=Li(s),l=e.length;let h,c,{start:d,end:u,loop:f}=t;if(f){for(d+=l,u+=l,h=0,c=l;hb||l(n,x,p)&&0!==r(n,x),v=()=>!b||0===r(o,p)||l(o,x,p);for(let t=c,i=c;t<=d;++t)m=e[t%a],m.skip||(p=h(m[s]),p!==x&&(b=l(p,n,o),null===_&&y()&&(_=0===r(p,n)?t:i),null!==_&&v()&&(g.push(Ei({start:_,end:t,loop:u,count:a,style:f})),_=null),i=t,x=p));return null!==_&&g.push(Ei({start:_,end:d,loop:u,count:a,style:f})),g}function Ii(t,e){const i=[],s=t.segments;for(let n=0;nn&&t[o%e].skip;)o--;return o%=e,{start:n,end:o}}(i,n,o,s);if(!0===s)return Fi(t,[{start:a,end:r,loop:o}],i,e);return Fi(t,function(t,e,i,s){const n=t.length,o=[];let a,r=e,l=t[e];for(a=e+1;a<=i;++a){const i=t[a%n];i.skip||i.stop?l.skip||(s=!1,o.push({start:e%n,end:(a-1)%n,loop:s}),e=r=i.stop?a:null):(r=a,l.skip&&(e=a)),l=i}return null!==r&&o.push({start:e%n,end:r%n,loop:s}),o}(i,a,r!s(t[e.axis])));n.lo-=Math.max(0,a);const r=i.slice(n.hi).findIndex((t=>!s(t[e.axis])));n.hi+=Math.max(0,r)}return n}if(o._sharedOptions){const t=a[0],s="function"==typeof t.getRange&&t.getRange(e);if(s){const t=r(a,e,i-s),n=r(a,e,i+s);return{lo:t.lo,hi:n.hi}}}}return{lo:0,hi:a.length-1}}function $i(t,e,i,s,n){const o=t.getSortedVisibleDatasetMetas(),a=i[e];for(let t=0,i=o.length;t{t[a]&&t[a](e[i],n)&&(o.push({element:t,datasetIndex:s,index:l}),r=r||t.inRange(e.x,e.y,n))})),s&&!r?[]:o}var Ki={evaluateInteractionItems:$i,modes:{index(t,e,i,s){const n=ve(e,t),o=i.axis||"x",a=i.includeInvisible||!1,r=i.intersect?Yi(t,n,o,s,a):Xi(t,n,o,!1,s,a),l=[];return r.length?(t.getSortedVisibleDatasetMetas().forEach((t=>{const e=r[0].index,i=t.data[e];i&&!i.skip&&l.push({element:i,datasetIndex:t.index,index:e})})),l):[]},dataset(t,e,i,s){const n=ve(e,t),o=i.axis||"xy",a=i.includeInvisible||!1;let r=i.intersect?Yi(t,n,o,s,a):Xi(t,n,o,!1,s,a);if(r.length>0){const e=r[0].datasetIndex,i=t.getDatasetMeta(e).data;r=[];for(let t=0;tYi(t,ve(e,t),i.axis||"xy",s,i.includeInvisible||!1),nearest(t,e,i,s){const n=ve(e,t),o=i.axis||"xy",a=i.includeInvisible||!1;return Xi(t,n,o,i.intersect,s,a)},x:(t,e,i,s)=>qi(t,ve(e,t),"x",i.intersect,s),y:(t,e,i,s)=>qi(t,ve(e,t),"y",i.intersect,s)}};const Gi=["left","top","right","bottom"];function Ji(t,e){return t.filter((t=>t.pos===e))}function Zi(t,e){return t.filter((t=>-1===Gi.indexOf(t.pos)&&t.box.axis===e))}function Qi(t,e){return t.sort(((t,i)=>{const s=e?i:t,n=e?t:i;return s.weight===n.weight?s.index-n.index:s.weight-n.weight}))}function ts(t,e){const i=function(t){const e={};for(const i of t){const{stack:t,pos:s,stackWeight:n}=i;if(!t||!Gi.includes(s))continue;const o=e[t]||(e[t]={count:0,placed:0,weight:0,size:0});o.count++,o.weight+=n}return e}(t),{vBoxMaxWidth:s,hBoxMaxHeight:n}=e;let o,a,r;for(o=0,a=t.length;o{s[t]=Math.max(e[t],i[t])})),s}return s(t?["left","right"]:["top","bottom"])}function os(t,e,i,s){const n=[];let o,a,r,l,h,c;for(o=0,a=t.length,h=0;ot.box.fullSize)),!0),s=Qi(Ji(e,"left"),!0),n=Qi(Ji(e,"right")),o=Qi(Ji(e,"top"),!0),a=Qi(Ji(e,"bottom")),r=Zi(e,"x"),l=Zi(e,"y");return{fullSize:i,leftAndTop:s.concat(o),rightAndBottom:n.concat(l).concat(a).concat(r),chartArea:Ji(e,"chartArea"),vertical:s.concat(n).concat(l),horizontal:o.concat(a).concat(r)}}(t.boxes),l=r.vertical,h=r.horizontal;u(t.boxes,(t=>{"function"==typeof t.beforeLayout&&t.beforeLayout()}));const c=l.reduce(((t,e)=>e.box.options&&!1===e.box.options.display?t:t+1),0)||1,d=Object.freeze({outerWidth:e,outerHeight:i,padding:n,availableWidth:o,availableHeight:a,vBoxMaxWidth:o/2/c,hBoxMaxHeight:a/2}),f=Object.assign({},n);is(f,ki(s));const g=Object.assign({maxPadding:f,w:o,h:a,x:n.left,y:n.top},n),p=ts(l.concat(h),d);os(r.fullSize,g,d,p),os(l,g,d,p),os(h,g,d,p)&&os(l,g,d,p),function(t){const e=t.maxPadding;function i(i){const s=Math.max(e[i]-t[i],0);return t[i]+=s,s}t.y+=i("top"),t.x+=i("left"),i("right"),i("bottom")}(g),rs(r.leftAndTop,g,d,p),g.x+=g.w,g.y+=g.h,rs(r.rightAndBottom,g,d,p),t.chartArea={left:g.left,top:g.top,right:g.left+g.w,bottom:g.top+g.h,height:g.h,width:g.w},u(r.chartArea,(e=>{const i=e.box;Object.assign(i,t.chartArea),i.update(g.w,g.h,{left:0,top:0,right:0,bottom:0})}))}};class hs{acquireContext(t,e){}releaseContext(t){return!1}addEventListener(t,e,i){}removeEventListener(t,e,i){}getDevicePixelRatio(){return 1}getMaximumSize(t,e,i,s){return e=Math.max(0,e||t.width),i=i||t.height,{width:e,height:Math.max(0,s?Math.floor(e/s):i)}}isAttached(t){return!0}updateConfig(t){}}class cs extends hs{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const ds="$chartjs",us={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},fs=t=>null===t||""===t;const gs=!!Se&&{passive:!0};function ps(t,e,i){t&&t.canvas&&t.canvas.removeEventListener(e,i,gs)}function ms(t,e){for(const i of t)if(i===e||i.contains(e))return!0}function xs(t,e,i){const s=t.canvas,n=new MutationObserver((t=>{let e=!1;for(const i of t)e=e||ms(i.addedNodes,s),e=e&&!ms(i.removedNodes,s);e&&i()}));return n.observe(document,{childList:!0,subtree:!0}),n}function bs(t,e,i){const s=t.canvas,n=new MutationObserver((t=>{let e=!1;for(const i of t)e=e||ms(i.removedNodes,s),e=e&&!ms(i.addedNodes,s);e&&i()}));return n.observe(document,{childList:!0,subtree:!0}),n}const _s=new Map;let ys=0;function vs(){const t=window.devicePixelRatio;t!==ys&&(ys=t,_s.forEach(((e,i)=>{i.currentDevicePixelRatio!==t&&e()})))}function Ms(t,e,i){const s=t.canvas,n=s&&ge(s);if(!n)return;const o=ct(((t,e)=>{const s=n.clientWidth;i(t,e),s{const e=t[0],i=e.contentRect.width,s=e.contentRect.height;0===i&&0===s||o(i,s)}));return a.observe(n),function(t,e){_s.size||window.addEventListener("resize",vs),_s.set(t,e)}(t,o),a}function ws(t,e,i){i&&i.disconnect(),"resize"===e&&function(t){_s.delete(t),_s.size||window.removeEventListener("resize",vs)}(t)}function ks(t,e,i){const s=t.canvas,n=ct((e=>{null!==t.ctx&&i(function(t,e){const i=us[t.type]||t.type,{x:s,y:n}=ve(t,e);return{type:i,chart:e,native:t,x:void 0!==s?s:null,y:void 0!==n?n:null}}(e,t))}),t);return function(t,e,i){t&&t.addEventListener(e,i,gs)}(s,e,n),n}class Ss extends hs{acquireContext(t,e){const i=t&&t.getContext&&t.getContext("2d");return i&&i.canvas===t?(function(t,e){const i=t.style,s=t.getAttribute("height"),n=t.getAttribute("width");if(t[ds]={initial:{height:s,width:n,style:{display:i.display,height:i.height,width:i.width}}},i.display=i.display||"block",i.boxSizing=i.boxSizing||"border-box",fs(n)){const e=Pe(t,"width");void 0!==e&&(t.width=e)}if(fs(s))if(""===t.style.height)t.height=t.width/(e||2);else{const e=Pe(t,"height");void 0!==e&&(t.height=e)}}(t,e),i):null}releaseContext(t){const e=t.canvas;if(!e[ds])return!1;const i=e[ds].initial;["height","width"].forEach((t=>{const n=i[t];s(n)?e.removeAttribute(t):e.setAttribute(t,n)}));const n=i.style||{};return Object.keys(n).forEach((t=>{e.style[t]=n[t]})),e.width=e.width,delete e[ds],!0}addEventListener(t,e,i){this.removeEventListener(t,e);const s=t.$proxies||(t.$proxies={}),n={attach:xs,detach:bs,resize:Ms}[e]||ks;s[e]=n(t,e,i)}removeEventListener(t,e){const i=t.$proxies||(t.$proxies={}),s=i[e];if(!s)return;({attach:ws,detach:ws,resize:ws}[e]||ps)(t,e,s),i[e]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,e,i,s){return we(t,e,i,s)}isAttached(t){const e=t&&ge(t);return!(!e||!e.isConnected)}}function Ps(t){return!fe()||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas?cs:Ss}var Ds=Object.freeze({__proto__:null,BasePlatform:hs,BasicPlatform:cs,DomPlatform:Ss,_detectPlatform:Ps});const Cs="transparent",Os={boolean:(t,e,i)=>i>.5?e:t,color(t,e,i){const s=Qt(t||Cs),n=s.valid&&Qt(e||Cs);return n&&n.valid?n.mix(s,i).hexString():e},number:(t,e,i)=>t+(e-t)*i};class As{constructor(t,e,i,s){const n=e[i];s=Pi([t.to,s,n,t.from]);const o=Pi([t.from,n,s]);this._active=!0,this._fn=t.fn||Os[t.type||typeof o],this._easing=fi[t.easing]||fi.linear,this._start=Math.floor(Date.now()+(t.delay||0)),this._duration=this._total=Math.floor(t.duration),this._loop=!!t.loop,this._target=e,this._prop=i,this._from=o,this._to=s,this._promises=void 0}active(){return this._active}update(t,e,i){if(this._active){this._notify(!1);const s=this._target[this._prop],n=i-this._start,o=this._duration-n;this._start=i,this._duration=Math.floor(Math.max(o,t.duration)),this._total+=n,this._loop=!!t.loop,this._to=Pi([t.to,e,s,t.from]),this._from=Pi([t.from,s,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,i=this._duration,s=this._prop,n=this._from,o=this._loop,a=this._to;let r;if(this._active=n!==a&&(o||e1?2-r:r,r=this._easing(Math.min(1,Math.max(0,r))),this._target[s]=this._fn(n,a,r))}wait(){const t=this._promises||(this._promises=[]);return new Promise(((e,i)=>{t.push({res:e,rej:i})}))}_notify(t){const e=t?"res":"rej",i=this._promises||[];for(let t=0;t{const a=t[s];if(!o(a))return;const r={};for(const t of e)r[t]=a[t];(n(a.properties)&&a.properties||[s]).forEach((t=>{t!==s&&i.has(t)||i.set(t,r)}))}))}_animateOptions(t,e){const i=e.options,s=function(t,e){if(!e)return;let i=t.options;if(!i)return void(t.options=e);i.$shared&&(t.options=i=Object.assign({},i,{$shared:!1,$animations:{}}));return i}(t,i);if(!s)return[];const n=this._createAnimations(s,i);return i.$shared&&function(t,e){const i=[],s=Object.keys(e);for(let e=0;e{t.options=i}),(()=>{})),n}_createAnimations(t,e){const i=this._properties,s=[],n=t.$animations||(t.$animations={}),o=Object.keys(e),a=Date.now();let r;for(r=o.length-1;r>=0;--r){const l=o[r];if("$"===l.charAt(0))continue;if("options"===l){s.push(...this._animateOptions(t,e));continue}const h=e[l];let c=n[l];const d=i.get(l);if(c){if(d&&c.active()){c.update(d,h,a);continue}c.cancel()}d&&d.duration?(n[l]=c=new As(d,t,l,h),s.push(c)):t[l]=h}return s}update(t,e){if(0===this._properties.size)return void Object.assign(t,e);const i=this._createAnimations(t,e);return i.length?(bt.add(this._chart,i),!0):void 0}}function Ls(t,e){const i=t&&t.options||{},s=i.reverse,n=void 0===i.min?e:0,o=void 0===i.max?e:0;return{start:s?o:n,end:s?n:o}}function Es(t,e){const i=[],s=t._getSortedDatasetMetas(e);let n,o;for(n=0,o=s.length;n0||!i&&e<0)return n.index}return null}function Vs(t,e){const{chart:i,_cachedMeta:s}=t,n=i._stacks||(i._stacks={}),{iScale:o,vScale:a,index:r}=s,l=o.axis,h=a.axis,c=function(t,e,i){return`${t.id}.${e.id}.${i.stack||i.type}`}(o,a,s),d=e.length;let u;for(let t=0;ti[t].axis===e)).shift()}function Ws(t,e){const i=t.controller.index,s=t.vScale&&t.vScale.axis;if(s){e=e||t._parsed;for(const t of e){const e=t._stacks;if(!e||void 0===e[s]||void 0===e[s][i])return;delete e[s][i],void 0!==e[s]._visualValues&&void 0!==e[s]._visualValues[i]&&delete e[s]._visualValues[i]}}}const Ns=t=>"reset"===t||"none"===t,Hs=(t,e)=>e?t:Object.assign({},t);class js{static defaults={};static datasetElementType=null;static dataElementType=null;constructor(t,e){this.chart=t,this._ctx=t.ctx,this.index=e,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=Is(t.vScale,t),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(t){this.index!==t&&Ws(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,e=this._cachedMeta,i=this.getDataset(),s=(t,e,i,s)=>"x"===t?e:"r"===t?s:i,n=e.xAxisID=l(i.xAxisID,Bs(t,"x")),o=e.yAxisID=l(i.yAxisID,Bs(t,"y")),a=e.rAxisID=l(i.rAxisID,Bs(t,"r")),r=e.indexAxis,h=e.iAxisID=s(r,n,o,a),c=e.vAxisID=s(r,o,n,a);e.xScale=this.getScaleForId(n),e.yScale=this.getScaleForId(o),e.rScale=this.getScaleForId(a),e.iScale=this.getScaleForId(h),e.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(t){return this.chart.scales[t]}_getOtherScale(t){const e=this._cachedMeta;return t===e.iScale?e.vScale:e.iScale}reset(){this._update("reset")}_destroy(){const t=this._cachedMeta;this._data&&rt(this._data,this),t._stacked&&Ws(t)}_dataCheck(){const t=this.getDataset(),e=t.data||(t.data=[]),i=this._data;if(o(e)){const t=this._cachedMeta;this._data=function(t,e){const{iScale:i,vScale:s}=e,n="x"===i.axis?"x":"y",o="x"===s.axis?"x":"y",a=Object.keys(t),r=new Array(a.length);let l,h,c;for(l=0,h=a.length;l0&&i._parsed[t-1];if(!1===this._parsing)i._parsed=s,i._sorted=!0,d=s;else{d=n(s[t])?this.parseArrayData(i,s,t,e):o(s[t])?this.parseObjectData(i,s,t,e):this.parsePrimitiveData(i,s,t,e);const a=()=>null===c[l]||f&&c[l]t&&!e.hidden&&e._stacked&&{keys:Es(i,!0),values:null})(e,i,this.chart),h={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:d}=function(t){const{min:e,max:i,minDefined:s,maxDefined:n}=t.getUserBounds();return{min:s?e:Number.NEGATIVE_INFINITY,max:n?i:Number.POSITIVE_INFINITY}}(r);let u,f;function g(){f=s[u];const e=f[r.axis];return!a(f[t.axis])||c>e||d=0;--u)if(!g()){this.updateRangeFromParsed(h,t,f,l);break}return h}getAllParsedValues(t){const e=this._cachedMeta._parsed,i=[];let s,n,o;for(s=0,n=e.length;s=0&&tthis.getContext(i,s,e)),c);return f.$shared&&(f.$shared=r,n[o]=Object.freeze(Hs(f,r))),f}_resolveAnimations(t,e,i){const s=this.chart,n=this._cachedDataOpts,o=`animation-${e}`,a=n[o];if(a)return a;let r;if(!1!==s.options.animation){const s=this.chart.config,n=s.datasetAnimationScopeKeys(this._type,e),o=s.getOptionScopes(this.getDataset(),n);r=s.createResolver(o,this.getContext(t,i,e))}const l=new Ts(s,r&&r.animations);return r&&r._cacheable&&(n[o]=Object.freeze(l)),l}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,e){return!e||Ns(t)||this.chart._animationsDisabled}_getSharedOptions(t,e){const i=this.resolveDataElementOptions(t,e),s=this._sharedOptions,n=this.getSharedOptions(i),o=this.includeOptions(e,n)||n!==s;return this.updateSharedOptions(n,e,i),{sharedOptions:n,includeOptions:o}}updateElement(t,e,i,s){Ns(s)?Object.assign(t,i):this._resolveAnimations(e,s).update(t,i)}updateSharedOptions(t,e,i){t&&!Ns(e)&&this._resolveAnimations(void 0,e).update(t,i)}_setStyle(t,e,i,s){t.active=s;const n=this.getStyle(e,s);this._resolveAnimations(e,i,s).update(t,{options:!s&&this.getSharedOptions(n)||n})}removeHoverStyle(t,e,i){this._setStyle(t,i,"active",!1)}setHoverStyle(t,e,i){this._setStyle(t,i,"active",!0)}_removeDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!1)}_setDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!0)}_resyncElements(t){const e=this._data,i=this._cachedMeta.data;for(const[t,e,i]of this._syncList)this[t](e,i);this._syncList=[];const s=i.length,n=e.length,o=Math.min(n,s);o&&this.parse(0,o),n>s?this._insertElements(s,n-s,t):n{for(t.length+=e,a=t.length-1;a>=o;a--)t[a]=t[a-e]};for(r(n),a=t;a{s[t]=i[t]&&i[t].active()?i[t]._to:this[t]})),s}}function Ys(t,e){const i=t.options.ticks,n=function(t){const e=t.options.offset,i=t._tickSize(),s=t._length/i+(e?0:1),n=t._maxLength/i;return Math.floor(Math.min(s,n))}(t),o=Math.min(i.maxTicksLimit||n,n),a=i.major.enabled?function(t){const e=[];let i,s;for(i=0,s=t.length;io)return function(t,e,i,s){let n,o=0,a=i[0];for(s=Math.ceil(s),n=0;nn)return e}return Math.max(n,1)}(a,e,o);if(r>0){let t,i;const n=r>1?Math.round((h-l)/(r-1)):null;for(Us(e,c,d,s(n)?0:l-n,l),t=0,i=r-1;t"top"===e||"left"===e?t[e]+i:t[e]-i,qs=(t,e)=>Math.min(e||t,t);function Ks(t,e){const i=[],s=t.length/e,n=t.length;let o=0;for(;oa+r)))return h}function Js(t){return t.drawTicks?t.tickLength:0}function Zs(t,e){if(!t.display)return 0;const i=Si(t.font,e),s=ki(t.padding);return(n(t.text)?t.text.length:1)*i.lineHeight+s.height}function Qs(t,e,i){let s=ut(t);return(i&&"right"!==e||!i&&"right"===e)&&(s=(t=>"left"===t?"right":"right"===t?"left":t)(s)),s}class tn extends $s{constructor(t){super(),this.id=t.id,this.type=t.type,this.options=void 0,this.ctx=t.ctx,this.chart=t.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(t){this.options=t.setContext(this.getContext()),this.axis=t.axis,this._userMin=this.parse(t.min),this._userMax=this.parse(t.max),this._suggestedMin=this.parse(t.suggestedMin),this._suggestedMax=this.parse(t.suggestedMax)}parse(t,e){return t}getUserBounds(){let{_userMin:t,_userMax:e,_suggestedMin:i,_suggestedMax:s}=this;return t=r(t,Number.POSITIVE_INFINITY),e=r(e,Number.NEGATIVE_INFINITY),i=r(i,Number.POSITIVE_INFINITY),s=r(s,Number.NEGATIVE_INFINITY),{min:r(t,i),max:r(e,s),minDefined:a(t),maxDefined:a(e)}}getMinMax(t){let e,{min:i,max:s,minDefined:n,maxDefined:o}=this.getUserBounds();if(n&&o)return{min:i,max:s};const a=this.getMatchingVisibleMetas();for(let r=0,l=a.length;rs?s:i,s=n&&i>s?i:s,{min:r(i,r(s,i)),max:r(s,r(i,s))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}getLabelItems(t=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(t))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){d(this.options.beforeUpdate,[this])}update(t,e,i){const{beginAtZero:s,grace:n,ticks:o}=this.options,a=o.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=e,this._margins=i=Object.assign({left:0,right:0,top:0,bottom:0},i),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+i.left+i.right:this.height+i.top+i.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=Di(this,n,s),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const r=a=n||i<=1||!this.isHorizontal())return void(this.labelRotation=s);const h=this._getLabelSizes(),c=h.widest.width,d=h.highest.height,u=Z(this.chart.width-c,0,this.maxWidth);o=t.offset?this.maxWidth/i:u/(i-1),c+6>o&&(o=u/(i-(t.offset?.5:1)),a=this.maxHeight-Js(t.grid)-e.padding-Zs(t.title,this.chart.options.font),r=Math.sqrt(c*c+d*d),l=Y(Math.min(Math.asin(Z((h.highest.height+6)/o,-1,1)),Math.asin(Z(a/r,-1,1))-Math.asin(Z(d/r,-1,1)))),l=Math.max(s,Math.min(n,l))),this.labelRotation=l}afterCalculateLabelRotation(){d(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){d(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:e,options:{ticks:i,title:s,grid:n}}=this,o=this._isVisible(),a=this.isHorizontal();if(o){const o=Zs(s,e.options.font);if(a?(t.width=this.maxWidth,t.height=Js(n)+o):(t.height=this.maxHeight,t.width=Js(n)+o),i.display&&this.ticks.length){const{first:e,last:s,widest:n,highest:o}=this._getLabelSizes(),r=2*i.padding,l=$(this.labelRotation),h=Math.cos(l),c=Math.sin(l);if(a){const e=i.mirror?0:c*n.width+h*o.height;t.height=Math.min(this.maxHeight,t.height+e+r)}else{const e=i.mirror?0:h*n.width+c*o.height;t.width=Math.min(this.maxWidth,t.width+e+r)}this._calculatePadding(e,s,c,h)}}this._handleMargins(),a?(this.width=this._length=e.width-this._margins.left-this._margins.right,this.height=t.height):(this.width=t.width,this.height=this._length=e.height-this._margins.top-this._margins.bottom)}_calculatePadding(t,e,i,s){const{ticks:{align:n,padding:o},position:a}=this.options,r=0!==this.labelRotation,l="top"!==a&&"x"===this.axis;if(this.isHorizontal()){const a=this.getPixelForTick(0)-this.left,h=this.right-this.getPixelForTick(this.ticks.length-1);let c=0,d=0;r?l?(c=s*t.width,d=i*e.height):(c=i*t.height,d=s*e.width):"start"===n?d=e.width:"end"===n?c=t.width:"inner"!==n&&(c=t.width/2,d=e.width/2),this.paddingLeft=Math.max((c-a+o)*this.width/(this.width-a),0),this.paddingRight=Math.max((d-h+o)*this.width/(this.width-h),0)}else{let i=e.height/2,s=t.height/2;"start"===n?(i=0,s=t.height):"end"===n&&(i=e.height,s=0),this.paddingTop=i+o,this.paddingBottom=s+o}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){d(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:e}=this.options;return"top"===e||"bottom"===e||"x"===t}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){let e,i;for(this.beforeTickToLabelConversion(),this.generateTickLabels(t),e=0,i=t.length;e{const i=t.gc,s=i.length/2;let n;if(s>e){for(n=0;n({width:r[t]||0,height:l[t]||0});return{first:P(0),last:P(e-1),widest:P(k),highest:P(S),widths:r,heights:l}}getLabelForValue(t){return t}getPixelForValue(t,e){return NaN}getValueForPixel(t){}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const e=this._startPixel+t*this._length;return Q(this._alignToPixels?Ae(this.chart,e,0):e)}getDecimalForPixel(t){const e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:t,max:e}=this;return t<0&&e<0?e:t>0&&e>0?t:0}getContext(t){const e=this.ticks||[];if(t>=0&&ta*s?a/i:r/s:r*s0}_computeGridLineItems(t){const e=this.axis,i=this.chart,s=this.options,{grid:n,position:a,border:r}=s,h=n.offset,c=this.isHorizontal(),d=this.ticks.length+(h?1:0),u=Js(n),f=[],g=r.setContext(this.getContext()),p=g.display?g.width:0,m=p/2,x=function(t){return Ae(i,t,p)};let b,_,y,v,M,w,k,S,P,D,C,O;if("top"===a)b=x(this.bottom),w=this.bottom-u,S=b-m,D=x(t.top)+m,O=t.bottom;else if("bottom"===a)b=x(this.top),D=t.top,O=x(t.bottom)-m,w=b+m,S=this.top+u;else if("left"===a)b=x(this.right),M=this.right-u,k=b-m,P=x(t.left)+m,C=t.right;else if("right"===a)b=x(this.left),P=t.left,C=x(t.right)-m,M=b+m,k=this.left+u;else if("x"===e){if("center"===a)b=x((t.top+t.bottom)/2+.5);else if(o(a)){const t=Object.keys(a)[0],e=a[t];b=x(this.chart.scales[t].getPixelForValue(e))}D=t.top,O=t.bottom,w=b+m,S=w+u}else if("y"===e){if("center"===a)b=x((t.left+t.right)/2);else if(o(a)){const t=Object.keys(a)[0],e=a[t];b=x(this.chart.scales[t].getPixelForValue(e))}M=b-m,k=M-u,P=t.left,C=t.right}const A=l(s.ticks.maxTicksLimit,d),T=Math.max(1,Math.ceil(d/A));for(_=0;_0&&(o-=s/2)}d={left:o,top:n,width:s+e.width,height:i+e.height,color:t.backdropColor}}x.push({label:v,font:P,textOffset:O,options:{rotation:m,color:i,strokeColor:o,strokeWidth:h,textAlign:f,textBaseline:A,translation:[M,w],backdrop:d}})}return x}_getXAxisLabelAlignment(){const{position:t,ticks:e}=this.options;if(-$(this.labelRotation))return"top"===t?"left":"right";let i="center";return"start"===e.align?i="left":"end"===e.align?i="right":"inner"===e.align&&(i="inner"),i}_getYAxisLabelAlignment(t){const{position:e,ticks:{crossAlign:i,mirror:s,padding:n}}=this.options,o=t+n,a=this._getLabelSizes().widest.width;let r,l;return"left"===e?s?(l=this.right+n,"near"===i?r="left":"center"===i?(r="center",l+=a/2):(r="right",l+=a)):(l=this.right-o,"near"===i?r="right":"center"===i?(r="center",l-=a/2):(r="left",l=this.left)):"right"===e?s?(l=this.left+n,"near"===i?r="right":"center"===i?(r="center",l-=a/2):(r="left",l-=a)):(l=this.left+o,"near"===i?r="left":"center"===i?(r="center",l+=a/2):(r="right",l=this.right)):r="right",{textAlign:r,x:l}}_computeLabelArea(){if(this.options.ticks.mirror)return;const t=this.chart,e=this.options.position;return"left"===e||"right"===e?{top:0,left:this.left,bottom:t.height,right:this.right}:"top"===e||"bottom"===e?{top:this.top,left:0,bottom:this.bottom,right:t.width}:void 0}drawBackground(){const{ctx:t,options:{backgroundColor:e},left:i,top:s,width:n,height:o}=this;e&&(t.save(),t.fillStyle=e,t.fillRect(i,s,n,o),t.restore())}getLineWidthForValue(t){const e=this.options.grid;if(!this._isVisible()||!e.display)return 0;const i=this.ticks.findIndex((e=>e.value===t));if(i>=0){return e.setContext(this.getContext(i)).lineWidth}return 0}drawGrid(t){const e=this.options.grid,i=this.ctx,s=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let n,o;const a=(t,e,s)=>{s.width&&s.color&&(i.save(),i.lineWidth=s.width,i.strokeStyle=s.color,i.setLineDash(s.borderDash||[]),i.lineDashOffset=s.borderDashOffset,i.beginPath(),i.moveTo(t.x,t.y),i.lineTo(e.x,e.y),i.stroke(),i.restore())};if(e.display)for(n=0,o=s.length;n{this.drawBackground(),this.drawGrid(t),this.drawTitle()}},{z:s,draw:()=>{this.drawBorder()}},{z:e,draw:t=>{this.drawLabels(t)}}]:[{z:e,draw:t=>{this.draw(t)}}]}getMatchingVisibleMetas(t){const e=this.chart.getSortedVisibleDatasetMetas(),i=this.axis+"AxisID",s=[];let n,o;for(n=0,o=e.length;n{const s=i.split("."),n=s.pop(),o=[t].concat(s).join("."),a=e[i].split("."),r=a.pop(),l=a.join(".");ue.route(o,n,l,r)}))}(e,t.defaultRoutes);t.descriptors&&ue.describe(e,t.descriptors)}(t,o,i),this.override&&ue.override(t.id,t.overrides)),o}get(t){return this.items[t]}unregister(t){const e=this.items,i=t.id,s=this.scope;i in e&&delete e[i],s&&i in ue[s]&&(delete ue[s][i],this.override&&delete re[i])}}class sn{constructor(){this.controllers=new en(js,"datasets",!0),this.elements=new en($s,"elements"),this.plugins=new en(Object,"plugins"),this.scales=new en(tn,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...t){this._each("register",t)}remove(...t){this._each("unregister",t)}addControllers(...t){this._each("register",t,this.controllers)}addElements(...t){this._each("register",t,this.elements)}addPlugins(...t){this._each("register",t,this.plugins)}addScales(...t){this._each("register",t,this.scales)}getController(t){return this._get(t,this.controllers,"controller")}getElement(t){return this._get(t,this.elements,"element")}getPlugin(t){return this._get(t,this.plugins,"plugin")}getScale(t){return this._get(t,this.scales,"scale")}removeControllers(...t){this._each("unregister",t,this.controllers)}removeElements(...t){this._each("unregister",t,this.elements)}removePlugins(...t){this._each("unregister",t,this.plugins)}removeScales(...t){this._each("unregister",t,this.scales)}_each(t,e,i){[...e].forEach((e=>{const s=i||this._getRegistryForType(e);i||s.isForType(e)||s===this.plugins&&e.id?this._exec(t,s,e):u(e,(e=>{const s=i||this._getRegistryForType(e);this._exec(t,s,e)}))}))}_exec(t,e,i){const s=w(t);d(i["before"+s],[],i),e[t](i),d(i["after"+s],[],i)}_getRegistryForType(t){for(let e=0;et.filter((t=>!e.some((e=>t.plugin.id===e.plugin.id))));this._notify(s(e,i),t,"stop"),this._notify(s(i,e),t,"start")}}function an(t,e){return e||!1!==t?!0===t?{}:t:null}function rn(t,{plugin:e,local:i},s,n){const o=t.pluginScopeKeys(e),a=t.getOptionScopes(s,o);return i&&e.defaults&&a.push(e.defaults),t.createResolver(a,n,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function ln(t,e){const i=ue.datasets[t]||{};return((e.datasets||{})[t]||{}).indexAxis||e.indexAxis||i.indexAxis||"x"}function hn(t){if("x"===t||"y"===t||"r"===t)return t}function cn(t,...e){if(hn(t))return t;for(const s of e){const e=s.axis||("top"===(i=s.position)||"bottom"===i?"x":"left"===i||"right"===i?"y":void 0)||t.length>1&&hn(t[0].toLowerCase());if(e)return e}var i;throw new Error(`Cannot determine type of '${t}' axis. Please provide 'axis' or 'position' option.`)}function dn(t,e,i){if(i[e+"AxisID"]===t)return{axis:e}}function un(t,e){const i=re[t.type]||{scales:{}},s=e.scales||{},n=ln(t.type,e),a=Object.create(null);return Object.keys(s).forEach((e=>{const r=s[e];if(!o(r))return console.error(`Invalid scale configuration for scale: ${e}`);if(r._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${e}`);const l=cn(e,r,function(t,e){if(e.data&&e.data.datasets){const i=e.data.datasets.filter((e=>e.xAxisID===t||e.yAxisID===t));if(i.length)return dn(t,"x",i[0])||dn(t,"y",i[0])}return{}}(e,t),ue.scales[r.type]),h=function(t,e){return t===e?"_index_":"_value_"}(l,n),c=i.scales||{};a[e]=b(Object.create(null),[{axis:l},r,c[l],c[h]])})),t.data.datasets.forEach((i=>{const n=i.type||t.type,o=i.indexAxis||ln(n,e),r=(re[n]||{}).scales||{};Object.keys(r).forEach((t=>{const e=function(t,e){let i=t;return"_index_"===t?i=e:"_value_"===t&&(i="x"===e?"y":"x"),i}(t,o),n=i[e+"AxisID"]||e;a[n]=a[n]||Object.create(null),b(a[n],[{axis:e},s[n],r[t]])}))})),Object.keys(a).forEach((t=>{const e=a[t];b(e,[ue.scales[e.type],ue.scale])})),a}function fn(t){const e=t.options||(t.options={});e.plugins=l(e.plugins,{}),e.scales=un(t,e)}function gn(t){return(t=t||{}).datasets=t.datasets||[],t.labels=t.labels||[],t}const pn=new Map,mn=new Set;function xn(t,e){let i=pn.get(t);return i||(i=e(),pn.set(t,i),mn.add(i)),i}const bn=(t,e,i)=>{const s=M(e,i);void 0!==s&&t.add(s)};class _n{constructor(t){this._config=function(t){return(t=t||{}).data=gn(t.data),fn(t),t}(t),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(t){this._config.type=t}get data(){return this._config.data}set data(t){this._config.data=gn(t)}get options(){return this._config.options}set options(t){this._config.options=t}get plugins(){return this._config.plugins}update(){const t=this._config;this.clearCache(),fn(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return xn(t,(()=>[[`datasets.${t}`,""]]))}datasetAnimationScopeKeys(t,e){return xn(`${t}.transition.${e}`,(()=>[[`datasets.${t}.transitions.${e}`,`transitions.${e}`],[`datasets.${t}`,""]]))}datasetElementScopeKeys(t,e){return xn(`${t}-${e}`,(()=>[[`datasets.${t}.elements.${e}`,`datasets.${t}`,`elements.${e}`,""]]))}pluginScopeKeys(t){const e=t.id;return xn(`${this.type}-plugin-${e}`,(()=>[[`plugins.${e}`,...t.additionalOptionScopes||[]]]))}_cachedScopes(t,e){const i=this._scopeCache;let s=i.get(t);return s&&!e||(s=new Map,i.set(t,s)),s}getOptionScopes(t,e,i){const{options:s,type:n}=this,o=this._cachedScopes(t,i),a=o.get(e);if(a)return a;const r=new Set;e.forEach((e=>{t&&(r.add(t),e.forEach((e=>bn(r,t,e)))),e.forEach((t=>bn(r,s,t))),e.forEach((t=>bn(r,re[n]||{},t))),e.forEach((t=>bn(r,ue,t))),e.forEach((t=>bn(r,le,t)))}));const l=Array.from(r);return 0===l.length&&l.push(Object.create(null)),mn.has(e)&&o.set(e,l),l}chartOptionScopes(){const{options:t,type:e}=this;return[t,re[e]||{},ue.datasets[e]||{},{type:e},ue,le]}resolveNamedOptions(t,e,i,s=[""]){const o={$shared:!0},{resolver:a,subPrefixes:r}=yn(this._resolverCache,t,s);let l=a;if(function(t,e){const{isScriptable:i,isIndexable:s}=Ye(t);for(const o of e){const e=i(o),a=s(o),r=(a||e)&&t[o];if(e&&(S(r)||vn(r))||a&&n(r))return!0}return!1}(a,e)){o.$shared=!1;l=$e(a,i=S(i)?i():i,this.createResolver(t,i,r))}for(const t of e)o[t]=l[t];return o}createResolver(t,e,i=[""],s){const{resolver:n}=yn(this._resolverCache,t,i);return o(e)?$e(n,e,void 0,s):n}}function yn(t,e,i){let s=t.get(e);s||(s=new Map,t.set(e,s));const n=i.join();let o=s.get(n);if(!o){o={resolver:je(e,i),subPrefixes:i.filter((t=>!t.toLowerCase().includes("hover")))},s.set(n,o)}return o}const vn=t=>o(t)&&Object.getOwnPropertyNames(t).some((e=>S(t[e])));const Mn=["top","bottom","left","right","chartArea"];function wn(t,e){return"top"===t||"bottom"===t||-1===Mn.indexOf(t)&&"x"===e}function kn(t,e){return function(i,s){return i[t]===s[t]?i[e]-s[e]:i[t]-s[t]}}function Sn(t){const e=t.chart,i=e.options.animation;e.notifyPlugins("afterRender"),d(i&&i.onComplete,[t],e)}function Pn(t){const e=t.chart,i=e.options.animation;d(i&&i.onProgress,[t],e)}function Dn(t){return fe()&&"string"==typeof t?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const Cn={},On=t=>{const e=Dn(t);return Object.values(Cn).filter((t=>t.canvas===e)).pop()};function An(t,e,i){const s=Object.keys(t);for(const n of s){const s=+n;if(s>=e){const o=t[n];delete t[n],(i>0||s>e)&&(t[s+i]=o)}}}class Tn{static defaults=ue;static instances=Cn;static overrides=re;static registry=nn;static version="4.5.1";static getChart=On;static register(...t){nn.add(...t),Ln()}static unregister(...t){nn.remove(...t),Ln()}constructor(t,e){const s=this.config=new _n(e),n=Dn(t),o=On(n);if(o)throw new Error("Canvas is already in use. Chart with ID '"+o.id+"' must be destroyed before the canvas with ID '"+o.canvas.id+"' can be reused.");const a=s.createResolver(s.chartOptionScopes(),this.getContext());this.platform=new(s.platform||Ps(n)),this.platform.updateConfig(s);const r=this.platform.acquireContext(n,a.aspectRatio),l=r&&r.canvas,h=l&&l.height,c=l&&l.width;this.id=i(),this.ctx=r,this.canvas=l,this.width=c,this.height=h,this._options=a,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new on,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=dt((t=>this.update(t)),a.resizeDelay||0),this._dataChanges=[],Cn[this.id]=this,r&&l?(bt.listen(this,"complete",Sn),bt.listen(this,"progress",Pn),this._initialize(),this.attached&&this.update()):console.error("Failed to create chart: can't acquire context from the given item")}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:e},width:i,height:n,_aspectRatio:o}=this;return s(t)?e&&o?o:n?i/n:null:t}get data(){return this.config.data}set data(t){this.config.data=t}get options(){return this._options}set options(t){this.config.options=t}get registry(){return nn}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():ke(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return Te(this.canvas,this.ctx),this}stop(){return bt.stop(this),this}resize(t,e){bt.running(this)?this._resizeBeforeDraw={width:t,height:e}:this._resize(t,e)}_resize(t,e){const i=this.options,s=this.canvas,n=i.maintainAspectRatio&&this.aspectRatio,o=this.platform.getMaximumSize(s,t,e,n),a=i.devicePixelRatio||this.platform.getDevicePixelRatio(),r=this.width?"resize":"attach";this.width=o.width,this.height=o.height,this._aspectRatio=this.aspectRatio,ke(this,a,!0)&&(this.notifyPlugins("resize",{size:o}),d(i.onResize,[this,o],this),this.attached&&this._doResize(r)&&this.render())}ensureScalesHaveIDs(){u(this.options.scales||{},((t,e)=>{t.id=e}))}buildOrUpdateScales(){const t=this.options,e=t.scales,i=this.scales,s=Object.keys(i).reduce(((t,e)=>(t[e]=!1,t)),{});let n=[];e&&(n=n.concat(Object.keys(e).map((t=>{const i=e[t],s=cn(t,i),n="r"===s,o="x"===s;return{options:i,dposition:n?"chartArea":o?"bottom":"left",dtype:n?"radialLinear":o?"category":"linear"}})))),u(n,(e=>{const n=e.options,o=n.id,a=cn(o,n),r=l(n.type,e.dtype);void 0!==n.position&&wn(n.position,a)===wn(e.dposition)||(n.position=e.dposition),s[o]=!0;let h=null;if(o in i&&i[o].type===r)h=i[o];else{h=new(nn.getScale(r))({id:o,type:r,ctx:this.ctx,chart:this}),i[h.id]=h}h.init(n,t)})),u(s,((t,e)=>{t||delete i[e]})),u(i,(t=>{ls.configure(this,t,t.options),ls.addBox(this,t)}))}_updateMetasets(){const t=this._metasets,e=this.data.datasets.length,i=t.length;if(t.sort(((t,e)=>t.index-e.index)),i>e){for(let t=e;te.length&&delete this._stacks,t.forEach(((t,i)=>{0===e.filter((e=>e===t._dataset)).length&&this._destroyDatasetMeta(i)}))}buildOrUpdateControllers(){const t=[],e=this.data.datasets;let i,s;for(this._removeUnreferencedMetasets(),i=0,s=e.length;i{this.getDatasetMeta(e).controller.reset()}),this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const e=this.config;e.update();const i=this._options=e.createResolver(e.chartOptionScopes(),this.getContext()),s=this._animationsDisabled=!i.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),!1===this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0}))return;const n=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let o=0;for(let t=0,e=this.data.datasets.length;t{t.reset()})),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(kn("z","_idx"));const{_active:a,_lastEvent:r}=this;r?this._eventHandler(r,!0):a.length&&this._updateHoverStyles(a,a,!0),this.render()}_updateScales(){u(this.scales,(t=>{ls.removeBox(this,t)})),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,e=new Set(Object.keys(this._listeners)),i=new Set(t.events);P(e,i)&&!!this._responsiveListeners===t.responsive||(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,e=this._getUniformDataChanges()||[];for(const{method:i,start:s,count:n}of e){An(t,s,"_removeElements"===i?-n:n)}}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const e=this.data.datasets.length,i=e=>new Set(t.filter((t=>t[0]===e)).map(((t,e)=>e+","+t.splice(1).join(",")))),s=i(0);for(let t=1;tt.split(","))).map((t=>({method:t[1],start:+t[2],count:+t[3]})))}_updateLayout(t){if(!1===this.notifyPlugins("beforeLayout",{cancelable:!0}))return;ls.update(this,this.width,this.height,t);const e=this.chartArea,i=e.width<=0||e.height<=0;this._layers=[],u(this.boxes,(t=>{i&&"chartArea"===t.position||(t.configure&&t.configure(),this._layers.push(...t._layers()))}),this),this._layers.forEach(((t,e)=>{t._idx=e})),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(!1!==this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})){for(let t=0,e=this.data.datasets.length;t=0;--e)this._drawDataset(t[e]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const e=this.ctx,i={meta:t,index:t.index,cancelable:!0},s=Ni(this,t);!1!==this.notifyPlugins("beforeDatasetDraw",i)&&(s&&Ie(e,s),t.controller.draw(),s&&ze(e),i.cancelable=!1,this.notifyPlugins("afterDatasetDraw",i))}isPointInArea(t){return Re(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,e,i,s){const n=Ki.modes[e];return"function"==typeof n?n(this,t,i,s):[]}getDatasetMeta(t){const e=this.data.datasets[t],i=this._metasets;let s=i.filter((t=>t&&t._dataset===e)).pop();return s||(s={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e&&e.order||0,index:t,_dataset:e,_parsed:[],_sorted:!1},i.push(s)),s}getContext(){return this.$context||(this.$context=Ci(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const e=this.data.datasets[t];if(!e)return!1;const i=this.getDatasetMeta(t);return"boolean"==typeof i.hidden?!i.hidden:!e.hidden}setDatasetVisibility(t,e){this.getDatasetMeta(t).hidden=!e}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,e,i){const s=i?"show":"hide",n=this.getDatasetMeta(t),o=n.controller._resolveAnimations(void 0,s);k(e)?(n.data[e].hidden=!i,this.update()):(this.setDatasetVisibility(t,i),o.update(n,{visible:i}),this.update((e=>e.datasetIndex===t?s:void 0)))}hide(t,e){this._updateVisibility(t,e,!1)}show(t,e){this._updateVisibility(t,e,!0)}_destroyDatasetMeta(t){const e=this._metasets[t];e&&e.controller&&e.controller._destroy(),delete this._metasets[t]}_stop(){let t,e;for(this.stop(),bt.remove(this),t=0,e=this.data.datasets.length;t{e.addEventListener(this,i,s),t[i]=s},s=(t,e,i)=>{t.offsetX=e,t.offsetY=i,this._eventHandler(t)};u(this.options.events,(t=>i(t,s)))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,e=this.platform,i=(i,s)=>{e.addEventListener(this,i,s),t[i]=s},s=(i,s)=>{t[i]&&(e.removeEventListener(this,i,s),delete t[i])},n=(t,e)=>{this.canvas&&this.resize(t,e)};let o;const a=()=>{s("attach",a),this.attached=!0,this.resize(),i("resize",n),i("detach",o)};o=()=>{this.attached=!1,s("resize",n),this._stop(),this._resize(0,0),i("attach",a)},e.isAttached(this.canvas)?a():o()}unbindEvents(){u(this._listeners,((t,e)=>{this.platform.removeEventListener(this,e,t)})),this._listeners={},u(this._responsiveListeners,((t,e)=>{this.platform.removeEventListener(this,e,t)})),this._responsiveListeners=void 0}updateHoverStyle(t,e,i){const s=i?"set":"remove";let n,o,a,r;for("dataset"===e&&(n=this.getDatasetMeta(t[0].datasetIndex),n.controller["_"+s+"DatasetHoverStyle"]()),a=0,r=t.length;a{const i=this.getDatasetMeta(t);if(!i)throw new Error("No dataset found at index "+t);return{datasetIndex:t,element:i.data[e],index:e}}));!f(i,e)&&(this._active=i,this._lastEvent=null,this._updateHoverStyles(i,e))}notifyPlugins(t,e,i){return this._plugins.notify(this,t,e,i)}isPluginEnabled(t){return 1===this._plugins._cache.filter((e=>e.plugin.id===t)).length}_updateHoverStyles(t,e,i){const s=this.options.hover,n=(t,e)=>t.filter((t=>!e.some((e=>t.datasetIndex===e.datasetIndex&&t.index===e.index)))),o=n(e,t),a=i?t:n(t,e);o.length&&this.updateHoverStyle(o,s.mode,!1),a.length&&s.mode&&this.updateHoverStyle(a,s.mode,!0)}_eventHandler(t,e){const i={event:t,replay:e,cancelable:!0,inChartArea:this.isPointInArea(t)},s=e=>(e.options.events||this.options.events).includes(t.native.type);if(!1===this.notifyPlugins("beforeEvent",i,s))return;const n=this._handleEvent(t,e,i.inChartArea);return i.cancelable=!1,this.notifyPlugins("afterEvent",i,s),(n||i.changed)&&this.render(),this}_handleEvent(t,e,i){const{_active:s=[],options:n}=this,o=e,a=this._getActiveElements(t,s,i,o),r=D(t),l=function(t,e,i,s){return i&&"mouseout"!==t.type?s?e:t:null}(t,this._lastEvent,i,r);i&&(this._lastEvent=null,d(n.onHover,[t,a,this],this),r&&d(n.onClick,[t,a,this],this));const h=!f(a,s);return(h||e)&&(this._active=a,this._updateHoverStyles(a,s,e)),this._lastEvent=l,h}_getActiveElements(t,e,i,s){if("mouseout"===t.type)return[];if(!i)return e;const n=this.options.hover;return this.getElementsAtEventForMode(t,n.mode,n,s)}}function Ln(){return u(Tn.instances,(t=>t._plugins.invalidate()))}function En(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class Rn{static override(t){Object.assign(Rn.prototype,t)}options;constructor(t){this.options=t||{}}init(){}formats(){return En()}parse(){return En()}format(){return En()}add(){return En()}diff(){return En()}startOf(){return En()}endOf(){return En()}}var In={_date:Rn};function zn(t){const e=t.iScale,i=function(t,e){if(!t._cache.$bar){const i=t.getMatchingVisibleMetas(e);let s=[];for(let e=0,n=i.length;et-e)))}return t._cache.$bar}(e,t.type);let s,n,o,a,r=e._length;const l=()=>{32767!==o&&-32768!==o&&(k(a)&&(r=Math.min(r,Math.abs(o-a)||r)),a=o)};for(s=0,n=i.length;sMath.abs(r)&&(l=r,h=a),e[i.axis]=h,e._custom={barStart:l,barEnd:h,start:n,end:o,min:a,max:r}}(t,e,i,s):e[i.axis]=i.parse(t,s),e}function Vn(t,e,i,s){const n=t.iScale,o=t.vScale,a=n.getLabels(),r=n===o,l=[];let h,c,d,u;for(h=i,c=i+s;ht.x,i="left",s="right"):(e=t.base"spacing"!==t,_indexable:t=>"spacing"!==t&&!t.startsWith("borderDash")&&!t.startsWith("hoverBorderDash")};static overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data,{labels:{pointStyle:i,textAlign:s,color:n,useBorderRadius:o,borderRadius:a}}=t.legend.options;return e.labels.length&&e.datasets.length?e.labels.map(((e,r)=>{const l=t.getDatasetMeta(0).controller.getStyle(r);return{text:e,fillStyle:l.backgroundColor,fontColor:n,hidden:!t.getDataVisibility(r),lineDash:l.borderDash,lineDashOffset:l.borderDashOffset,lineJoin:l.borderJoinStyle,lineWidth:l.borderWidth,strokeStyle:l.borderColor,textAlign:s,pointStyle:i,borderRadius:o&&(a||l.borderRadius),index:r}})):[]}},onClick(t,e,i){i.chart.toggleDataVisibility(e.index),i.chart.update()}}}};constructor(t,e){super(t,e),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(t,e){const i=this.getDataset().data,s=this._cachedMeta;if(!1===this._parsing)s._parsed=i;else{let n,a,r=t=>+i[t];if(o(i[t])){const{key:t="value"}=this._parsing;r=e=>+M(i[e],t)}for(n=t,a=t+e;nJ(t,r,l,!0)?1:Math.max(e,e*i,s,s*i),g=(t,e,s)=>J(t,r,l,!0)?-1:Math.min(e,e*i,s,s*i),p=f(0,h,d),m=f(E,c,u),x=g(C,h,d),b=g(C+E,c,u);s=(p-x)/2,n=(m-b)/2,o=-(p+x)/2,a=-(m+b)/2}return{ratioX:s,ratioY:n,offsetX:o,offsetY:a}}(u,d,r),x=(i.width-o)/f,b=(i.height-o)/g,_=Math.max(Math.min(x,b)/2,0),y=c(this.options.radius,_),v=(y-Math.max(y*r,0))/this._getVisibleDatasetWeightTotal();this.offsetX=p*y,this.offsetY=m*y,s.total=this.calculateTotal(),this.outerRadius=y-v*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-v*l,0),this.updateElements(n,0,n.length,t)}_circumference(t,e){const i=this.options,s=this._cachedMeta,n=this._getCircumference();return e&&i.animation.animateRotate||!this.chart.getDataVisibility(t)||null===s._parsed[t]||s.data[t].hidden?0:this.calculateCircumference(s._parsed[t]*n/O)}updateElements(t,e,i,s){const n="reset"===s,o=this.chart,a=o.chartArea,r=o.options.animation,l=(a.left+a.right)/2,h=(a.top+a.bottom)/2,c=n&&r.animateScale,d=c?0:this.innerRadius,u=c?0:this.outerRadius,{sharedOptions:f,includeOptions:g}=this._getSharedOptions(e,s);let p,m=this._getRotation();for(p=0;p0&&!isNaN(t)?O*(Math.abs(t)/e):0}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart,s=i.data.labels||[],n=ne(e._parsed[t],i.options.locale);return{label:s[t]||"",value:n}}getMaxBorderWidth(t){let e=0;const i=this.chart;let s,n,o,a,r;if(!t)for(s=0,n=i.data.datasets.length;s{const o=t.getDatasetMeta(0).controller.getStyle(n);return{text:e,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,fontColor:s,lineWidth:o.borderWidth,pointStyle:i,hidden:!t.getDataVisibility(n),index:n}}))}return[]}},onClick(t,e,i){i.chart.toggleDataVisibility(e.index),i.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}};constructor(t,e){super(t,e),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart,s=i.data.labels||[],n=ne(e._parsed[t].r,i.options.locale);return{label:s[t]||"",value:n}}parseObjectData(t,e,i,s){return ii.bind(this)(t,e,i,s)}update(t){const e=this._cachedMeta.data;this._updateRadius(),this.updateElements(e,0,e.length,t)}getMinMax(){const t=this._cachedMeta,e={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return t.data.forEach(((t,i)=>{const s=this.getParsed(i).r;!isNaN(s)&&this.chart.getDataVisibility(i)&&(se.max&&(e.max=s))})),e}_updateRadius(){const t=this.chart,e=t.chartArea,i=t.options,s=Math.min(e.right-e.left,e.bottom-e.top),n=Math.max(s/2,0),o=(n-Math.max(i.cutoutPercentage?n/100*i.cutoutPercentage:1,0))/t.getVisibleDatasetCount();this.outerRadius=n-o*this.index,this.innerRadius=this.outerRadius-o}updateElements(t,e,i,s){const n="reset"===s,o=this.chart,a=o.options.animation,r=this._cachedMeta.rScale,l=r.xCenter,h=r.yCenter,c=r.getIndexAngle(0)-.5*C;let d,u=c;const f=360/this.countVisibleElements();for(d=0;d{!isNaN(this.getParsed(i).r)&&this.chart.getDataVisibility(i)&&e++})),e}_computeAngle(t,e,i){return this.chart.getDataVisibility(t)?$(this.resolveDataElementOptions(t,e).angle||i):0}}var Un=Object.freeze({__proto__:null,BarController:class extends js{static id="bar";static defaults={datasetElementType:!1,dataElementType:"bar",categoryPercentage:.8,barPercentage:.9,grouped:!0,animations:{numbers:{type:"number",properties:["x","y","base","width","height"]}}};static overrides={scales:{_index_:{type:"category",offset:!0,grid:{offset:!0}},_value_:{type:"linear",beginAtZero:!0}}};parsePrimitiveData(t,e,i,s){return Vn(t,e,i,s)}parseArrayData(t,e,i,s){return Vn(t,e,i,s)}parseObjectData(t,e,i,s){const{iScale:n,vScale:o}=t,{xAxisKey:a="x",yAxisKey:r="y"}=this._parsing,l="x"===n.axis?a:r,h="x"===o.axis?a:r,c=[];let d,u,f,g;for(d=i,u=i+s;dt.controller.options.grouped)),o=i.options.stacked,a=[],r=this._cachedMeta.controller.getParsed(e),l=r&&r[i.axis],h=t=>{const e=t._parsed.find((t=>t[i.axis]===l)),n=e&&e[t.vScale.axis];if(s(n)||isNaN(n))return!0};for(const i of n)if((void 0===e||!h(i))&&((!1===o||-1===a.indexOf(i.stack)||void 0===o&&void 0===i.stack)&&a.push(i.stack),i.index===t))break;return a.length||a.push(void 0),a}_getStackCount(t){return this._getStacks(void 0,t).length}_getAxisCount(){return this._getAxis().length}getFirstScaleIdForIndexAxis(){const t=this.chart.scales,e=this.chart.options.indexAxis;return Object.keys(t).filter((i=>t[i].axis===e)).shift()}_getAxis(){const t={},e=this.getFirstScaleIdForIndexAxis();for(const i of this.chart.data.datasets)t[l("x"===this.chart.options.indexAxis?i.xAxisID:i.yAxisID,e)]=!0;return Object.keys(t)}_getStackIndex(t,e,i){const s=this._getStacks(t,i),n=void 0!==e?s.indexOf(e):-1;return-1===n?s.length-1:n}_getRuler(){const t=this.options,e=this._cachedMeta,i=e.iScale,s=[];let n,o;for(n=0,o=e.data.length;n=i?1:-1)}(u,e,r)*a,f===r&&(x-=u/2);const t=e.getPixelForDecimal(0),s=e.getPixelForDecimal(1),o=Math.min(t,s),h=Math.max(t,s);x=Math.max(Math.min(x,h),o),d=x+u,i&&!c&&(l._stacks[e.axis]._visualValues[n]=e.getValueForPixel(d)-e.getValueForPixel(x))}if(x===e.getPixelForValue(r)){const t=F(u)*e.getLineWidthForValue(r)/2;x+=t,u-=t}return{size:u,base:x,head:d,center:d+u/2}}_calculateBarIndexPixels(t,e){const i=e.scale,n=this.options,o=n.skipNull,a=l(n.maxBarThickness,1/0);let r,h;const c=this._getAxisCount();if(e.grouped){const i=o?this._getStackCount(t):e.stackCount,d="flex"===n.barThickness?function(t,e,i,s){const n=e.pixels,o=n[t];let a=t>0?n[t-1]:null,r=t=0;--i)e=Math.max(e,t[i].size(this.resolveDataElementOptions(i))/2);return e>0&&e}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart.data.labels||[],{xScale:s,yScale:n}=e,o=this.getParsed(t),a=s.getLabelForValue(o.x),r=n.getLabelForValue(o.y),l=o._custom;return{label:i[t]||"",value:"("+a+", "+r+(l?", "+l:"")+")"}}update(t){const e=this._cachedMeta.data;this.updateElements(e,0,e.length,t)}updateElements(t,e,i,s){const n="reset"===s,{iScale:o,vScale:a}=this._cachedMeta,{sharedOptions:r,includeOptions:l}=this._getSharedOptions(e,s),h=o.axis,c=a.axis;for(let d=e;d0&&this.getParsed(e-1);for(let i=0;i<_;++i){const g=t[i],_=x?g:{};if(i=b){_.skip=!0;continue}const v=this.getParsed(i),M=s(v[f]),w=_[u]=a.getPixelForValue(v[u],i),k=_[f]=o||M?r.getBasePixel():r.getPixelForValue(l?this.applyStack(r,v,l):v[f],i);_.skip=isNaN(w)||isNaN(k)||M,_.stop=i>0&&Math.abs(v[u]-y[u])>m,p&&(_.parsed=v,_.raw=h.data[i]),d&&(_.options=c||this.resolveDataElementOptions(i,g.active?"active":n)),x||this.updateElement(g,i,_,n),y=v}}getMaxOverflow(){const t=this._cachedMeta,e=t.dataset,i=e.options&&e.options.borderWidth||0,s=t.data||[];if(!s.length)return i;const n=s[0].size(this.resolveDataElementOptions(0)),o=s[s.length-1].size(this.resolveDataElementOptions(s.length-1));return Math.max(i,n,o)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}},PieController:class extends $n{static id="pie";static defaults={cutout:0,rotation:0,circumference:360,radius:"100%"}},PolarAreaController:Yn,RadarController:class extends js{static id="radar";static defaults={datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}};static overrides={aspectRatio:1,scales:{r:{type:"radialLinear"}}};getLabelAndValue(t){const e=this._cachedMeta.vScale,i=this.getParsed(t);return{label:e.getLabels()[t],value:""+e.getLabelForValue(i[e.axis])}}parseObjectData(t,e,i,s){return ii.bind(this)(t,e,i,s)}update(t){const e=this._cachedMeta,i=e.dataset,s=e.data||[],n=e.iScale.getLabels();if(i.points=s,"resize"!==t){const e=this.resolveDatasetElementOptions(t);this.options.showLine||(e.borderWidth=0);const o={_loop:!0,_fullLoop:n.length===s.length,options:e};this.updateElement(i,void 0,o,t)}this.updateElements(s,0,s.length,t)}updateElements(t,e,i,s){const n=this._cachedMeta.rScale,o="reset"===s;for(let a=e;a0&&this.getParsed(e-1);for(let c=e;c0&&Math.abs(i[f]-_[f])>x,m&&(p.parsed=i,p.raw=h.data[c]),u&&(p.options=d||this.resolveDataElementOptions(c,e.active?"active":n)),b||this.updateElement(e,c,p,n),_=i}this.updateSharedOptions(d,n,c)}getMaxOverflow(){const t=this._cachedMeta,e=t.data||[];if(!this.options.showLine){let t=0;for(let i=e.length-1;i>=0;--i)t=Math.max(t,e[i].size(this.resolveDataElementOptions(i))/2);return t>0&&t}const i=t.dataset,s=i.options&&i.options.borderWidth||0;if(!e.length)return s;const n=e[0].size(this.resolveDataElementOptions(0)),o=e[e.length-1].size(this.resolveDataElementOptions(e.length-1));return Math.max(s,n,o)/2}}});function Xn(t,e,i,s){const n=vi(t.options.borderRadius,["outerStart","outerEnd","innerStart","innerEnd"]);const o=(i-e)/2,a=Math.min(o,s*e/2),r=t=>{const e=(i-Math.min(o,t))*s/2;return Z(t,0,Math.min(o,e))};return{outerStart:r(n.outerStart),outerEnd:r(n.outerEnd),innerStart:Z(n.innerStart,0,a),innerEnd:Z(n.innerEnd,0,a)}}function qn(t,e,i,s){return{x:i+t*Math.cos(e),y:s+t*Math.sin(e)}}function Kn(t,e,i,s,n,o){const{x:a,y:r,startAngle:l,pixelMargin:h,innerRadius:c}=e,d=Math.max(e.outerRadius+s+i-h,0),u=c>0?c+s+i+h:0;let f=0;const g=n-l;if(s){const t=((c>0?c-s:0)+(d>0?d-s:0))/2;f=(g-(0!==t?g*t/(t+s):g))/2}const p=(g-Math.max(.001,g*d-i/C)/d)/2,m=l+p+f,x=n-p-f,{outerStart:b,outerEnd:_,innerStart:y,innerEnd:v}=Xn(e,u,d,x-m),M=d-b,w=d-_,k=m+b/M,S=x-_/w,P=u+y,D=u+v,O=m+y/P,A=x-v/D;if(t.beginPath(),o){const e=(k+S)/2;if(t.arc(a,r,d,k,e),t.arc(a,r,d,e,S),_>0){const e=qn(w,S,a,r);t.arc(e.x,e.y,_,S,x+E)}const i=qn(D,x,a,r);if(t.lineTo(i.x,i.y),v>0){const e=qn(D,A,a,r);t.arc(e.x,e.y,v,x+E,A+Math.PI)}const s=(x-v/u+(m+y/u))/2;if(t.arc(a,r,u,x-v/u,s,!0),t.arc(a,r,u,s,m+y/u,!0),y>0){const e=qn(P,O,a,r);t.arc(e.x,e.y,y,O+Math.PI,m-E)}const n=qn(M,m,a,r);if(t.lineTo(n.x,n.y),b>0){const e=qn(M,k,a,r);t.arc(e.x,e.y,b,m-E,k)}}else{t.moveTo(a,r);const e=Math.cos(k)*d+a,i=Math.sin(k)*d+r;t.lineTo(e,i);const s=Math.cos(S)*d+a,n=Math.sin(S)*d+r;t.lineTo(s,n)}t.closePath()}function Gn(t,e,i,s,n){const{fullCircles:o,startAngle:a,circumference:r,options:l}=e,{borderWidth:h,borderJoinStyle:c,borderDash:d,borderDashOffset:u,borderRadius:f}=l,g="inner"===l.borderAlign;if(!h)return;t.setLineDash(d||[]),t.lineDashOffset=u,g?(t.lineWidth=2*h,t.lineJoin=c||"round"):(t.lineWidth=h,t.lineJoin=c||"bevel");let p=e.endAngle;if(o){Kn(t,e,i,s,p,n);for(let e=0;en?(h=n/l,t.arc(o,a,l,i+h,s-h,!0)):t.arc(o,a,n,i+E,s-E),t.closePath(),t.clip()}(t,e,p),l.selfJoin&&p-a>=C&&0===f&&"miter"!==c&&function(t,e,i){const{startAngle:s,x:n,y:o,outerRadius:a,innerRadius:r,options:l}=e,{borderWidth:h,borderJoinStyle:c}=l,d=Math.min(h/a,G(s-i));if(t.beginPath(),t.arc(n,o,a-h/2,s+d/2,i-d/2),r>0){const e=Math.min(h/r,G(s-i));t.arc(n,o,r+h/2,i-e/2,s+e/2,!0)}else{const e=Math.min(h/2,a*G(s-i));if("round"===c)t.arc(n,o,e,i-C/2,s+C/2,!0);else if("bevel"===c){const a=2*e*e,r=-a*Math.cos(i+C/2)+n,l=-a*Math.sin(i+C/2)+o,h=a*Math.cos(s+C/2)+n,c=a*Math.sin(s+C/2)+o;t.lineTo(r,l),t.lineTo(h,c)}}t.closePath(),t.moveTo(0,0),t.rect(0,0,t.canvas.width,t.canvas.height),t.clip("evenodd")}(t,e,p),o||(Kn(t,e,i,s,p,n),t.stroke())}function Jn(t,e,i=e){t.lineCap=l(i.borderCapStyle,e.borderCapStyle),t.setLineDash(l(i.borderDash,e.borderDash)),t.lineDashOffset=l(i.borderDashOffset,e.borderDashOffset),t.lineJoin=l(i.borderJoinStyle,e.borderJoinStyle),t.lineWidth=l(i.borderWidth,e.borderWidth),t.strokeStyle=l(i.borderColor,e.borderColor)}function Zn(t,e,i){t.lineTo(i.x,i.y)}function Qn(t,e,i={}){const s=t.length,{start:n=0,end:o=s-1}=i,{start:a,end:r}=e,l=Math.max(n,a),h=Math.min(o,r),c=nr&&o>r;return{count:s,start:l,loop:e.loop,ilen:h(a+(h?r-t:t))%o,_=()=>{f!==g&&(t.lineTo(m,g),t.lineTo(m,f),t.lineTo(m,p))};for(l&&(d=n[b(0)],t.moveTo(d.x,d.y)),c=0;c<=r;++c){if(d=n[b(c)],d.skip)continue;const e=d.x,i=d.y,s=0|e;s===u?(ig&&(g=i),m=(x*m+e)/++x):(_(),t.lineTo(e,i),u=s,x=0,f=g=i),p=i}_()}function io(t){const e=t.options,i=e.borderDash&&e.borderDash.length;return!(t._decimated||t._loop||e.tension||"monotone"===e.cubicInterpolationMode||e.stepped||i)?eo:to}const so="function"==typeof Path2D;function no(t,e,i,s){so&&!e.options.segment?function(t,e,i,s){let n=e._path;n||(n=e._path=new Path2D,e.path(n,i,s)&&n.closePath()),Jn(t,e.options),t.stroke(n)}(t,e,i,s):function(t,e,i,s){const{segments:n,options:o}=e,a=io(e);for(const r of n)Jn(t,o,r.style),t.beginPath(),a(t,e,r,{start:i,end:i+s-1})&&t.closePath(),t.stroke()}(t,e,i,s)}class oo extends $s{static id="line";static defaults={borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0};static defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};static descriptors={_scriptable:!0,_indexable:t=>"borderDash"!==t&&"fill"!==t};constructor(t){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,t&&Object.assign(this,t)}updateControlPoints(t,e){const i=this.options;if((i.tension||"monotone"===i.cubicInterpolationMode)&&!i.stepped&&!this._pointsUpdated){const s=i.spanGaps?this._loop:this._fullLoop;hi(this._points,i,t,s,e),this._pointsUpdated=!0}}set points(t){this._points=t,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=zi(this,this.options.segment))}first(){const t=this.segments,e=this.points;return t.length&&e[t[0].start]}last(){const t=this.segments,e=this.points,i=t.length;return i&&e[t[i-1].end]}interpolate(t,e){const i=this.options,s=t[e],n=this.points,o=Ii(this,{property:e,start:s,end:s});if(!o.length)return;const a=[],r=function(t){return t.stepped?pi:t.tension||"monotone"===t.cubicInterpolationMode?mi:gi}(i);let l,h;for(l=0,h=o.length;l"borderDash"!==t};circumference;endAngle;fullCircles;innerRadius;outerRadius;pixelMargin;startAngle;constructor(t){super(),this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,t&&Object.assign(this,t)}inRange(t,e,i){const s=this.getProps(["x","y"],i),{angle:n,distance:o}=X(s,{x:t,y:e}),{startAngle:a,endAngle:r,innerRadius:h,outerRadius:c,circumference:d}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],i),u=(this.options.spacing+this.options.borderWidth)/2,f=l(d,r-a),g=J(n,a,r)&&a!==r,p=f>=O||g,m=tt(o,h+u,c+u);return p&&m}getCenterPoint(t){const{x:e,y:i,startAngle:s,endAngle:n,innerRadius:o,outerRadius:a}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],t),{offset:r,spacing:l}=this.options,h=(s+n)/2,c=(o+a+l+r)/2;return{x:e+Math.cos(h)*c,y:i+Math.sin(h)*c}}tooltipPosition(t){return this.getCenterPoint(t)}draw(t){const{options:e,circumference:i}=this,s=(e.offset||0)/4,n=(e.spacing||0)/2,o=e.circular;if(this.pixelMargin="inner"===e.borderAlign?.33:0,this.fullCircles=i>O?Math.floor(i/O):0,0===i||this.innerRadius<0||this.outerRadius<0)return;t.save();const a=(this.startAngle+this.endAngle)/2;t.translate(Math.cos(a)*s,Math.sin(a)*s);const r=s*(1-Math.sin(Math.min(C,i||0)));t.fillStyle=e.backgroundColor,t.strokeStyle=e.borderColor,function(t,e,i,s,n){const{fullCircles:o,startAngle:a,circumference:r}=e;let l=e.endAngle;if(o){Kn(t,e,i,s,l,n);for(let e=0;e("string"==typeof e?(i=t.push(e)-1,s.unshift({index:i,label:e})):isNaN(e)&&(i=null),i))(t,e,i,s);return n!==t.lastIndexOf(e)?i:n}function mo(t){const e=this.getLabels();return t>=0&&ts=e?s:t,a=t=>n=i?n:t;if(t){const t=F(s),e=F(n);t<0&&e<0?a(0):t>0&&e>0&&o(0)}if(s===n){let e=0===n?1:Math.abs(.05*n);a(n+e),t||o(s-e)}this.min=s,this.max=n}getTickLimit(){const t=this.options.ticks;let e,{maxTicksLimit:i,stepSize:s}=t;return s?(e=Math.ceil(this.max/s)-Math.floor(this.min/s)+1,e>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${s} would result generating up to ${e} ticks. Limiting to 1000.`),e=1e3)):(e=this.computeTickLimit(),i=i||11),i&&(e=Math.min(i,e)),e}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,e=t.ticks;let i=this.getTickLimit();i=Math.max(2,i);const n=function(t,e){const i=[],{bounds:n,step:o,min:a,max:r,precision:l,count:h,maxTicks:c,maxDigits:d,includeBounds:u}=t,f=o||1,g=c-1,{min:p,max:m}=e,x=!s(a),b=!s(r),_=!s(h),y=(m-p)/(d+1);let v,M,w,k,S=B((m-p)/g/f)*f;if(S<1e-14&&!x&&!b)return[{value:p},{value:m}];k=Math.ceil(m/S)-Math.floor(p/S),k>g&&(S=B(k*S/g/f)*f),s(l)||(v=Math.pow(10,l),S=Math.ceil(S*v)/v),"ticks"===n?(M=Math.floor(p/S)*S,w=Math.ceil(m/S)*S):(M=p,w=m),x&&b&&o&&H((r-a)/o,S/1e3)?(k=Math.round(Math.min((r-a)/S,c)),S=(r-a)/k,M=a,w=r):_?(M=x?a:M,w=b?r:w,k=h-1,S=(w-M)/k):(k=(w-M)/S,k=V(k,Math.round(k),S/1e3)?Math.round(k):Math.ceil(k));const P=Math.max(U(S),U(M));v=Math.pow(10,s(l)?P:l),M=Math.round(M*v)/v,w=Math.round(w*v)/v;let D=0;for(x&&(u&&M!==a?(i.push({value:a}),Mr)break;i.push({value:t})}return b&&u&&w!==r?i.length&&V(i[i.length-1].value,r,xo(r,y,t))?i[i.length-1].value=r:i.push({value:r}):b&&w!==r||i.push({value:w}),i}({maxTicks:i,bounds:t.bounds,min:t.min,max:t.max,precision:e.precision,step:e.stepSize,count:e.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:e.minRotation||0,includeBounds:!1!==e.includeBounds},this._range||this);return"ticks"===t.bounds&&j(n,this,"value"),t.reverse?(n.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),n}configure(){const t=this.ticks;let e=this.min,i=this.max;if(super.configure(),this.options.offset&&t.length){const s=(i-e)/Math.max(t.length-1,1)/2;e-=s,i+=s}this._startValue=e,this._endValue=i,this._valueRange=i-e}getLabelForValue(t){return ne(t,this.chart.options.locale,this.options.ticks.format)}}class _o extends bo{static id="linear";static defaults={ticks:{callback:ae.formatters.numeric}};determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=a(t)?t:0,this.max=a(e)?e:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),e=t?this.width:this.height,i=$(this.options.ticks.minRotation),s=(t?Math.sin(i):Math.cos(i))||.001,n=this._resolveTickFontOptions(0);return Math.ceil(e/Math.min(40,n.lineHeight/s))}getPixelForValue(t){return null===t?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}const yo=t=>Math.floor(z(t)),vo=(t,e)=>Math.pow(10,yo(t)+e);function Mo(t){return 1===t/Math.pow(10,yo(t))}function wo(t,e,i){const s=Math.pow(10,i),n=Math.floor(t/s);return Math.ceil(e/s)-n}function ko(t,{min:e,max:i}){e=r(t.min,e);const s=[],n=yo(e);let o=function(t,e){let i=yo(e-t);for(;wo(t,e,i)>10;)i++;for(;wo(t,e,i)<10;)i--;return Math.min(i,yo(t))}(e,i),a=o<0?Math.pow(10,Math.abs(o)):1;const l=Math.pow(10,o),h=n>o?Math.pow(10,n):0,c=Math.round((e-h)*a)/a,d=Math.floor((e-h)/l/10)*l*10;let u=Math.floor((c-d)/Math.pow(10,o)),f=r(t.min,Math.round((h+d+u*Math.pow(10,o))*a)/a);for(;f=10?u=u<15?15:20:u++,u>=20&&(o++,u=2,a=o>=0?1:a),f=Math.round((h+d+u*Math.pow(10,o))*a)/a;const g=r(t.max,f);return s.push({value:g,major:Mo(g),significand:u}),s}class So extends tn{static id="logarithmic";static defaults={ticks:{callback:ae.formatters.logarithmic,major:{enabled:!0}}};constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(t,e){const i=bo.prototype.parse.apply(this,[t,e]);if(0!==i)return a(i)&&i>0?i:null;this._zero=!0}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=a(t)?Math.max(0,t):null,this.max=a(e)?Math.max(0,e):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!a(this._userMin)&&(this.min=t===vo(this.min,0)?vo(this.min,-1):vo(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let i=this.min,s=this.max;const n=e=>i=t?i:e,o=t=>s=e?s:t;i===s&&(i<=0?(n(1),o(10)):(n(vo(i,-1)),o(vo(s,1)))),i<=0&&n(vo(s,-1)),s<=0&&o(vo(i,1)),this.min=i,this.max=s}buildTicks(){const t=this.options,e=ko({min:this._userMin,max:this._userMax},this);return"ticks"===t.bounds&&j(e,this,"value"),t.reverse?(e.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),e}getLabelForValue(t){return void 0===t?"0":ne(t,this.chart.options.locale,this.options.ticks.format)}configure(){const t=this.min;super.configure(),this._startValue=z(t),this._valueRange=z(this.max)-z(t)}getPixelForValue(t){return void 0!==t&&0!==t||(t=this.min),null===t||isNaN(t)?NaN:this.getPixelForDecimal(t===this.min?0:(z(t)-this._startValue)/this._valueRange)}getValueForPixel(t){const e=this.getDecimalForPixel(t);return Math.pow(10,this._startValue+e*this._valueRange)}}function Po(t){const e=t.ticks;if(e.display&&t.display){const t=ki(e.backdropPadding);return l(e.font&&e.font.size,ue.font.size)+t.height}return 0}function Do(t,e,i,s,n){return t===s||t===n?{start:e-i/2,end:e+i/2}:tn?{start:e-i,end:e}:{start:e,end:e+i}}function Co(t){const e={l:t.left+t._padding.left,r:t.right-t._padding.right,t:t.top+t._padding.top,b:t.bottom-t._padding.bottom},i=Object.assign({},e),s=[],o=[],a=t._pointLabels.length,r=t.options.pointLabels,l=r.centerPointLabels?C/a:0;for(let u=0;ue.r&&(r=(s.end-e.r)/o,t.r=Math.max(t.r,e.r+r)),n.starte.b&&(l=(n.end-e.b)/a,t.b=Math.max(t.b,e.b+l))}function Ao(t,e,i){const s=t.drawingArea,{extra:n,additionalAngle:o,padding:a,size:r}=i,l=t.getPointPosition(e,s+n+a,o),h=Math.round(Y(G(l.angle+E))),c=function(t,e,i){90===i||270===i?t-=e/2:(i>270||i<90)&&(t-=e);return t}(l.y,r.h,h),d=function(t){if(0===t||180===t)return"center";if(t<180)return"left";return"right"}(h),u=function(t,e,i){"right"===i?t-=e:"center"===i&&(t-=e/2);return t}(l.x,r.w,d);return{visible:!0,x:l.x,y:c,textAlign:d,left:u,top:c,right:u+r.w,bottom:c+r.h}}function To(t,e){if(!e)return!0;const{left:i,top:s,right:n,bottom:o}=t;return!(Re({x:i,y:s},e)||Re({x:i,y:o},e)||Re({x:n,y:s},e)||Re({x:n,y:o},e))}function Lo(t,e,i){const{left:n,top:o,right:a,bottom:r}=i,{backdropColor:l}=e;if(!s(l)){const i=wi(e.borderRadius),s=ki(e.backdropPadding);t.fillStyle=l;const h=n-s.left,c=o-s.top,d=a-n+s.width,u=r-o+s.height;Object.values(i).some((t=>0!==t))?(t.beginPath(),He(t,{x:h,y:c,w:d,h:u,radius:i}),t.fill()):t.fillRect(h,c,d,u)}}function Eo(t,e,i,s){const{ctx:n}=t;if(i)n.arc(t.xCenter,t.yCenter,e,0,O);else{let i=t.getPointPosition(0,e);n.moveTo(i.x,i.y);for(let o=1;ot,padding:5,centerPointLabels:!1}};static defaultRoutes={"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"};static descriptors={angleLines:{_fallback:"grid"}};constructor(t){super(t),this.xCenter=void 0,this.yCenter=void 0,this.drawingArea=void 0,this._pointLabels=[],this._pointLabelItems=[]}setDimensions(){const t=this._padding=ki(Po(this.options)/2),e=this.width=this.maxWidth-t.width,i=this.height=this.maxHeight-t.height;this.xCenter=Math.floor(this.left+e/2+t.left),this.yCenter=Math.floor(this.top+i/2+t.top),this.drawingArea=Math.floor(Math.min(e,i)/2)}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!1);this.min=a(t)&&!isNaN(t)?t:0,this.max=a(e)&&!isNaN(e)?e:0,this.handleTickRangeOptions()}computeTickLimit(){return Math.ceil(this.drawingArea/Po(this.options))}generateTickLabels(t){bo.prototype.generateTickLabels.call(this,t),this._pointLabels=this.getLabels().map(((t,e)=>{const i=d(this.options.pointLabels.callback,[t,e],this);return i||0===i?i:""})).filter(((t,e)=>this.chart.getDataVisibility(e)))}fit(){const t=this.options;t.display&&t.pointLabels.display?Co(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(t,e,i,s){this.xCenter+=Math.floor((t-e)/2),this.yCenter+=Math.floor((i-s)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(t,e,i,s))}getIndexAngle(t){return G(t*(O/(this._pointLabels.length||1))+$(this.options.startAngle||0))}getDistanceFromCenterForValue(t){if(s(t))return NaN;const e=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-t)*e:(t-this.min)*e}getValueForDistanceFromCenter(t){if(s(t))return NaN;const e=t/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-e:this.min+e}getPointLabelContext(t){const e=this._pointLabels||[];if(t>=0&&t=0;n--){const e=t._pointLabelItems[n];if(!e.visible)continue;const o=s.setContext(t.getPointLabelContext(n));Lo(i,o,e);const a=Si(o.font),{x:r,y:l,textAlign:h}=e;Ne(i,t._pointLabels[n],r,l+a.lineHeight/2,a,{color:o.color,textAlign:h,textBaseline:"middle"})}}(this,o),s.display&&this.ticks.forEach(((t,e)=>{if(0!==e||0===e&&this.min<0){r=this.getDistanceFromCenterForValue(t.value);const i=this.getContext(e),a=s.setContext(i),l=n.setContext(i);!function(t,e,i,s,n){const o=t.ctx,a=e.circular,{color:r,lineWidth:l}=e;!a&&!s||!r||!l||i<0||(o.save(),o.strokeStyle=r,o.lineWidth=l,o.setLineDash(n.dash||[]),o.lineDashOffset=n.dashOffset,o.beginPath(),Eo(t,i,a,s),o.closePath(),o.stroke(),o.restore())}(this,a,r,o,l)}})),i.display){for(t.save(),a=o-1;a>=0;a--){const s=i.setContext(this.getPointLabelContext(a)),{color:n,lineWidth:o}=s;o&&n&&(t.lineWidth=o,t.strokeStyle=n,t.setLineDash(s.borderDash),t.lineDashOffset=s.borderDashOffset,r=this.getDistanceFromCenterForValue(e.reverse?this.min:this.max),l=this.getPointPosition(a,r),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(l.x,l.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,e=this.options,i=e.ticks;if(!i.display)return;const s=this.getIndexAngle(0);let n,o;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(s),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach(((s,a)=>{if(0===a&&this.min>=0&&!e.reverse)return;const r=i.setContext(this.getContext(a)),l=Si(r.font);if(n=this.getDistanceFromCenterForValue(this.ticks[a].value),r.showLabelBackdrop){t.font=l.string,o=t.measureText(s.label).width,t.fillStyle=r.backdropColor;const e=ki(r.backdropPadding);t.fillRect(-o/2-e.left,-n-l.size/2-e.top,o+e.width,l.size+e.height)}Ne(t,s.label,0,-n,l,{color:r.color,strokeColor:r.textStrokeColor,strokeWidth:r.textStrokeWidth})})),t.restore()}drawTitle(){}}const Io={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},zo=Object.keys(Io);function Fo(t,e){return t-e}function Vo(t,e){if(s(e))return null;const i=t._adapter,{parser:n,round:o,isoWeekday:r}=t._parseOpts;let l=e;return"function"==typeof n&&(l=n(l)),a(l)||(l="string"==typeof n?i.parse(l,n):i.parse(l)),null===l?null:(o&&(l="week"!==o||!N(r)&&!0!==r?i.startOf(l,o):i.startOf(l,"isoWeek",r)),+l)}function Bo(t,e,i,s){const n=zo.length;for(let o=zo.indexOf(t);o=e?i[s]:i[n]]=!0}}else t[e]=!0}function No(t,e,i){const s=[],n={},o=e.length;let a,r;for(a=0;a=0&&(e[l].major=!0);return e}(t,s,n,i):s}class Ho extends tn{static id="time";static defaults={bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",callback:!1,major:{enabled:!1}}};constructor(t){super(t),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(t,e={}){const i=t.time||(t.time={}),s=this._adapter=new In._date(t.adapters.date);s.init(e),b(i.displayFormats,s.formats()),this._parseOpts={parser:i.parser,round:i.round,isoWeekday:i.isoWeekday},super.init(t),this._normalized=e.normalized}parse(t,e){return void 0===t?null:Vo(this,t)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const t=this.options,e=this._adapter,i=t.time.unit||"day";let{min:s,max:n,minDefined:o,maxDefined:r}=this.getUserBounds();function l(t){o||isNaN(t.min)||(s=Math.min(s,t.min)),r||isNaN(t.max)||(n=Math.max(n,t.max))}o&&r||(l(this._getLabelBounds()),"ticks"===t.bounds&&"labels"===t.ticks.source||l(this.getMinMax(!1))),s=a(s)&&!isNaN(s)?s:+e.startOf(Date.now(),i),n=a(n)&&!isNaN(n)?n:+e.endOf(Date.now(),i)+1,this.min=Math.min(s,n-1),this.max=Math.max(s+1,n)}_getLabelBounds(){const t=this.getLabelTimestamps();let e=Number.POSITIVE_INFINITY,i=Number.NEGATIVE_INFINITY;return t.length&&(e=t[0],i=t[t.length-1]),{min:e,max:i}}buildTicks(){const t=this.options,e=t.time,i=t.ticks,s="labels"===i.source?this.getLabelTimestamps():this._generate();"ticks"===t.bounds&&s.length&&(this.min=this._userMin||s[0],this.max=this._userMax||s[s.length-1]);const n=this.min,o=nt(s,n,this.max);return this._unit=e.unit||(i.autoSkip?Bo(e.minUnit,this.min,this.max,this._getLabelCapacity(n)):function(t,e,i,s,n){for(let o=zo.length-1;o>=zo.indexOf(i);o--){const i=zo[o];if(Io[i].common&&t._adapter.diff(n,s,i)>=e-1)return i}return zo[i?zo.indexOf(i):0]}(this,o.length,e.minUnit,this.min,this.max)),this._majorUnit=i.major.enabled&&"year"!==this._unit?function(t){for(let e=zo.indexOf(t)+1,i=zo.length;e+t.value)))}initOffsets(t=[]){let e,i,s=0,n=0;this.options.offset&&t.length&&(e=this.getDecimalForValue(t[0]),s=1===t.length?1-e:(this.getDecimalForValue(t[1])-e)/2,i=this.getDecimalForValue(t[t.length-1]),n=1===t.length?i:(i-this.getDecimalForValue(t[t.length-2]))/2);const o=t.length<3?.5:.25;s=Z(s,0,o),n=Z(n,0,o),this._offsets={start:s,end:n,factor:1/(s+1+n)}}_generate(){const t=this._adapter,e=this.min,i=this.max,s=this.options,n=s.time,o=n.unit||Bo(n.minUnit,e,i,this._getLabelCapacity(e)),a=l(s.ticks.stepSize,1),r="week"===o&&n.isoWeekday,h=N(r)||!0===r,c={};let d,u,f=e;if(h&&(f=+t.startOf(f,"isoWeek",r)),f=+t.startOf(f,h?"day":o),t.diff(i,e,o)>1e5*a)throw new Error(e+" and "+i+" are too far apart with stepSize of "+a+" "+o);const g="data"===s.ticks.source&&this.getDataTimestamps();for(d=f,u=0;d+t))}getLabelForValue(t){const e=this._adapter,i=this.options.time;return i.tooltipFormat?e.format(t,i.tooltipFormat):e.format(t,i.displayFormats.datetime)}format(t,e){const i=this.options.time.displayFormats,s=this._unit,n=e||i[s];return this._adapter.format(t,n)}_tickFormatFunction(t,e,i,s){const n=this.options,o=n.ticks.callback;if(o)return d(o,[t,e,i],this);const a=n.time.displayFormats,r=this._unit,l=this._majorUnit,h=r&&a[r],c=l&&a[l],u=i[e],f=l&&c&&u&&u.major;return this._adapter.format(t,s||(f?c:h))}generateTickLabels(t){let e,i,s;for(e=0,i=t.length;e0?a:1}getDataTimestamps(){let t,e,i=this._cache.data||[];if(i.length)return i;const s=this.getMatchingVisibleMetas();if(this._normalized&&s.length)return this._cache.data=s[0].controller.getAllParsedValues(this);for(t=0,e=s.length;t=t[r].pos&&e<=t[l].pos&&({lo:r,hi:l}=it(t,"pos",e)),({pos:s,time:o}=t[r]),({pos:n,time:a}=t[l])):(e>=t[r].time&&e<=t[l].time&&({lo:r,hi:l}=it(t,"time",e)),({time:s,pos:o}=t[r]),({time:n,pos:a}=t[l]));const h=n-s;return h?o+(a-o)*(e-s)/h:o}var $o=Object.freeze({__proto__:null,CategoryScale:class extends tn{static id="category";static defaults={ticks:{callback:mo}};constructor(t){super(t),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(t){const e=this._addedLabels;if(e.length){const t=this.getLabels();for(const{index:i,label:s}of e)t[i]===s&&t.splice(i,1);this._addedLabels=[]}super.init(t)}parse(t,e){if(s(t))return null;const i=this.getLabels();return((t,e)=>null===t?null:Z(Math.round(t),0,e))(e=isFinite(e)&&i[e]===t?e:po(i,t,l(e,t),this._addedLabels),i.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let{min:i,max:s}=this.getMinMax(!0);"ticks"===this.options.bounds&&(t||(i=0),e||(s=this.getLabels().length-1)),this.min=i,this.max=s}buildTicks(){const t=this.min,e=this.max,i=this.options.offset,s=[];let n=this.getLabels();n=0===t&&e===n.length-1?n:n.slice(t,e+1),this._valueRange=Math.max(n.length-(i?0:1),1),this._startValue=this.min-(i?.5:0);for(let i=t;i<=e;i++)s.push({value:i});return s}getLabelForValue(t){return mo.call(this,t)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(t){return"number"!=typeof t&&(t=this.parse(t)),null===t?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}},LinearScale:_o,LogarithmicScale:So,RadialLinearScale:Ro,TimeScale:Ho,TimeSeriesScale:class extends Ho{static id="timeseries";static defaults=Ho.defaults;constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),e=this._table=this.buildLookupTable(t);this._minPos=jo(e,this.min),this._tableRange=jo(e,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:e,max:i}=this,s=[],n=[];let o,a,r,l,h;for(o=0,a=t.length;o=e&&l<=i&&s.push(l);if(s.length<2)return[{time:e,pos:0},{time:i,pos:1}];for(o=0,a=s.length;ot-e))}_getTimestampsForTable(){let t=this._cache.all||[];if(t.length)return t;const e=this.getDataTimestamps(),i=this.getLabelTimestamps();return t=e.length&&i.length?this.normalize(e.concat(i)):e.length?e:i,t=this._cache.all=t,t}getDecimalForValue(t){return(jo(this._table,t)-this._minPos)/this._tableRange}getValueForPixel(t){const e=this._offsets,i=this.getDecimalForPixel(t)/e.factor-e.end;return jo(this._table,i*this._tableRange+this._minPos,!0)}}});const Yo=["rgb(54, 162, 235)","rgb(255, 99, 132)","rgb(255, 159, 64)","rgb(255, 205, 86)","rgb(75, 192, 192)","rgb(153, 102, 255)","rgb(201, 203, 207)"],Uo=Yo.map((t=>t.replace("rgb(","rgba(").replace(")",", 0.5)")));function Xo(t){return Yo[t%Yo.length]}function qo(t){return Uo[t%Uo.length]}function Ko(t){let e=0;return(i,s)=>{const n=t.getDatasetMeta(s).controller;n instanceof $n?e=function(t,e){return t.backgroundColor=t.data.map((()=>Xo(e++))),e}(i,e):n instanceof Yn?e=function(t,e){return t.backgroundColor=t.data.map((()=>qo(e++))),e}(i,e):n&&(e=function(t,e){return t.borderColor=Xo(e),t.backgroundColor=qo(e),++e}(i,e))}}function Go(t){let e;for(e in t)if(t[e].borderColor||t[e].backgroundColor)return!0;return!1}var Jo={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(t,e,i){if(!i.enabled)return;const{data:{datasets:s},options:n}=t.config,{elements:o}=n,a=Go(s)||(r=n)&&(r.borderColor||r.backgroundColor)||o&&Go(o)||"rgba(0,0,0,0.1)"!==ue.borderColor||"rgba(0,0,0,0.1)"!==ue.backgroundColor;var r;if(!i.forceOverride&&a)return;const l=Ko(t);s.forEach(l)}};function Zo(t){if(t._decimated){const e=t._data;delete t._decimated,delete t._data,Object.defineProperty(t,"data",{configurable:!0,enumerable:!0,writable:!0,value:e})}}function Qo(t){t.data.datasets.forEach((t=>{Zo(t)}))}var ta={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(t,e,i)=>{if(!i.enabled)return void Qo(t);const n=t.width;t.data.datasets.forEach(((e,o)=>{const{_data:a,indexAxis:r}=e,l=t.getDatasetMeta(o),h=a||e.data;if("y"===Pi([r,t.options.indexAxis]))return;if(!l.controller.supportsDecimation)return;const c=t.scales[l.xAxisID];if("linear"!==c.type&&"time"!==c.type)return;if(t.options.parsing)return;let{start:d,count:u}=function(t,e){const i=e.length;let s,n=0;const{iScale:o}=t,{min:a,max:r,minDefined:l,maxDefined:h}=o.getUserBounds();return l&&(n=Z(it(e,o.axis,a).lo,0,i-1)),s=h?Z(it(e,o.axis,r).hi+1,n,i)-n:i-n,{start:n,count:s}}(l,h);if(u<=(i.threshold||4*n))return void Zo(e);let f;switch(s(a)&&(e._data=h,delete e.data,Object.defineProperty(e,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(t){this._data=t}})),i.algorithm){case"lttb":f=function(t,e,i,s,n){const o=n.samples||s;if(o>=i)return t.slice(e,e+i);const a=[],r=(i-2)/(o-2);let l=0;const h=e+i-1;let c,d,u,f,g,p=e;for(a[l++]=t[p],c=0;cu&&(u=f,d=t[s],g=s);a[l++]=d,p=g}return a[l++]=t[h],a}(h,d,u,n,i);break;case"min-max":f=function(t,e,i,n){let o,a,r,l,h,c,d,u,f,g,p=0,m=0;const x=[],b=e+i-1,_=t[e].x,y=t[b].x-_;for(o=e;og&&(g=l,d=o),p=(m*p+a.x)/++m;else{const i=o-1;if(!s(c)&&!s(d)){const e=Math.min(c,d),s=Math.max(c,d);e!==u&&e!==i&&x.push({...t[e],x:p}),s!==u&&s!==i&&x.push({...t[s],x:p})}o>0&&i!==u&&x.push(t[i]),x.push(a),h=e,m=0,f=g=l,c=d=u=o}}return x}(h,d,u,n);break;default:throw new Error(`Unsupported decimation algorithm '${i.algorithm}'`)}e._decimated=f}))},destroy(t){Qo(t)}};function ea(t,e,i,s){if(s)return;let n=e[t],o=i[t];return"angle"===t&&(n=G(n),o=G(o)),{property:t,start:n,end:o}}function ia(t,e,i){for(;e>t;e--){const t=i[e];if(!isNaN(t.x)&&!isNaN(t.y))break}return e}function sa(t,e,i,s){return t&&e?s(t[i],e[i]):t?t[i]:e?e[i]:0}function na(t,e){let i=[],s=!1;return n(t)?(s=!0,i=t):i=function(t,e){const{x:i=null,y:s=null}=t||{},n=e.points,o=[];return e.segments.forEach((({start:t,end:e})=>{e=ia(t,e,n);const a=n[t],r=n[e];null!==s?(o.push({x:a.x,y:s}),o.push({x:r.x,y:s})):null!==i&&(o.push({x:i,y:a.y}),o.push({x:i,y:r.y}))})),o}(t,e),i.length?new oo({points:i,options:{tension:0},_loop:s,_fullLoop:s}):null}function oa(t){return t&&!1!==t.fill}function aa(t,e,i){let s=t[e].fill;const n=[e];let o;if(!i)return s;for(;!1!==s&&-1===n.indexOf(s);){if(!a(s))return s;if(o=t[s],!o)return!1;if(o.visible)return s;n.push(s),s=o.fill}return!1}function ra(t,e,i){const s=function(t){const e=t.options,i=e.fill;let s=l(i&&i.target,i);void 0===s&&(s=!!e.backgroundColor);if(!1===s||null===s)return!1;if(!0===s)return"origin";return s}(t);if(o(s))return!isNaN(s.value)&&s;let n=parseFloat(s);return a(n)&&Math.floor(n)===n?function(t,e,i,s){"-"!==t&&"+"!==t||(i=e+i);if(i===e||i<0||i>=s)return!1;return i}(s[0],e,n,i):["origin","start","end","stack","shape"].indexOf(s)>=0&&s}function la(t,e,i){const s=[];for(let n=0;n=0;--e){const i=n[e].$filler;i&&(i.line.updateControlPoints(o,i.axis),s&&i.fill&&ua(t.ctx,i,o))}},beforeDatasetsDraw(t,e,i){if("beforeDatasetsDraw"!==i.drawTime)return;const s=t.getSortedVisibleDatasetMetas();for(let e=s.length-1;e>=0;--e){const i=s[e].$filler;oa(i)&&ua(t.ctx,i,t.chartArea)}},beforeDatasetDraw(t,e,i){const s=e.meta.$filler;oa(s)&&"beforeDatasetDraw"===i.drawTime&&ua(t.ctx,s,t.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const _a=(t,e)=>{let{boxHeight:i=e,boxWidth:s=e}=t;return t.usePointStyle&&(i=Math.min(i,e),s=t.pointStyleWidth||Math.min(s,e)),{boxWidth:s,boxHeight:i,itemHeight:Math.max(e,i)}};class ya extends $s{constructor(t){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e,i){this.maxWidth=t,this.maxHeight=e,this._margins=i,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const t=this.options.labels||{};let e=d(t.generateLabels,[this.chart],this)||[];t.filter&&(e=e.filter((e=>t.filter(e,this.chart.data)))),t.sort&&(e=e.sort(((e,i)=>t.sort(e,i,this.chart.data)))),this.options.reverse&&e.reverse(),this.legendItems=e}fit(){const{options:t,ctx:e}=this;if(!t.display)return void(this.width=this.height=0);const i=t.labels,s=Si(i.font),n=s.size,o=this._computeTitleHeight(),{boxWidth:a,itemHeight:r}=_a(i,n);let l,h;e.font=s.string,this.isHorizontal()?(l=this.maxWidth,h=this._fitRows(o,n,a,r)+10):(h=this.maxHeight,l=this._fitCols(o,s,a,r)+10),this.width=Math.min(l,t.maxWidth||this.maxWidth),this.height=Math.min(h,t.maxHeight||this.maxHeight)}_fitRows(t,e,i,s){const{ctx:n,maxWidth:o,options:{labels:{padding:a}}}=this,r=this.legendHitBoxes=[],l=this.lineWidths=[0],h=s+a;let c=t;n.textAlign="left",n.textBaseline="middle";let d=-1,u=-h;return this.legendItems.forEach(((t,f)=>{const g=i+e/2+n.measureText(t.text).width;(0===f||l[l.length-1]+g+2*a>o)&&(c+=h,l[l.length-(f>0?0:1)]=0,u+=h,d++),r[f]={left:0,top:u,row:d,width:g,height:s},l[l.length-1]+=g+a})),c}_fitCols(t,e,i,s){const{ctx:n,maxHeight:o,options:{labels:{padding:a}}}=this,r=this.legendHitBoxes=[],l=this.columnSizes=[],h=o-t;let c=a,d=0,u=0,f=0,g=0;return this.legendItems.forEach(((t,o)=>{const{itemWidth:p,itemHeight:m}=function(t,e,i,s,n){const o=function(t,e,i,s){let n=t.text;n&&"string"!=typeof n&&(n=n.reduce(((t,e)=>t.length>e.length?t:e)));return e+i.size/2+s.measureText(n).width}(s,t,e,i),a=function(t,e,i){let s=t;"string"!=typeof e.text&&(s=va(e,i));return s}(n,s,e.lineHeight);return{itemWidth:o,itemHeight:a}}(i,e,n,t,s);o>0&&u+m+2*a>h&&(c+=d+a,l.push({width:d,height:u}),f+=d+a,g++,d=u=0),r[o]={left:f,top:u,col:g,width:p,height:m},d=Math.max(d,p),u+=m+a})),c+=d,l.push({width:d,height:u}),c}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:e,options:{align:i,labels:{padding:s},rtl:n}}=this,o=Oi(n,this.left,this.width);if(this.isHorizontal()){let n=0,a=ft(i,this.left+s,this.right-this.lineWidths[n]);for(const r of e)n!==r.row&&(n=r.row,a=ft(i,this.left+s,this.right-this.lineWidths[n])),r.top+=this.top+t+s,r.left=o.leftForLtr(o.x(a),r.width),a+=r.width+s}else{let n=0,a=ft(i,this.top+t+s,this.bottom-this.columnSizes[n].height);for(const r of e)r.col!==n&&(n=r.col,a=ft(i,this.top+t+s,this.bottom-this.columnSizes[n].height)),r.top=a,r.left+=this.left+s,r.left=o.leftForLtr(o.x(r.left),r.width),a+=r.height+s}}isHorizontal(){return"top"===this.options.position||"bottom"===this.options.position}draw(){if(this.options.display){const t=this.ctx;Ie(t,this),this._draw(),ze(t)}}_draw(){const{options:t,columnSizes:e,lineWidths:i,ctx:s}=this,{align:n,labels:o}=t,a=ue.color,r=Oi(t.rtl,this.left,this.width),h=Si(o.font),{padding:c}=o,d=h.size,u=d/2;let f;this.drawTitle(),s.textAlign=r.textAlign("left"),s.textBaseline="middle",s.lineWidth=.5,s.font=h.string;const{boxWidth:g,boxHeight:p,itemHeight:m}=_a(o,d),x=this.isHorizontal(),b=this._computeTitleHeight();f=x?{x:ft(n,this.left+c,this.right-i[0]),y:this.top+c+b,line:0}:{x:this.left+c,y:ft(n,this.top+b+c,this.bottom-e[0].height),line:0},Ai(this.ctx,t.textDirection);const _=m+c;this.legendItems.forEach(((y,v)=>{s.strokeStyle=y.fontColor,s.fillStyle=y.fontColor;const M=s.measureText(y.text).width,w=r.textAlign(y.textAlign||(y.textAlign=o.textAlign)),k=g+u+M;let S=f.x,P=f.y;r.setWidth(this.width),x?v>0&&S+k+c>this.right&&(P=f.y+=_,f.line++,S=f.x=ft(n,this.left+c,this.right-i[f.line])):v>0&&P+_>this.bottom&&(S=f.x=S+e[f.line].width+c,f.line++,P=f.y=ft(n,this.top+b+c,this.bottom-e[f.line].height));if(function(t,e,i){if(isNaN(g)||g<=0||isNaN(p)||p<0)return;s.save();const n=l(i.lineWidth,1);if(s.fillStyle=l(i.fillStyle,a),s.lineCap=l(i.lineCap,"butt"),s.lineDashOffset=l(i.lineDashOffset,0),s.lineJoin=l(i.lineJoin,"miter"),s.lineWidth=n,s.strokeStyle=l(i.strokeStyle,a),s.setLineDash(l(i.lineDash,[])),o.usePointStyle){const a={radius:p*Math.SQRT2/2,pointStyle:i.pointStyle,rotation:i.rotation,borderWidth:n},l=r.xPlus(t,g/2);Ee(s,a,l,e+u,o.pointStyleWidth&&g)}else{const o=e+Math.max((d-p)/2,0),a=r.leftForLtr(t,g),l=wi(i.borderRadius);s.beginPath(),Object.values(l).some((t=>0!==t))?He(s,{x:a,y:o,w:g,h:p,radius:l}):s.rect(a,o,g,p),s.fill(),0!==n&&s.stroke()}s.restore()}(r.x(S),P,y),S=gt(w,S+g+u,x?S+k:this.right,t.rtl),function(t,e,i){Ne(s,i.text,t,e+m/2,h,{strikethrough:i.hidden,textAlign:r.textAlign(i.textAlign)})}(r.x(S),P,y),x)f.x+=k+c;else if("string"!=typeof y.text){const t=h.lineHeight;f.y+=va(y,t)+c}else f.y+=_})),Ti(this.ctx,t.textDirection)}drawTitle(){const t=this.options,e=t.title,i=Si(e.font),s=ki(e.padding);if(!e.display)return;const n=Oi(t.rtl,this.left,this.width),o=this.ctx,a=e.position,r=i.size/2,l=s.top+r;let h,c=this.left,d=this.width;if(this.isHorizontal())d=Math.max(...this.lineWidths),h=this.top+l,c=ft(t.align,c,this.right-d);else{const e=this.columnSizes.reduce(((t,e)=>Math.max(t,e.height)),0);h=l+ft(t.align,this.top,this.bottom-e-t.labels.padding-this._computeTitleHeight())}const u=ft(a,c,c+d);o.textAlign=n.textAlign(ut(a)),o.textBaseline="middle",o.strokeStyle=e.color,o.fillStyle=e.color,o.font=i.string,Ne(o,e.text,u,h,i)}_computeTitleHeight(){const t=this.options.title,e=Si(t.font),i=ki(t.padding);return t.display?e.lineHeight+i.height:0}_getLegendItemAt(t,e){let i,s,n;if(tt(t,this.left,this.right)&&tt(e,this.top,this.bottom))for(n=this.legendHitBoxes,i=0;it.chart.options.color,boxWidth:40,padding:10,generateLabels(t){const e=t.data.datasets,{labels:{usePointStyle:i,pointStyle:s,textAlign:n,color:o,useBorderRadius:a,borderRadius:r}}=t.legend.options;return t._getSortedDatasetMetas().map((t=>{const l=t.controller.getStyle(i?0:void 0),h=ki(l.borderWidth);return{text:e[t.index].label,fillStyle:l.backgroundColor,fontColor:o,hidden:!t.visible,lineCap:l.borderCapStyle,lineDash:l.borderDash,lineDashOffset:l.borderDashOffset,lineJoin:l.borderJoinStyle,lineWidth:(h.width+h.height)/4,strokeStyle:l.borderColor,pointStyle:s||l.pointStyle,rotation:l.rotation,textAlign:n||l.textAlign,borderRadius:a&&(r||l.borderRadius),datasetIndex:t.index}}),this)}},title:{color:t=>t.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:t=>!t.startsWith("on"),labels:{_scriptable:t=>!["generateLabels","filter","sort"].includes(t)}}};class wa extends $s{constructor(t){super(),this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e){const i=this.options;if(this.left=0,this.top=0,!i.display)return void(this.width=this.height=this.right=this.bottom=0);this.width=this.right=t,this.height=this.bottom=e;const s=n(i.text)?i.text.length:1;this._padding=ki(i.padding);const o=s*Si(i.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=o:this.width=o}isHorizontal(){const t=this.options.position;return"top"===t||"bottom"===t}_drawArgs(t){const{top:e,left:i,bottom:s,right:n,options:o}=this,a=o.align;let r,l,h,c=0;return this.isHorizontal()?(l=ft(a,i,n),h=e+t,r=n-i):("left"===o.position?(l=i+t,h=ft(a,s,e),c=-.5*C):(l=n-t,h=ft(a,e,s),c=.5*C),r=s-e),{titleX:l,titleY:h,maxWidth:r,rotation:c}}draw(){const t=this.ctx,e=this.options;if(!e.display)return;const i=Si(e.font),s=i.lineHeight/2+this._padding.top,{titleX:n,titleY:o,maxWidth:a,rotation:r}=this._drawArgs(s);Ne(t,e.text,0,0,i,{color:e.color,maxWidth:a,rotation:r,textAlign:ut(e.align),textBaseline:"middle",translation:[n,o]})}}var ka={id:"title",_element:wa,start(t,e,i){!function(t,e){const i=new wa({ctx:t.ctx,options:e,chart:t});ls.configure(t,i,e),ls.addBox(t,i),t.titleBlock=i}(t,i)},stop(t){const e=t.titleBlock;ls.removeBox(t,e),delete t.titleBlock},beforeUpdate(t,e,i){const s=t.titleBlock;ls.configure(t,s,i),s.options=i},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Sa=new WeakMap;var Pa={id:"subtitle",start(t,e,i){const s=new wa({ctx:t.ctx,options:i,chart:t});ls.configure(t,s,i),ls.addBox(t,s),Sa.set(t,s)},stop(t){ls.removeBox(t,Sa.get(t)),Sa.delete(t)},beforeUpdate(t,e,i){const s=Sa.get(t);ls.configure(t,s,i),s.options=i},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Da={average(t){if(!t.length)return!1;let e,i,s=new Set,n=0,o=0;for(e=0,i=t.length;et+e))/s.size,y:n/o}},nearest(t,e){if(!t.length)return!1;let i,s,n,o=e.x,a=e.y,r=Number.POSITIVE_INFINITY;for(i=0,s=t.length;i-1?t.split("\n"):t}function Aa(t,e){const{element:i,datasetIndex:s,index:n}=e,o=t.getDatasetMeta(s).controller,{label:a,value:r}=o.getLabelAndValue(n);return{chart:t,label:a,parsed:o.getParsed(n),raw:t.data.datasets[s].data[n],formattedValue:r,dataset:o.getDataset(),dataIndex:n,datasetIndex:s,element:i}}function Ta(t,e){const i=t.chart.ctx,{body:s,footer:n,title:o}=t,{boxWidth:a,boxHeight:r}=e,l=Si(e.bodyFont),h=Si(e.titleFont),c=Si(e.footerFont),d=o.length,f=n.length,g=s.length,p=ki(e.padding);let m=p.height,x=0,b=s.reduce(((t,e)=>t+e.before.length+e.lines.length+e.after.length),0);if(b+=t.beforeBody.length+t.afterBody.length,d&&(m+=d*h.lineHeight+(d-1)*e.titleSpacing+e.titleMarginBottom),b){m+=g*(e.displayColors?Math.max(r,l.lineHeight):l.lineHeight)+(b-g)*l.lineHeight+(b-1)*e.bodySpacing}f&&(m+=e.footerMarginTop+f*c.lineHeight+(f-1)*e.footerSpacing);let _=0;const y=function(t){x=Math.max(x,i.measureText(t).width+_)};return i.save(),i.font=h.string,u(t.title,y),i.font=l.string,u(t.beforeBody.concat(t.afterBody),y),_=e.displayColors?a+2+e.boxPadding:0,u(s,(t=>{u(t.before,y),u(t.lines,y),u(t.after,y)})),_=0,i.font=c.string,u(t.footer,y),i.restore(),x+=p.width,{width:x,height:m}}function La(t,e,i,s){const{x:n,width:o}=i,{width:a,chartArea:{left:r,right:l}}=t;let h="center";return"center"===s?h=n<=(r+l)/2?"left":"right":n<=o/2?h="left":n>=a-o/2&&(h="right"),function(t,e,i,s){const{x:n,width:o}=s,a=i.caretSize+i.caretPadding;return"left"===t&&n+o+a>e.width||"right"===t&&n-o-a<0||void 0}(h,t,e,i)&&(h="center"),h}function Ea(t,e,i){const s=i.yAlign||e.yAlign||function(t,e){const{y:i,height:s}=e;return it.height-s/2?"bottom":"center"}(t,i);return{xAlign:i.xAlign||e.xAlign||La(t,e,i,s),yAlign:s}}function Ra(t,e,i,s){const{caretSize:n,caretPadding:o,cornerRadius:a}=t,{xAlign:r,yAlign:l}=i,h=n+o,{topLeft:c,topRight:d,bottomLeft:u,bottomRight:f}=wi(a);let g=function(t,e){let{x:i,width:s}=t;return"right"===e?i-=s:"center"===e&&(i-=s/2),i}(e,r);const p=function(t,e,i){let{y:s,height:n}=t;return"top"===e?s+=i:s-="bottom"===e?n+i:n/2,s}(e,l,h);return"center"===l?"left"===r?g+=h:"right"===r&&(g-=h):"left"===r?g-=Math.max(c,u)+n:"right"===r&&(g+=Math.max(d,f)+n),{x:Z(g,0,s.width-e.width),y:Z(p,0,s.height-e.height)}}function Ia(t,e,i){const s=ki(i.padding);return"center"===e?t.x+t.width/2:"right"===e?t.x+t.width-s.right:t.x+s.left}function za(t){return Ca([],Oa(t))}function Fa(t,e){const i=e&&e.dataset&&e.dataset.tooltip&&e.dataset.tooltip.callbacks;return i?t.override(i):t}const Va={beforeTitle:e,title(t){if(t.length>0){const e=t[0],i=e.chart.data.labels,s=i?i.length:0;if(this&&this.options&&"dataset"===this.options.mode)return e.dataset.label||"";if(e.label)return e.label;if(s>0&&e.dataIndex{const e={before:[],lines:[],after:[]},n=Fa(i,t);Ca(e.before,Oa(Ba(n,"beforeLabel",this,t))),Ca(e.lines,Ba(n,"label",this,t)),Ca(e.after,Oa(Ba(n,"afterLabel",this,t))),s.push(e)})),s}getAfterBody(t,e){return za(Ba(e.callbacks,"afterBody",this,t))}getFooter(t,e){const{callbacks:i}=e,s=Ba(i,"beforeFooter",this,t),n=Ba(i,"footer",this,t),o=Ba(i,"afterFooter",this,t);let a=[];return a=Ca(a,Oa(s)),a=Ca(a,Oa(n)),a=Ca(a,Oa(o)),a}_createItems(t){const e=this._active,i=this.chart.data,s=[],n=[],o=[];let a,r,l=[];for(a=0,r=e.length;at.filter(e,s,n,i)))),t.itemSort&&(l=l.sort(((e,s)=>t.itemSort(e,s,i)))),u(l,(e=>{const i=Fa(t.callbacks,e);s.push(Ba(i,"labelColor",this,e)),n.push(Ba(i,"labelPointStyle",this,e)),o.push(Ba(i,"labelTextColor",this,e))})),this.labelColors=s,this.labelPointStyles=n,this.labelTextColors=o,this.dataPoints=l,l}update(t,e){const i=this.options.setContext(this.getContext()),s=this._active;let n,o=[];if(s.length){const t=Da[i.position].call(this,s,this._eventPosition);o=this._createItems(i),this.title=this.getTitle(o,i),this.beforeBody=this.getBeforeBody(o,i),this.body=this.getBody(o,i),this.afterBody=this.getAfterBody(o,i),this.footer=this.getFooter(o,i);const e=this._size=Ta(this,i),a=Object.assign({},t,e),r=Ea(this.chart,i,a),l=Ra(i,a,r,this.chart);this.xAlign=r.xAlign,this.yAlign=r.yAlign,n={opacity:1,x:l.x,y:l.y,width:e.width,height:e.height,caretX:t.x,caretY:t.y}}else 0!==this.opacity&&(n={opacity:0});this._tooltipItems=o,this.$context=void 0,n&&this._resolveAnimations().update(this,n),t&&i.external&&i.external.call(this,{chart:this.chart,tooltip:this,replay:e})}drawCaret(t,e,i,s){const n=this.getCaretPosition(t,i,s);e.lineTo(n.x1,n.y1),e.lineTo(n.x2,n.y2),e.lineTo(n.x3,n.y3)}getCaretPosition(t,e,i){const{xAlign:s,yAlign:n}=this,{caretSize:o,cornerRadius:a}=i,{topLeft:r,topRight:l,bottomLeft:h,bottomRight:c}=wi(a),{x:d,y:u}=t,{width:f,height:g}=e;let p,m,x,b,_,y;return"center"===n?(_=u+g/2,"left"===s?(p=d,m=p-o,b=_+o,y=_-o):(p=d+f,m=p+o,b=_-o,y=_+o),x=p):(m="left"===s?d+Math.max(r,h)+o:"right"===s?d+f-Math.max(l,c)-o:this.caretX,"top"===n?(b=u,_=b-o,p=m-o,x=m+o):(b=u+g,_=b+o,p=m+o,x=m-o),y=b),{x1:p,x2:m,x3:x,y1:b,y2:_,y3:y}}drawTitle(t,e,i){const s=this.title,n=s.length;let o,a,r;if(n){const l=Oi(i.rtl,this.x,this.width);for(t.x=Ia(this,i.titleAlign,i),e.textAlign=l.textAlign(i.titleAlign),e.textBaseline="middle",o=Si(i.titleFont),a=i.titleSpacing,e.fillStyle=i.titleColor,e.font=o.string,r=0;r0!==t))?(t.beginPath(),t.fillStyle=n.multiKeyBackground,He(t,{x:e,y:g,w:h,h:l,radius:r}),t.fill(),t.stroke(),t.fillStyle=a.backgroundColor,t.beginPath(),He(t,{x:i,y:g+1,w:h-2,h:l-2,radius:r}),t.fill()):(t.fillStyle=n.multiKeyBackground,t.fillRect(e,g,h,l),t.strokeRect(e,g,h,l),t.fillStyle=a.backgroundColor,t.fillRect(i,g+1,h-2,l-2))}t.fillStyle=this.labelTextColors[i]}drawBody(t,e,i){const{body:s}=this,{bodySpacing:n,bodyAlign:o,displayColors:a,boxHeight:r,boxWidth:l,boxPadding:h}=i,c=Si(i.bodyFont);let d=c.lineHeight,f=0;const g=Oi(i.rtl,this.x,this.width),p=function(i){e.fillText(i,g.x(t.x+f),t.y+d/2),t.y+=d+n},m=g.textAlign(o);let x,b,_,y,v,M,w;for(e.textAlign=o,e.textBaseline="middle",e.font=c.string,t.x=Ia(this,m,i),e.fillStyle=i.bodyColor,u(this.beforeBody,p),f=a&&"right"!==m?"center"===o?l/2+h:l+2+h:0,y=0,M=s.length;y0&&e.stroke()}_updateAnimationTarget(t){const e=this.chart,i=this.$animations,s=i&&i.x,n=i&&i.y;if(s||n){const i=Da[t.position].call(this,this._active,this._eventPosition);if(!i)return;const o=this._size=Ta(this,t),a=Object.assign({},i,this._size),r=Ea(e,t,a),l=Ra(t,a,r,e);s._to===l.x&&n._to===l.y||(this.xAlign=r.xAlign,this.yAlign=r.yAlign,this.width=o.width,this.height=o.height,this.caretX=i.x,this.caretY=i.y,this._resolveAnimations().update(this,l))}}_willRender(){return!!this.opacity}draw(t){const e=this.options.setContext(this.getContext());let i=this.opacity;if(!i)return;this._updateAnimationTarget(e);const s={width:this.width,height:this.height},n={x:this.x,y:this.y};i=Math.abs(i)<.001?0:i;const o=ki(e.padding),a=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;e.enabled&&a&&(t.save(),t.globalAlpha=i,this.drawBackground(n,t,s,e),Ai(t,e.textDirection),n.y+=o.top,this.drawTitle(n,t,e),this.drawBody(n,t,e),this.drawFooter(n,t,e),Ti(t,e.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,e){const i=this._active,s=t.map((({datasetIndex:t,index:e})=>{const i=this.chart.getDatasetMeta(t);if(!i)throw new Error("Cannot find a dataset at index "+t);return{datasetIndex:t,element:i.data[e],index:e}})),n=!f(i,s),o=this._positionChanged(s,e);(n||o)&&(this._active=s,this._eventPosition=e,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,e,i=!0){if(e&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const s=this.options,n=this._active||[],o=this._getActiveElements(t,n,e,i),a=this._positionChanged(o,t),r=e||!f(o,n)||a;return r&&(this._active=o,(s.enabled||s.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,e))),r}_getActiveElements(t,e,i,s){const n=this.options;if("mouseout"===t.type)return[];if(!s)return e.filter((t=>this.chart.data.datasets[t.datasetIndex]&&void 0!==this.chart.getDatasetMeta(t.datasetIndex).controller.getParsed(t.index)));const o=this.chart.getElementsAtEventForMode(t,n.mode,n,i);return n.reverse&&o.reverse(),o}_positionChanged(t,e){const{caretX:i,caretY:s,options:n}=this,o=Da[n.position].call(this,t,e);return!1!==o&&(i!==o.x||s!==o.y)}}var Na={id:"tooltip",_element:Wa,positioners:Da,afterInit(t,e,i){i&&(t.tooltip=new Wa({chart:t,options:i}))},beforeUpdate(t,e,i){t.tooltip&&t.tooltip.initialize(i)},reset(t,e,i){t.tooltip&&t.tooltip.initialize(i)},afterDraw(t){const e=t.tooltip;if(e&&e._willRender()){const i={tooltip:e};if(!1===t.notifyPlugins("beforeTooltipDraw",{...i,cancelable:!0}))return;e.draw(t.ctx),t.notifyPlugins("afterTooltipDraw",i)}},afterEvent(t,e){if(t.tooltip){const i=e.replay;t.tooltip.handleEvent(e.event,i,e.inChartArea)&&(e.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(t,e)=>e.bodyFont.size,boxWidth:(t,e)=>e.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:Va},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:t=>"filter"!==t&&"itemSort"!==t&&"external"!==t,_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};return Tn.register(Un,$o,go,t),Tn.helpers={...Hi},Tn._adapters=In,Tn.Animation=As,Tn.Animations=Ts,Tn.animator=bt,Tn.controllers=nn.controllers.items,Tn.DatasetController=js,Tn.Element=$s,Tn.elements=go,Tn.Interaction=Ki,Tn.layouts=ls,Tn.platforms=Ds,Tn.Scale=tn,Tn.Ticks=ae,Object.assign(Tn,Un,$o,go,t,Ds),Tn.Chart=Tn,"undefined"!=typeof window&&(window.Chart=Tn),Tn})); + */function _t(t){return t+.5|0}const yt=(t,e,i)=>Math.max(Math.min(t,i),e);function vt(t){return yt(_t(2.55*t),0,255)}function Mt(t){return yt(_t(255*t),0,255)}function wt(t){return yt(_t(t/2.55)/100,0,1)}function kt(t){return yt(_t(100*t),0,100)}const St={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Pt=[..."0123456789ABCDEF"],Dt=t=>Pt[15&t],Ct=t=>Pt[(240&t)>>4]+Pt[15&t],Ot=t=>(240&t)>>4==(15&t);function At(t){var e=(t=>Ot(t.r)&&Ot(t.g)&&Ot(t.b)&&Ot(t.a))(t)?Dt:Ct;return t?"#"+e(t.r)+e(t.g)+e(t.b)+((t,e)=>t<255?e(t):"")(t.a,e):void 0}const Tt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Lt(t,e,i){const s=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function Et(t,e,i){const s=(s,n=(s+t/60)%6)=>i-i*e*Math.max(Math.min(n,4-n,1),0);return[s(5),s(3),s(1)]}function Rt(t,e,i){const s=Lt(t,1,.5);let n;for(e+i>1&&(n=1/(e+i),e*=n,i*=n),n=0;n<3;n++)s[n]*=1-e-i,s[n]+=e;return s}function It(t){const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),o=Math.min(e,i,s),a=(n+o)/2;let r,l,h;return n!==o&&(h=n-o,l=a>.5?h/(2-n-o):h/(n+o),r=function(t,e,i,s,n){return t===n?(e-i)/s+(e>16&255,o>>8&255,255&o]}return t}(),Ht.transparent=[0,0,0,0]);const e=Ht[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}const $t=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const Yt=t=>t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Ut=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Xt(t,e,i){if(t){let s=It(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*i,0===e?360:1)),s=Ft(s),t.r=s[0],t.g=s[1],t.b=s[2]}}function qt(t,e){return t?Object.assign(e||{},t):t}function Kt(t){var e={r:0,g:0,b:0,a:255};return Array.isArray(t)?t.length>=3&&(e={r:t[0],g:t[1],b:t[2],a:255},t.length>3&&(e.a=Mt(t[3]))):(e=qt(t,{r:0,g:0,b:0,a:1})).a=Mt(e.a),e}function Gt(t){return"r"===t.charAt(0)?function(t){const e=$t.exec(t);let i,s,n,o=255;if(e){if(e[7]!==i){const t=+e[7];o=e[8]?vt(t):yt(255*t,0,255)}return i=+e[1],s=+e[3],n=+e[5],i=255&(e[2]?vt(i):yt(i,0,255)),s=255&(e[4]?vt(s):yt(s,0,255)),n=255&(e[6]?vt(n):yt(n,0,255)),{r:i,g:s,b:n,a:o}}}(t):Bt(t)}class Jt{constructor(t){if(t instanceof Jt)return t;const e=typeof t;let i;var s,n,o;"object"===e?i=Kt(t):"string"===e&&(o=(s=t).length,"#"===s[0]&&(4===o||5===o?n={r:255&17*St[s[1]],g:255&17*St[s[2]],b:255&17*St[s[3]],a:5===o?17*St[s[4]]:255}:7!==o&&9!==o||(n={r:St[s[1]]<<4|St[s[2]],g:St[s[3]]<<4|St[s[4]],b:St[s[5]]<<4|St[s[6]],a:9===o?St[s[7]]<<4|St[s[8]]:255})),i=n||jt(t)||Gt(t)),this._rgb=i,this._valid=!!i}get valid(){return this._valid}get rgb(){var t=qt(this._rgb);return t&&(t.a=wt(t.a)),t}set rgb(t){this._rgb=Kt(t)}rgbString(){return this._valid?(t=this._rgb)&&(t.a<255?`rgba(${t.r}, ${t.g}, ${t.b}, ${wt(t.a)})`:`rgb(${t.r}, ${t.g}, ${t.b})`):void 0;var t}hexString(){return this._valid?At(this._rgb):void 0}hslString(){return this._valid?function(t){if(!t)return;const e=It(t),i=e[0],s=kt(e[1]),n=kt(e[2]);return t.a<255?`hsla(${i}, ${s}%, ${n}%, ${wt(t.a)})`:`hsl(${i}, ${s}%, ${n}%)`}(this._rgb):void 0}mix(t,e){if(t){const i=this.rgb,s=t.rgb;let n;const o=e===n?.5:e,a=2*o-1,r=i.a-s.a,l=((a*r==-1?a:(a+r)/(1+a*r))+1)/2;n=1-l,i.r=255&l*i.r+n*s.r+.5,i.g=255&l*i.g+n*s.g+.5,i.b=255&l*i.b+n*s.b+.5,i.a=o*i.a+(1-o)*s.a,this.rgb=i}return this}interpolate(t,e){return t&&(this._rgb=function(t,e,i){const s=Ut(wt(t.r)),n=Ut(wt(t.g)),o=Ut(wt(t.b));return{r:Mt(Yt(s+i*(Ut(wt(e.r))-s))),g:Mt(Yt(n+i*(Ut(wt(e.g))-n))),b:Mt(Yt(o+i*(Ut(wt(e.b))-o))),a:t.a+i*(e.a-t.a)}}(this._rgb,t._rgb,e)),this}clone(){return new Jt(this.rgb)}alpha(t){return this._rgb.a=Mt(t),this}clearer(t){return this._rgb.a*=1-t,this}greyscale(){const t=this._rgb,e=_t(.3*t.r+.59*t.g+.11*t.b);return t.r=t.g=t.b=e,this}opaquer(t){return this._rgb.a*=1+t,this}negate(){const t=this._rgb;return t.r=255-t.r,t.g=255-t.g,t.b=255-t.b,this}lighten(t){return Xt(this._rgb,2,t),this}darken(t){return Xt(this._rgb,2,-t),this}saturate(t){return Xt(this._rgb,1,t),this}desaturate(t){return Xt(this._rgb,1,-t),this}rotate(t){return function(t,e){var i=It(t);i[0]=Vt(i[0]+e),i=Ft(i),t.r=i[0],t.g=i[1],t.b=i[2]}(this._rgb,t),this}}function Zt(t){if(t&&"object"==typeof t){const e=t.toString();return"[object CanvasPattern]"===e||"[object CanvasGradient]"===e}return!1}function Qt(t){return Zt(t)?t:new Jt(t)}function te(t){return Zt(t)?t:new Jt(t).saturate(.5).darken(.1).hexString()}const ee=["x","y","borderWidth","radius","tension"],ie=["color","borderColor","backgroundColor"];const se=new Map;function ne(t,e,i){return function(t,e){e=e||{};const i=t+JSON.stringify(e);let s=se.get(i);return s||(s=new Intl.NumberFormat(t,e),se.set(i,s)),s}(e,i).format(t)}const oe={values:t=>n(t)?t:""+t,numeric(t,e,i){if(0===t)return"0";const s=this.chart.options.locale;let n,o=t;if(i.length>1){const e=Math.max(Math.abs(i[0].value),Math.abs(i[i.length-1].value));(e<1e-4||e>1e15)&&(n="scientific"),o=function(t,e){let i=e.length>3?e[2].value-e[1].value:e[1].value-e[0].value;Math.abs(i)>=1&&t!==Math.floor(t)&&(i=t-Math.floor(t));return i}(t,i)}const a=z(Math.abs(o)),r=isNaN(a)?1:Math.max(Math.min(-1*Math.floor(a),20),0),l={notation:n,minimumFractionDigits:r,maximumFractionDigits:r};return Object.assign(l,this.options.ticks.format),ne(t,s,l)},logarithmic(t,e,i){if(0===t)return"0";const s=i[e].significand||t/Math.pow(10,Math.floor(z(t)));return[1,2,3,5,10,15].includes(s)||e>.8*i.length?oe.numeric.call(this,t,e,i):""}};var ae={formatters:oe};const re=Object.create(null),le=Object.create(null);function he(t,e){if(!e)return t;const i=e.split(".");for(let e=0,s=i.length;et.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(t,e)=>te(e.backgroundColor),this.hoverBorderColor=(t,e)=>te(e.borderColor),this.hoverColor=(t,e)=>te(e.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(t),this.apply(e)}set(t,e){return ce(this,t,e)}get(t){return he(this,t)}describe(t,e){return ce(le,t,e)}override(t,e){return ce(re,t,e)}route(t,e,i,s){const n=he(this,t),a=he(this,i),r="_"+e;Object.defineProperties(n,{[r]:{value:n[e],writable:!0},[e]:{enumerable:!0,get(){const t=this[r],e=a[s];return o(t)?Object.assign({},e,t):l(t,e)},set(t){this[r]=t}}})}apply(t){t.forEach((t=>t(this)))}}var ue=new de({_scriptable:t=>!t.startsWith("on"),_indexable:t=>"events"!==t,hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[function(t){t.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),t.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:t=>"onProgress"!==t&&"onComplete"!==t&&"fn"!==t}),t.set("animations",{colors:{type:"color",properties:ie},numbers:{type:"number",properties:ee}}),t.describe("animations",{_fallback:"animation"}),t.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:t=>0|t}}}})},function(t){t.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})},function(t){t.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",clip:!0,grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(t,e)=>e.lineWidth,tickColor:(t,e)=>e.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:ae.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),t.route("scale.ticks","color","","color"),t.route("scale.grid","color","","borderColor"),t.route("scale.border","color","","borderColor"),t.route("scale.title","color","","color"),t.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&"callback"!==t&&"parser"!==t,_indexable:t=>"borderDash"!==t&&"tickBorderDash"!==t&&"dash"!==t}),t.describe("scales",{_fallback:"scale"}),t.describe("scale.ticks",{_scriptable:t=>"backdropPadding"!==t&&"callback"!==t,_indexable:t=>"backdropPadding"!==t})}]);function fe(){return"undefined"!=typeof window&&"undefined"!=typeof document}function ge(t){let e=t.parentNode;return e&&"[object ShadowRoot]"===e.toString()&&(e=e.host),e}function pe(t,e,i){let s;return"string"==typeof t?(s=parseInt(t,10),-1!==t.indexOf("%")&&(s=s/100*e.parentNode[i])):s=t,s}const me=t=>t.ownerDocument.defaultView.getComputedStyle(t,null);function xe(t,e){return me(t).getPropertyValue(e)}const be=["top","right","bottom","left"];function _e(t,e,i){const s={};i=i?"-"+i:"";for(let n=0;n<4;n++){const o=be[n];s[o]=parseFloat(t[e+"-"+o+i])||0}return s.width=s.left+s.right,s.height=s.top+s.bottom,s}const ye=(t,e,i)=>(t>0||e>0)&&(!i||!i.shadowRoot);function ve(t,e){if("native"in t)return t;const{canvas:i,currentDevicePixelRatio:s}=e,n=me(i),o="border-box"===n.boxSizing,a=_e(n,"padding"),r=_e(n,"border","width"),{x:l,y:h,box:c}=function(t,e){const i=t.touches,s=i&&i.length?i[0]:t,{offsetX:n,offsetY:o}=s;let a,r,l=!1;if(ye(n,o,t.target))a=n,r=o;else{const t=e.getBoundingClientRect();a=s.clientX-t.left,r=s.clientY-t.top,l=!0}return{x:a,y:r,box:l}}(t,i),d=a.left+(c&&r.left),u=a.top+(c&&r.top);let{width:f,height:g}=e;return o&&(f-=a.width+r.width,g-=a.height+r.height),{x:Math.round((l-d)/f*i.width/s),y:Math.round((h-u)/g*i.height/s)}}const Me=t=>Math.round(10*t)/10;function we(t,e,i,s){const n=me(t),o=_e(n,"margin"),a=pe(n.maxWidth,t,"clientWidth")||T,r=pe(n.maxHeight,t,"clientHeight")||T,l=function(t,e,i){let s,n;if(void 0===e||void 0===i){const o=t&&ge(t);if(o){const t=o.getBoundingClientRect(),a=me(o),r=_e(a,"border","width"),l=_e(a,"padding");e=t.width-l.width-r.width,i=t.height-l.height-r.height,s=pe(a.maxWidth,o,"clientWidth"),n=pe(a.maxHeight,o,"clientHeight")}else e=t.clientWidth,i=t.clientHeight}return{width:e,height:i,maxWidth:s||T,maxHeight:n||T}}(t,e,i);let{width:h,height:c}=l;if("content-box"===n.boxSizing){const t=_e(n,"border","width"),e=_e(n,"padding");h-=e.width+t.width,c-=e.height+t.height}h=Math.max(0,h-o.width),c=Math.max(0,s?h/s:c-o.height),h=Me(Math.min(h,a,l.maxWidth)),c=Me(Math.min(c,r,l.maxHeight)),h&&!c&&(c=Me(h/2));return(void 0!==e||void 0!==i)&&s&&l.height&&c>l.height&&(c=l.height,h=Me(Math.floor(c*s))),{width:h,height:c}}function ke(t,e,i){const s=e||1,n=Me(t.height*s),o=Me(t.width*s);t.height=Me(t.height),t.width=Me(t.width);const a=t.canvas;a.style&&(i||!a.style.height&&!a.style.width)&&(a.style.height=`${t.height}px`,a.style.width=`${t.width}px`);const r=Math.floor(n),l=Math.floor(o);return(t.currentDevicePixelRatio!==s||a.height!==r||a.width!==l)&&(t.currentDevicePixelRatio=s,a.height=r,a.width=l,t.ctx.setTransform(s,0,0,s,0,0),!0)}const Se=function(){let t=!1;try{const e={get passive(){return t=!0,!1}};fe()&&(window.addEventListener("test",null,e),window.removeEventListener("test",null,e))}catch(t){}return t}();function Pe(t,e){const i=xe(t,e),s=i&&i.match(/^(\d+)(\.\d+)?px$/);return s?+s[1]:void 0}function De(t){return!t||s(t.size)||s(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}function Ce(t,e,i,s,n){let o=e[n];return o||(o=e[n]=t.measureText(n).width,i.push(n)),o>s&&(s=o),s}function Oe(t,e,i,s){let o=(s=s||{}).data=s.data||{},a=s.garbageCollect=s.garbageCollect||[];s.font!==e&&(o=s.data={},a=s.garbageCollect=[],s.font=e),t.save(),t.font=e;let r=0;const l=i.length;let h,c,d,u,f;for(h=0;hi.length){for(h=0;h0&&t.stroke()}}function Re(t,e,i){return i=i||.5,!e||t&&t.x>e.left-i&&t.xe.top-i&&t.y0&&""!==r.strokeColor;let c,d;for(t.save(),t.font=a.string,function(t,e){e.translation&&t.translate(e.translation[0],e.translation[1]),s(e.rotation)||t.rotate(e.rotation),e.color&&(t.fillStyle=e.color),e.textAlign&&(t.textAlign=e.textAlign),e.textBaseline&&(t.textBaseline=e.textBaseline)}(t,r),c=0;ct[0])){const o=i||t;void 0===s&&(s=ti("_fallback",t));const a={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:t,_rootScopes:o,_fallback:s,_getTarget:n,override:i=>je([i,...t],e,o,s)};return new Proxy(a,{deleteProperty:(e,i)=>(delete e[i],delete e._keys,delete t[0][i],!0),get:(i,s)=>qe(i,s,(()=>function(t,e,i,s){let n;for(const o of e)if(n=ti(Ue(o,t),i),void 0!==n)return Xe(t,n)?Ze(i,s,t,n):n}(s,e,t,i))),getOwnPropertyDescriptor:(t,e)=>Reflect.getOwnPropertyDescriptor(t._scopes[0],e),getPrototypeOf:()=>Reflect.getPrototypeOf(t[0]),has:(t,e)=>ei(t).includes(e),ownKeys:t=>ei(t),set(t,e,i){const s=t._storage||(t._storage=n());return t[e]=s[e]=i,delete t._keys,!0}})}function $e(t,e,i,s){const a={_cacheable:!1,_proxy:t,_context:e,_subProxy:i,_stack:new Set,_descriptors:Ye(t,s),setContext:e=>$e(t,e,i,s),override:n=>$e(t.override(n),e,i,s)};return new Proxy(a,{deleteProperty:(e,i)=>(delete e[i],delete t[i],!0),get:(t,e,i)=>qe(t,e,(()=>function(t,e,i){const{_proxy:s,_context:a,_subProxy:r,_descriptors:l}=t;let h=s[e];S(h)&&l.isScriptable(e)&&(h=function(t,e,i,s){const{_proxy:n,_context:o,_subProxy:a,_stack:r}=i;if(r.has(t))throw new Error("Recursion detected: "+Array.from(r).join("->")+"->"+t);r.add(t);let l=e(o,a||s);r.delete(t),Xe(t,l)&&(l=Ze(n._scopes,n,t,l));return l}(e,h,t,i));n(h)&&h.length&&(h=function(t,e,i,s){const{_proxy:n,_context:a,_subProxy:r,_descriptors:l}=i;if(void 0!==a.index&&s(t))return e[a.index%e.length];if(o(e[0])){const i=e,s=n._scopes.filter((t=>t!==i));e=[];for(const o of i){const i=Ze(s,n,t,o);e.push($e(i,a,r&&r[t],l))}}return e}(e,h,t,l.isIndexable));Xe(e,h)&&(h=$e(h,a,r&&r[e],l));return h}(t,e,i))),getOwnPropertyDescriptor:(e,i)=>e._descriptors.allKeys?Reflect.has(t,i)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(t,i),getPrototypeOf:()=>Reflect.getPrototypeOf(t),has:(e,i)=>Reflect.has(t,i),ownKeys:()=>Reflect.ownKeys(t),set:(e,i,s)=>(t[i]=s,delete e[i],!0)})}function Ye(t,e={scriptable:!0,indexable:!0}){const{_scriptable:i=e.scriptable,_indexable:s=e.indexable,_allKeys:n=e.allKeys}=t;return{allKeys:n,scriptable:i,indexable:s,isScriptable:S(i)?i:()=>i,isIndexable:S(s)?s:()=>s}}const Ue=(t,e)=>t?t+w(e):e,Xe=(t,e)=>o(e)&&"adapters"!==t&&(null===Object.getPrototypeOf(e)||e.constructor===Object);function qe(t,e,i){if(Object.prototype.hasOwnProperty.call(t,e)||"constructor"===e)return t[e];const s=i();return t[e]=s,s}function Ke(t,e,i){return S(t)?t(e,i):t}const Ge=(t,e)=>!0===t?e:"string"==typeof t?M(e,t):void 0;function Je(t,e,i,s,n){for(const o of e){const e=Ge(i,o);if(e){t.add(e);const o=Ke(e._fallback,i,n);if(void 0!==o&&o!==i&&o!==s)return o}else if(!1===e&&void 0!==s&&i!==s)return null}return!1}function Ze(t,e,i,s){const a=e._rootScopes,r=Ke(e._fallback,i,s),l=[...t,...a],h=new Set;h.add(s);let c=Qe(h,l,i,r||i,s);return null!==c&&((void 0===r||r===i||(c=Qe(h,l,r,c,s),null!==c))&&je(Array.from(h),[""],a,r,(()=>function(t,e,i){const s=t._getTarget();e in s||(s[e]={});const a=s[e];if(n(a)&&o(i))return i;return a||{}}(e,i,s))))}function Qe(t,e,i,s,n){for(;i;)i=Je(t,e,i,s,n);return i}function ti(t,e){for(const i of e){if(!i)continue;const e=i[t];if(void 0!==e)return e}}function ei(t){let e=t._keys;return e||(e=t._keys=function(t){const e=new Set;for(const i of t)for(const t of Object.keys(i).filter((t=>!t.startsWith("_"))))e.add(t);return Array.from(e)}(t._scopes)),e}function ii(t,e,i,s){const{iScale:n}=t,{key:o="r"}=this._parsing,a=new Array(s);let r,l,h,c;for(r=0,l=s;re"x"===t?"y":"x";function ai(t,e,i,s){const n=t.skip?e:t,o=e,a=i.skip?e:i,r=q(o,n),l=q(a,o);let h=r/(r+l),c=l/(r+l);h=isNaN(h)?0:h,c=isNaN(c)?0:c;const d=s*h,u=s*c;return{previous:{x:o.x-d*(a.x-n.x),y:o.y-d*(a.y-n.y)},next:{x:o.x+u*(a.x-n.x),y:o.y+u*(a.y-n.y)}}}function ri(t,e="x"){const i=oi(e),s=t.length,n=Array(s).fill(0),o=Array(s);let a,r,l,h=ni(t,0);for(a=0;a!t.skip))),"monotone"===e.cubicInterpolationMode)ri(t,n);else{let i=s?t[t.length-1]:t[0];for(o=0,a=t.length;o0===t||1===t,di=(t,e,i)=>-Math.pow(2,10*(t-=1))*Math.sin((t-e)*O/i),ui=(t,e,i)=>Math.pow(2,-10*t)*Math.sin((t-e)*O/i)+1,fi={linear:t=>t,easeInQuad:t=>t*t,easeOutQuad:t=>-t*(t-2),easeInOutQuad:t=>(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1),easeInCubic:t=>t*t*t,easeOutCubic:t=>(t-=1)*t*t+1,easeInOutCubic:t=>(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2),easeInQuart:t=>t*t*t*t,easeOutQuart:t=>-((t-=1)*t*t*t-1),easeInOutQuart:t=>(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2),easeInQuint:t=>t*t*t*t*t,easeOutQuint:t=>(t-=1)*t*t*t*t+1,easeInOutQuint:t=>(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2),easeInSine:t=>1-Math.cos(t*E),easeOutSine:t=>Math.sin(t*E),easeInOutSine:t=>-.5*(Math.cos(C*t)-1),easeInExpo:t=>0===t?0:Math.pow(2,10*(t-1)),easeOutExpo:t=>1===t?1:1-Math.pow(2,-10*t),easeInOutExpo:t=>ci(t)?t:t<.5?.5*Math.pow(2,10*(2*t-1)):.5*(2-Math.pow(2,-10*(2*t-1))),easeInCirc:t=>t>=1?t:-(Math.sqrt(1-t*t)-1),easeOutCirc:t=>Math.sqrt(1-(t-=1)*t),easeInOutCirc:t=>(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1),easeInElastic:t=>ci(t)?t:di(t,.075,.3),easeOutElastic:t=>ci(t)?t:ui(t,.075,.3),easeInOutElastic(t){const e=.1125;return ci(t)?t:t<.5?.5*di(2*t,e,.45):.5+.5*ui(2*t-1,e,.45)},easeInBack(t){const e=1.70158;return t*t*((e+1)*t-e)},easeOutBack(t){const e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},easeInOutBack(t){let e=1.70158;return(t/=.5)<1?t*t*((1+(e*=1.525))*t-e)*.5:.5*((t-=2)*t*((1+(e*=1.525))*t+e)+2)},easeInBounce:t=>1-fi.easeOutBounce(1-t),easeOutBounce(t){const e=7.5625,i=2.75;return t<1/i?e*t*t:t<2/i?e*(t-=1.5/i)*t+.75:t<2.5/i?e*(t-=2.25/i)*t+.9375:e*(t-=2.625/i)*t+.984375},easeInOutBounce:t=>t<.5?.5*fi.easeInBounce(2*t):.5*fi.easeOutBounce(2*t-1)+.5};function gi(t,e,i,s){return{x:t.x+i*(e.x-t.x),y:t.y+i*(e.y-t.y)}}function pi(t,e,i,s){return{x:t.x+i*(e.x-t.x),y:"middle"===s?i<.5?t.y:e.y:"after"===s?i<1?t.y:e.y:i>0?e.y:t.y}}function mi(t,e,i,s){const n={x:t.cp2x,y:t.cp2y},o={x:e.cp1x,y:e.cp1y},a=gi(t,n,i),r=gi(n,o,i),l=gi(o,e,i),h=gi(a,r,i),c=gi(r,l,i);return gi(h,c,i)}const xi=/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/,bi=/^(normal|italic|initial|inherit|unset|(oblique( -?[0-9]?[0-9]deg)?))$/;function _i(t,e){const i=(""+t).match(xi);if(!i||"normal"===i[1])return 1.2*e;switch(t=+i[2],i[3]){case"px":return t;case"%":t/=100}return e*t}const yi=t=>+t||0;function vi(t,e){const i={},s=o(e),n=s?Object.keys(e):e,a=o(t)?s?i=>l(t[i],t[e[i]]):e=>t[e]:()=>t;for(const t of n)i[t]=yi(a(t));return i}function Mi(t){return vi(t,{top:"y",right:"x",bottom:"y",left:"x"})}function wi(t){return vi(t,["topLeft","topRight","bottomLeft","bottomRight"])}function ki(t){const e=Mi(t);return e.width=e.left+e.right,e.height=e.top+e.bottom,e}function Si(t,e){t=t||{},e=e||ue.font;let i=l(t.size,e.size);"string"==typeof i&&(i=parseInt(i,10));let s=l(t.style,e.style);s&&!(""+s).match(bi)&&(console.warn('Invalid font style specified: "'+s+'"'),s=void 0);const n={family:l(t.family,e.family),lineHeight:_i(l(t.lineHeight,e.lineHeight),i),size:i,style:s,weight:l(t.weight,e.weight),string:""};return n.string=De(n),n}function Pi(t,e,i,s){let o,a,r,l=!0;for(o=0,a=t.length;oi&&0===t?0:t+e;return{min:a(s,-Math.abs(o)),max:a(n,o)}}function Ci(t,e){return Object.assign(Object.create(t),e)}function Oi(t,e,i){return t?function(t,e){return{x:i=>t+t+e-i,setWidth(t){e=t},textAlign:t=>"center"===t?t:"right"===t?"left":"right",xPlus:(t,e)=>t-e,leftForLtr:(t,e)=>t-e}}(e,i):{x:t=>t,setWidth(t){},textAlign:t=>t,xPlus:(t,e)=>t+e,leftForLtr:(t,e)=>t}}function Ai(t,e){let i,s;"ltr"!==e&&"rtl"!==e||(i=t.canvas.style,s=[i.getPropertyValue("direction"),i.getPropertyPriority("direction")],i.setProperty("direction",e,"important"),t.prevTextDirection=s)}function Ti(t,e){void 0!==e&&(delete t.prevTextDirection,t.canvas.style.setProperty("direction",e[0],e[1]))}function Li(t){return"angle"===t?{between:J,compare:K,normalize:G}:{between:tt,compare:(t,e)=>t-e,normalize:t=>t}}function Ei({start:t,end:e,count:i,loop:s,style:n}){return{start:t%i,end:e%i,loop:s&&(e-t+1)%i==0,style:n}}function Ri(t,e,i){if(!i)return[t];const{property:s,start:n,end:o}=i,a=e.length,{compare:r,between:l,normalize:h}=Li(s),{start:c,end:d,loop:u,style:f}=function(t,e,i){const{property:s,start:n,end:o}=i,{between:a,normalize:r}=Li(s),l=e.length;let h,c,{start:d,end:u,loop:f}=t;if(f){for(d+=l,u+=l,h=0,c=l;hb||l(n,x,p)&&0!==r(n,x),v=()=>!b||0===r(o,p)||l(o,x,p);for(let t=c,i=c;t<=d;++t)m=e[t%a],m.skip||(p=h(m[s]),p!==x&&(b=l(p,n,o),null===_&&y()&&(_=0===r(p,n)?t:i),null!==_&&v()&&(g.push(Ei({start:_,end:t,loop:u,count:a,style:f})),_=null),i=t,x=p));return null!==_&&g.push(Ei({start:_,end:d,loop:u,count:a,style:f})),g}function Ii(t,e){const i=[],s=t.segments;for(let n=0;nn&&t[o%e].skip;)o--;return o%=e,{start:n,end:o}}(i,n,o,s);if(!0===s)return Fi(t,[{start:a,end:r,loop:o}],i,e);return Fi(t,function(t,e,i,s){const n=t.length,o=[];let a,r=e,l=t[e];for(a=e+1;a<=i;++a){const i=t[a%n];i.skip||i.stop?l.skip||(s=!1,o.push({start:e%n,end:(a-1)%n,loop:s}),e=r=i.stop?a:null):(r=a,l.skip&&(e=a)),l=i}return null!==r&&o.push({start:e%n,end:r%n,loop:s}),o}(i,a,r!s(t[e.axis])));n.lo-=Math.max(0,a);const r=i.slice(n.hi).findIndex((t=>!s(t[e.axis])));n.hi+=Math.max(0,r)}return n}if(o._sharedOptions){const t=a[0],s="function"==typeof t.getRange&&t.getRange(e);if(s){const t=r(a,e,i-s),n=r(a,e,i+s);return{lo:t.lo,hi:n.hi}}}}return{lo:0,hi:a.length-1}}function $i(t,e,i,s,n){const o=t.getSortedVisibleDatasetMetas(),a=i[e];for(let t=0,i=o.length;t{t[a]&&t[a](e[i],n)&&(o.push({element:t,datasetIndex:s,index:l}),r=r||t.inRange(e.x,e.y,n))})),s&&!r?[]:o}var Ki={evaluateInteractionItems:$i,modes:{index(t,e,i,s){const n=ve(e,t),o=i.axis||"x",a=i.includeInvisible||!1,r=i.intersect?Yi(t,n,o,s,a):Xi(t,n,o,!1,s,a),l=[];return r.length?(t.getSortedVisibleDatasetMetas().forEach((t=>{const e=r[0].index,i=t.data[e];i&&!i.skip&&l.push({element:i,datasetIndex:t.index,index:e})})),l):[]},dataset(t,e,i,s){const n=ve(e,t),o=i.axis||"xy",a=i.includeInvisible||!1;let r=i.intersect?Yi(t,n,o,s,a):Xi(t,n,o,!1,s,a);if(r.length>0){const e=r[0].datasetIndex,i=t.getDatasetMeta(e).data;r=[];for(let t=0;tYi(t,ve(e,t),i.axis||"xy",s,i.includeInvisible||!1),nearest(t,e,i,s){const n=ve(e,t),o=i.axis||"xy",a=i.includeInvisible||!1;return Xi(t,n,o,i.intersect,s,a)},x:(t,e,i,s)=>qi(t,ve(e,t),"x",i.intersect,s),y:(t,e,i,s)=>qi(t,ve(e,t),"y",i.intersect,s)}};const Gi=["left","top","right","bottom"];function Ji(t,e){return t.filter((t=>t.pos===e))}function Zi(t,e){return t.filter((t=>-1===Gi.indexOf(t.pos)&&t.box.axis===e))}function Qi(t,e){return t.sort(((t,i)=>{const s=e?i:t,n=e?t:i;return s.weight===n.weight?s.index-n.index:s.weight-n.weight}))}function ts(t,e){const i=function(t){const e={};for(const i of t){const{stack:t,pos:s,stackWeight:n}=i;if(!t||!Gi.includes(s))continue;const o=e[t]||(e[t]={count:0,placed:0,weight:0,size:0});o.count++,o.weight+=n}return e}(t),{vBoxMaxWidth:s,hBoxMaxHeight:n}=e;let o,a,r;for(o=0,a=t.length;o{s[t]=Math.max(e[t],i[t])})),s}return s(t?["left","right"]:["top","bottom"])}function os(t,e,i,s){const n=[];let o,a,r,l,h,c;for(o=0,a=t.length,h=0;ot.box.fullSize)),!0),s=Qi(Ji(e,"left"),!0),n=Qi(Ji(e,"right")),o=Qi(Ji(e,"top"),!0),a=Qi(Ji(e,"bottom")),r=Zi(e,"x"),l=Zi(e,"y");return{fullSize:i,leftAndTop:s.concat(o),rightAndBottom:n.concat(l).concat(a).concat(r),chartArea:Ji(e,"chartArea"),vertical:s.concat(n).concat(l),horizontal:o.concat(a).concat(r)}}(t.boxes),l=r.vertical,h=r.horizontal;u(t.boxes,(t=>{"function"==typeof t.beforeLayout&&t.beforeLayout()}));const c=l.reduce(((t,e)=>e.box.options&&!1===e.box.options.display?t:t+1),0)||1,d=Object.freeze({outerWidth:e,outerHeight:i,padding:n,availableWidth:o,availableHeight:a,vBoxMaxWidth:o/2/c,hBoxMaxHeight:a/2}),f=Object.assign({},n);is(f,ki(s));const g=Object.assign({maxPadding:f,w:o,h:a,x:n.left,y:n.top},n),p=ts(l.concat(h),d);os(r.fullSize,g,d,p),os(l,g,d,p),os(h,g,d,p)&&os(l,g,d,p),function(t){const e=t.maxPadding;function i(i){const s=Math.max(e[i]-t[i],0);return t[i]+=s,s}t.y+=i("top"),t.x+=i("left"),i("right"),i("bottom")}(g),rs(r.leftAndTop,g,d,p),g.x+=g.w,g.y+=g.h,rs(r.rightAndBottom,g,d,p),t.chartArea={left:g.left,top:g.top,right:g.left+g.w,bottom:g.top+g.h,height:g.h,width:g.w},u(r.chartArea,(e=>{const i=e.box;Object.assign(i,t.chartArea),i.update(g.w,g.h,{left:0,top:0,right:0,bottom:0})}))}};class hs{acquireContext(t,e){}releaseContext(t){return!1}addEventListener(t,e,i){}removeEventListener(t,e,i){}getDevicePixelRatio(){return 1}getMaximumSize(t,e,i,s){return e=Math.max(0,e||t.width),i=i||t.height,{width:e,height:Math.max(0,s?Math.floor(e/s):i)}}isAttached(t){return!0}updateConfig(t){}}class cs extends hs{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const ds="$chartjs",us={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},fs=t=>null===t||""===t;const gs=!!Se&&{passive:!0};function ps(t,e,i){t&&t.canvas&&t.canvas.removeEventListener(e,i,gs)}function ms(t,e){for(const i of t)if(i===e||i.contains(e))return!0}function xs(t,e,i){const s=t.canvas,n=new MutationObserver((t=>{let e=!1;for(const i of t)e=e||ms(i.addedNodes,s),e=e&&!ms(i.removedNodes,s);e&&i()}));return n.observe(document,{childList:!0,subtree:!0}),n}function bs(t,e,i){const s=t.canvas,n=new MutationObserver((t=>{let e=!1;for(const i of t)e=e||ms(i.removedNodes,s),e=e&&!ms(i.addedNodes,s);e&&i()}));return n.observe(document,{childList:!0,subtree:!0}),n}const _s=new Map;let ys=0;function vs(){const t=window.devicePixelRatio;t!==ys&&(ys=t,_s.forEach(((e,i)=>{i.currentDevicePixelRatio!==t&&e()})))}function Ms(t,e,i){const s=t.canvas,n=s&&ge(s);if(!n)return;const o=ct(((t,e)=>{const s=n.clientWidth;i(t,e),s{const e=t[0],i=e.contentRect.width,s=e.contentRect.height;0===i&&0===s||o(i,s)}));return a.observe(n),function(t,e){_s.size||window.addEventListener("resize",vs),_s.set(t,e)}(t,o),a}function ws(t,e,i){i&&i.disconnect(),"resize"===e&&function(t){_s.delete(t),_s.size||window.removeEventListener("resize",vs)}(t)}function ks(t,e,i){const s=t.canvas,n=ct((e=>{null!==t.ctx&&i(function(t,e){const i=us[t.type]||t.type,{x:s,y:n}=ve(t,e);return{type:i,chart:e,native:t,x:void 0!==s?s:null,y:void 0!==n?n:null}}(e,t))}),t);return function(t,e,i){t&&t.addEventListener(e,i,gs)}(s,e,n),n}class Ss extends hs{acquireContext(t,e){const i=t&&t.getContext&&t.getContext("2d");return i&&i.canvas===t?(function(t,e){const i=t.style,s=t.getAttribute("height"),n=t.getAttribute("width");if(t[ds]={initial:{height:s,width:n,style:{display:i.display,height:i.height,width:i.width}}},i.display=i.display||"block",i.boxSizing=i.boxSizing||"border-box",fs(n)){const e=Pe(t,"width");void 0!==e&&(t.width=e)}if(fs(s))if(""===t.style.height)t.height=t.width/(e||2);else{const e=Pe(t,"height");void 0!==e&&(t.height=e)}}(t,e),i):null}releaseContext(t){const e=t.canvas;if(!e[ds])return!1;const i=e[ds].initial;["height","width"].forEach((t=>{const n=i[t];s(n)?e.removeAttribute(t):e.setAttribute(t,n)}));const n=i.style||{};return Object.keys(n).forEach((t=>{e.style[t]=n[t]})),e.width=e.width,delete e[ds],!0}addEventListener(t,e,i){this.removeEventListener(t,e);const s=t.$proxies||(t.$proxies={}),n={attach:xs,detach:bs,resize:Ms}[e]||ks;s[e]=n(t,e,i)}removeEventListener(t,e){const i=t.$proxies||(t.$proxies={}),s=i[e];if(!s)return;({attach:ws,detach:ws,resize:ws}[e]||ps)(t,e,s),i[e]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,e,i,s){return we(t,e,i,s)}isAttached(t){const e=t&&ge(t);return!(!e||!e.isConnected)}}function Ps(t){return!fe()||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas?cs:Ss}var Ds=Object.freeze({__proto__:null,BasePlatform:hs,BasicPlatform:cs,DomPlatform:Ss,_detectPlatform:Ps});const Cs="transparent",Os={boolean:(t,e,i)=>i>.5?e:t,color(t,e,i){const s=Qt(t||Cs),n=s.valid&&Qt(e||Cs);return n&&n.valid?n.mix(s,i).hexString():e},number:(t,e,i)=>t+(e-t)*i};class As{constructor(t,e,i,s){const n=e[i];s=Pi([t.to,s,n,t.from]);const o=Pi([t.from,n,s]);this._active=!0,this._fn=t.fn||Os[t.type||typeof o],this._easing=fi[t.easing]||fi.linear,this._start=Math.floor(Date.now()+(t.delay||0)),this._duration=this._total=Math.floor(t.duration),this._loop=!!t.loop,this._target=e,this._prop=i,this._from=o,this._to=s,this._promises=void 0}active(){return this._active}update(t,e,i){if(this._active){this._notify(!1);const s=this._target[this._prop],n=i-this._start,o=this._duration-n;this._start=i,this._duration=Math.floor(Math.max(o,t.duration)),this._total+=n,this._loop=!!t.loop,this._to=Pi([t.to,e,s,t.from]),this._from=Pi([t.from,s,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,i=this._duration,s=this._prop,n=this._from,o=this._loop,a=this._to;let r;if(this._active=n!==a&&(o||e1?2-r:r,r=this._easing(Math.min(1,Math.max(0,r))),this._target[s]=this._fn(n,a,r))}wait(){const t=this._promises||(this._promises=[]);return new Promise(((e,i)=>{t.push({res:e,rej:i})}))}_notify(t){const e=t?"res":"rej",i=this._promises||[];for(let t=0;t{const a=t[s];if(!o(a))return;const r={};for(const t of e)r[t]=a[t];(n(a.properties)&&a.properties||[s]).forEach((t=>{t!==s&&i.has(t)||i.set(t,r)}))}))}_animateOptions(t,e){const i=e.options,s=function(t,e){if(!e)return;let i=t.options;if(!i)return void(t.options=e);i.$shared&&(t.options=i=Object.assign({},i,{$shared:!1,$animations:{}}));return i}(t,i);if(!s)return[];const n=this._createAnimations(s,i);return i.$shared&&function(t,e){const i=[],s=Object.keys(e);for(let e=0;e{t.options=i}),(()=>{})),n}_createAnimations(t,e){const i=this._properties,s=[],n=t.$animations||(t.$animations={}),o=Object.keys(e),a=Date.now();let r;for(r=o.length-1;r>=0;--r){const l=o[r];if("$"===l.charAt(0))continue;if("options"===l){s.push(...this._animateOptions(t,e));continue}const h=e[l];let c=n[l];const d=i.get(l);if(c){if(d&&c.active()){c.update(d,h,a);continue}c.cancel()}d&&d.duration?(n[l]=c=new As(d,t,l,h),s.push(c)):t[l]=h}return s}update(t,e){if(0===this._properties.size)return void Object.assign(t,e);const i=this._createAnimations(t,e);return i.length?(bt.add(this._chart,i),!0):void 0}}function Ls(t,e){const i=t&&t.options||{},s=i.reverse,n=void 0===i.min?e:0,o=void 0===i.max?e:0;return{start:s?o:n,end:s?n:o}}function Es(t,e){const i=[],s=t._getSortedDatasetMetas(e);let n,o;for(n=0,o=s.length;n0||!i&&e<0)return n.index}return null}function Vs(t,e){const{chart:i,_cachedMeta:s}=t,n=i._stacks||(i._stacks={}),{iScale:o,vScale:a,index:r}=s,l=o.axis,h=a.axis,c=function(t,e,i){return`${t.id}.${e.id}.${i.stack||i.type}`}(o,a,s),d=e.length;let u;for(let t=0;ti[t].axis===e)).shift()}function Ns(t,e){const i=t.controller.index,s=t.vScale&&t.vScale.axis;if(s){e=e||t._parsed;for(const t of e){const e=t._stacks;e&&void 0!==e[s]&&void 0!==e[s][i]&&(delete e[s][i],void 0!==e[s]._visualValues&&void 0!==e[s]._visualValues[i]&&delete e[s]._visualValues[i])}}}const Ws=t=>"reset"===t||"none"===t,Hs=(t,e)=>e?t:Object.assign({},t);class js{static defaults={};static datasetElementType=null;static dataElementType=null;constructor(t,e){this.chart=t,this._ctx=t.ctx,this.index=e,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=Is(t.vScale,t),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(t){this.index!==t&&Ns(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,e=this._cachedMeta,i=this.getDataset(),s=(t,e,i,s)=>"x"===t?e:"r"===t?s:i,n=e.xAxisID=l(i.xAxisID,Bs(t,"x")),o=e.yAxisID=l(i.yAxisID,Bs(t,"y")),a=e.rAxisID=l(i.rAxisID,Bs(t,"r")),r=e.indexAxis,h=e.iAxisID=s(r,n,o,a),c=e.vAxisID=s(r,o,n,a);e.xScale=this.getScaleForId(n),e.yScale=this.getScaleForId(o),e.rScale=this.getScaleForId(a),e.iScale=this.getScaleForId(h),e.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(t){return this.chart.scales[t]}_getOtherScale(t){const e=this._cachedMeta;return t===e.iScale?e.vScale:e.iScale}reset(){this._update("reset")}_destroy(){const t=this._cachedMeta;this._data&&rt(this._data,this),t._stacked&&Ns(t)}_dataCheck(){const t=this.getDataset(),e=t.data||(t.data=[]),i=this._data;if(o(e)){const t=this._cachedMeta;this._data=function(t,e){const{iScale:i,vScale:s}=e,n="x"===i.axis?"x":"y",o="x"===s.axis?"x":"y",a=Object.keys(t),r=new Array(a.length);let l,h,c;for(l=0,h=a.length;l0&&i._parsed[t-1];if(!1===this._parsing)i._parsed=s,i._sorted=!0,d=s;else{d=n(s[t])?this.parseArrayData(i,s,t,e):o(s[t])?this.parseObjectData(i,s,t,e):this.parsePrimitiveData(i,s,t,e);const a=()=>null===c[l]||f&&c[l]t&&!e.hidden&&e._stacked&&{keys:Es(i,!0),values:null})(e,i,this.chart),h={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:d}=function(t){const{min:e,max:i,minDefined:s,maxDefined:n}=t.getUserBounds();return{min:s?e:Number.NEGATIVE_INFINITY,max:n?i:Number.POSITIVE_INFINITY}}(r);let u,f;function g(){f=s[u];const e=f[r.axis];return!a(f[t.axis])||c>e||d=0;--u)if(!g()){this.updateRangeFromParsed(h,t,f,l);break}return h}getAllParsedValues(t){const e=this._cachedMeta._parsed,i=[];let s,n,o;for(s=0,n=e.length;s=0&&tthis.getContext(i,s,e)),c);return f.$shared&&(f.$shared=r,n[o]=Object.freeze(Hs(f,r))),f}_resolveAnimations(t,e,i){const s=this.chart,n=this._cachedDataOpts,o=`animation-${e}`,a=n[o];if(a)return a;let r;if(!1!==s.options.animation){const s=this.chart.config,n=s.datasetAnimationScopeKeys(this._type,e),o=s.getOptionScopes(this.getDataset(),n);r=s.createResolver(o,this.getContext(t,i,e))}const l=new Ts(s,r&&r.animations);return r&&r._cacheable&&(n[o]=Object.freeze(l)),l}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,e){return!e||Ws(t)||this.chart._animationsDisabled}_getSharedOptions(t,e){const i=this.resolveDataElementOptions(t,e),s=this._sharedOptions,n=this.getSharedOptions(i),o=this.includeOptions(e,n)||n!==s;return this.updateSharedOptions(n,e,i),{sharedOptions:n,includeOptions:o}}updateElement(t,e,i,s){Ws(s)?Object.assign(t,i):this._resolveAnimations(e,s).update(t,i)}updateSharedOptions(t,e,i){t&&!Ws(e)&&this._resolveAnimations(void 0,e).update(t,i)}_setStyle(t,e,i,s){t.active=s;const n=this.getStyle(e,s);this._resolveAnimations(e,i,s).update(t,{options:!s&&this.getSharedOptions(n)||n})}removeHoverStyle(t,e,i){this._setStyle(t,i,"active",!1)}setHoverStyle(t,e,i){this._setStyle(t,i,"active",!0)}_removeDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!1)}_setDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!0)}_resyncElements(t){const e=this._data,i=this._cachedMeta.data;for(const[t,e,i]of this._syncList)this[t](e,i);this._syncList=[];const s=i.length,n=e.length,o=Math.min(n,s);o&&this.parse(0,o),n>s?this._insertElements(s,n-s,t):n{for(t.length+=e,a=t.length-1;a>=o;a--)t[a]=t[a-e]};for(r(n),a=t;a{s[t]=i[t]&&i[t].active()?i[t]._to:this[t]})),s}}function Ys(t,e){const i=t.options.ticks,n=function(t){const e=t.options.offset,i=t._tickSize(),s=t._length/i+(e?0:1),n=t._maxLength/i;return Math.floor(Math.min(s,n))}(t),o=Math.min(i.maxTicksLimit||n,n),a=i.major.enabled?function(t){const e=[];let i,s;for(i=0,s=t.length;io)return function(t,e,i,s){let n,o=0,a=i[0];for(s=Math.ceil(s),n=0;nn)return e}return Math.max(n,1)}(a,e,o);if(r>0){let t,i;const n=r>1?Math.round((h-l)/(r-1)):null;for(Us(e,c,d,s(n)?0:l-n,l),t=0,i=r-1;t"top"===e||"left"===e?t[e]+i:t[e]-i,qs=(t,e)=>Math.min(e||t,t);function Ks(t,e){const i=[],s=t.length/e,n=t.length;let o=0;for(;oa+r)))return h}function Js(t){return t.drawTicks?t.tickLength:0}function Zs(t,e){if(!t.display)return 0;const i=Si(t.font,e),s=ki(t.padding);return(n(t.text)?t.text.length:1)*i.lineHeight+s.height}function Qs(t,e,i){let s=ut(t);return(i&&"right"!==e||!i&&"right"===e)&&(s=(t=>"left"===t?"right":"right"===t?"left":t)(s)),s}class tn extends $s{constructor(t){super(),this.id=t.id,this.type=t.type,this.options=void 0,this.ctx=t.ctx,this.chart=t.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(t){this.options=t.setContext(this.getContext()),this.axis=t.axis,this._userMin=this.parse(t.min),this._userMax=this.parse(t.max),this._suggestedMin=this.parse(t.suggestedMin),this._suggestedMax=this.parse(t.suggestedMax)}parse(t,e){return t}getUserBounds(){let{_userMin:t,_userMax:e,_suggestedMin:i,_suggestedMax:s}=this;return t=r(t,Number.POSITIVE_INFINITY),e=r(e,Number.NEGATIVE_INFINITY),i=r(i,Number.POSITIVE_INFINITY),s=r(s,Number.NEGATIVE_INFINITY),{min:r(t,i),max:r(e,s),minDefined:a(t),maxDefined:a(e)}}getMinMax(t){let e,{min:i,max:s,minDefined:n,maxDefined:o}=this.getUserBounds();if(n&&o)return{min:i,max:s};const a=this.getMatchingVisibleMetas();for(let r=0,l=a.length;rs?s:i,s=n&&i>s?i:s,{min:r(i,r(s,i)),max:r(s,r(i,s))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}getLabelItems(t=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(t))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){d(this.options.beforeUpdate,[this])}update(t,e,i){const{beginAtZero:s,grace:n,ticks:o}=this.options,a=o.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=e,this._margins=i=Object.assign({left:0,right:0,top:0,bottom:0},i),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+i.left+i.right:this.height+i.top+i.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=Di(this,n,s),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const r=a=n||i<=1||!this.isHorizontal())return void(this.labelRotation=s);const h=this._getLabelSizes(),c=h.widest.width,d=h.highest.height,u=Z(this.chart.width-c,0,this.maxWidth);o=t.offset?this.maxWidth/i:u/(i-1),c+6>o&&(o=u/(i-(t.offset?.5:1)),a=this.maxHeight-Js(t.grid)-e.padding-Zs(t.title,this.chart.options.font),r=Math.sqrt(c*c+d*d),l=Y(Math.min(Math.asin(Z((h.highest.height+6)/o,-1,1)),Math.asin(Z(a/r,-1,1))-Math.asin(Z(d/r,-1,1)))),l=Math.max(s,Math.min(n,l))),this.labelRotation=l}afterCalculateLabelRotation(){d(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){d(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:e,options:{ticks:i,title:s,grid:n}}=this,o=this._isVisible(),a=this.isHorizontal();if(o){const o=Zs(s,e.options.font);if(a?(t.width=this.maxWidth,t.height=Js(n)+o):(t.height=this.maxHeight,t.width=Js(n)+o),i.display&&this.ticks.length){const{first:e,last:s,widest:n,highest:o}=this._getLabelSizes(),r=2*i.padding,l=$(this.labelRotation),h=Math.cos(l),c=Math.sin(l);if(a){const e=i.mirror?0:c*n.width+h*o.height;t.height=Math.min(this.maxHeight,t.height+e+r)}else{const e=i.mirror?0:h*n.width+c*o.height;t.width=Math.min(this.maxWidth,t.width+e+r)}this._calculatePadding(e,s,c,h)}}this._handleMargins(),a?(this.width=this._length=e.width-this._margins.left-this._margins.right,this.height=t.height):(this.width=t.width,this.height=this._length=e.height-this._margins.top-this._margins.bottom)}_calculatePadding(t,e,i,s){const{ticks:{align:n,padding:o},position:a}=this.options,r=0!==this.labelRotation,l="top"!==a&&"x"===this.axis;if(this.isHorizontal()){const a=this.getPixelForTick(0)-this.left,h=this.right-this.getPixelForTick(this.ticks.length-1);let c=0,d=0;r?l?(c=s*t.width,d=i*e.height):(c=i*t.height,d=s*e.width):"start"===n?d=e.width:"end"===n?c=t.width:"inner"!==n&&(c=t.width/2,d=e.width/2),this.paddingLeft=Math.max((c-a+o)*this.width/(this.width-a),0),this.paddingRight=Math.max((d-h+o)*this.width/(this.width-h),0)}else{let i=e.height/2,s=t.height/2;"start"===n?(i=0,s=t.height):"end"===n&&(i=e.height,s=0),this.paddingTop=i+o,this.paddingBottom=s+o}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){d(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:e}=this.options;return"top"===e||"bottom"===e||"x"===t}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){let e,i;for(this.beforeTickToLabelConversion(),this.generateTickLabels(t),e=0,i=t.length;e{const i=t.gc,s=i.length/2;let n;if(s>e){for(n=0;n({width:r[t]||0,height:l[t]||0});return{first:P(0),last:P(e-1),widest:P(k),highest:P(S),widths:r,heights:l}}getLabelForValue(t){return t}getPixelForValue(t,e){return NaN}getValueForPixel(t){}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const e=this._startPixel+t*this._length;return Q(this._alignToPixels?Ae(this.chart,e,0):e)}getDecimalForPixel(t){const e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:t,max:e}=this;return t<0&&e<0?e:t>0&&e>0?t:0}getContext(t){const e=this.ticks||[];if(t>=0&&ta*s?a/i:r/s:r*s0}_computeGridLineItems(t){const e=this.axis,i=this.chart,s=this.options,{grid:n,position:a,border:r}=s,h=n.offset,c=this.isHorizontal(),d=this.ticks.length+(h?1:0),u=Js(n),f=[],g=r.setContext(this.getContext()),p=g.display?g.width:0,m=p/2,x=function(t){return Ae(i,t,p)};let b,_,y,v,M,w,k,S,P,D,C,O;if("top"===a)b=x(this.bottom),w=this.bottom-u,S=b-m,D=x(t.top)+m,O=t.bottom;else if("bottom"===a)b=x(this.top),D=t.top,O=x(t.bottom)-m,w=b+m,S=this.top+u;else if("left"===a)b=x(this.right),M=this.right-u,k=b-m,P=x(t.left)+m,C=t.right;else if("right"===a)b=x(this.left),P=t.left,C=x(t.right)-m,M=b+m,k=this.left+u;else if("x"===e){if("center"===a)b=x((t.top+t.bottom)/2+.5);else if(o(a)){const t=Object.keys(a)[0],e=a[t];b=x(this.chart.scales[t].getPixelForValue(e))}D=t.top,O=t.bottom,w=b+m,S=w+u}else if("y"===e){if("center"===a)b=x((t.left+t.right)/2);else if(o(a)){const t=Object.keys(a)[0],e=a[t];b=x(this.chart.scales[t].getPixelForValue(e))}M=b-m,k=M-u,P=t.left,C=t.right}const A=l(s.ticks.maxTicksLimit,d),T=Math.max(1,Math.ceil(d/A));for(_=0;_0&&(o-=s/2)}d={left:o,top:n,width:s+e.width,height:i+e.height,color:t.backdropColor}}x.push({label:v,font:P,textOffset:O,options:{rotation:m,color:i,strokeColor:o,strokeWidth:h,textAlign:f,textBaseline:A,translation:[M,w],backdrop:d}})}return x}_getXAxisLabelAlignment(){const{position:t,ticks:e}=this.options;if(-$(this.labelRotation))return"top"===t?"left":"right";let i="center";return"start"===e.align?i="left":"end"===e.align?i="right":"inner"===e.align&&(i="inner"),i}_getYAxisLabelAlignment(t){const{position:e,ticks:{crossAlign:i,mirror:s,padding:n}}=this.options,o=t+n,a=this._getLabelSizes().widest.width;let r,l;return"left"===e?s?(l=this.right+n,"near"===i?r="left":"center"===i?(r="center",l+=a/2):(r="right",l+=a)):(l=this.right-o,"near"===i?r="right":"center"===i?(r="center",l-=a/2):(r="left",l=this.left)):"right"===e?s?(l=this.left+n,"near"===i?r="right":"center"===i?(r="center",l-=a/2):(r="left",l-=a)):(l=this.left+o,"near"===i?r="left":"center"===i?(r="center",l+=a/2):(r="right",l=this.right)):r="right",{textAlign:r,x:l}}_computeLabelArea(){if(this.options.ticks.mirror)return;const t=this.chart,e=this.options.position;return"left"===e||"right"===e?{top:0,left:this.left,bottom:t.height,right:this.right}:"top"===e||"bottom"===e?{top:this.top,left:0,bottom:this.bottom,right:t.width}:void 0}drawBackground(){const{ctx:t,options:{backgroundColor:e},left:i,top:s,width:n,height:o}=this;e&&(t.save(),t.fillStyle=e,t.fillRect(i,s,n,o),t.restore())}getLineWidthForValue(t){const e=this.options.grid;if(!this._isVisible()||!e.display)return 0;const i=this.ticks.findIndex((e=>e.value===t));if(i>=0){return e.setContext(this.getContext(i)).lineWidth}return 0}drawGrid(t){const e=this.options.grid,i=this.ctx,s=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let n,o;const a=(t,e,s)=>{s.width&&s.color&&(i.save(),i.lineWidth=s.width,i.strokeStyle=s.color,i.setLineDash(s.borderDash||[]),i.lineDashOffset=s.borderDashOffset,i.beginPath(),i.moveTo(t.x,t.y),i.lineTo(e.x,e.y),i.stroke(),i.restore())};if(e.display)for(n=0,o=s.length;n{this.drawBackground(),this.drawGrid(t),this.drawTitle()}},{z:s,draw:()=>{this.drawBorder()}},{z:e,draw:t=>{this.drawLabels(t)}}]:[{z:e,draw:t=>{this.draw(t)}}]}getMatchingVisibleMetas(t){const e=this.chart.getSortedVisibleDatasetMetas(),i=this.axis+"AxisID",s=[];let n,o;for(n=0,o=e.length;n{const s=i.split("."),n=s.pop(),o=[t].concat(s).join("."),a=e[i].split("."),r=a.pop(),l=a.join(".");ue.route(o,n,l,r)}))}(e,t.defaultRoutes);t.descriptors&&ue.describe(e,t.descriptors)}(t,o,i),this.override&&ue.override(t.id,t.overrides)),o}get(t){return this.items[t]}unregister(t){const e=this.items,i=t.id,s=this.scope;i in e&&delete e[i],s&&i in ue[s]&&(delete ue[s][i],this.override&&delete re[i])}}class sn{constructor(){this.controllers=new en(js,"datasets",!0),this.elements=new en($s,"elements"),this.plugins=new en(Object,"plugins"),this.scales=new en(tn,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...t){this._each("register",t)}remove(...t){this._each("unregister",t)}addControllers(...t){this._each("register",t,this.controllers)}addElements(...t){this._each("register",t,this.elements)}addPlugins(...t){this._each("register",t,this.plugins)}addScales(...t){this._each("register",t,this.scales)}getController(t){return this._get(t,this.controllers,"controller")}getElement(t){return this._get(t,this.elements,"element")}getPlugin(t){return this._get(t,this.plugins,"plugin")}getScale(t){return this._get(t,this.scales,"scale")}removeControllers(...t){this._each("unregister",t,this.controllers)}removeElements(...t){this._each("unregister",t,this.elements)}removePlugins(...t){this._each("unregister",t,this.plugins)}removeScales(...t){this._each("unregister",t,this.scales)}_each(t,e,i){[...e].forEach((e=>{const s=i||this._getRegistryForType(e);i||s.isForType(e)||s===this.plugins&&e.id?this._exec(t,s,e):u(e,(e=>{const s=i||this._getRegistryForType(e);this._exec(t,s,e)}))}))}_exec(t,e,i){const s=w(t);d(i["before"+s],[],i),e[t](i),d(i["after"+s],[],i)}_getRegistryForType(t){for(let e=0;et.filter((t=>!e.some((e=>t.plugin.id===e.plugin.id))));this._notify(s(e,i),t,"stop"),this._notify(s(i,e),t,"start")}}function an(t,e){return e||!1!==t?!0===t?{}:t:null}function rn(t,{plugin:e,local:i},s,n){const o=t.pluginScopeKeys(e),a=t.getOptionScopes(s,o);return i&&e.defaults&&a.push(e.defaults),t.createResolver(a,n,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function ln(t,e){const i=ue.datasets[t]||{};return((e.datasets||{})[t]||{}).indexAxis||e.indexAxis||i.indexAxis||"x"}function hn(t){if("x"===t||"y"===t||"r"===t)return t}function cn(t,...e){if(hn(t))return t;for(const s of e){const e=s.axis||("top"===(i=s.position)||"bottom"===i?"x":"left"===i||"right"===i?"y":void 0)||t.length>1&&hn(t[0].toLowerCase());if(e)return e}var i;throw new Error(`Cannot determine type of '${t}' axis. Please provide 'axis' or 'position' option.`)}function dn(t,e,i){if(i[e+"AxisID"]===t)return{axis:e}}function un(t,e){const i=re[t.type]||{scales:{}},s=e.scales||{},n=ln(t.type,e),a=Object.create(null);return Object.keys(s).forEach((e=>{const r=s[e];if(!o(r))return console.error(`Invalid scale configuration for scale: ${e}`);if(r._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${e}`);const l=cn(e,r,function(t,e){if(e.data&&e.data.datasets){const i=e.data.datasets.filter((e=>e.xAxisID===t||e.yAxisID===t));if(i.length)return dn(t,"x",i[0])||dn(t,"y",i[0])}return{}}(e,t),ue.scales[r.type]),h=function(t,e){return t===e?"_index_":"_value_"}(l,n),c=i.scales||{};a[e]=b(Object.create(null),[{axis:l},r,c[l],c[h]])})),t.data.datasets.forEach((i=>{const n=i.type||t.type,o=i.indexAxis||ln(n,e),r=(re[n]||{}).scales||{};Object.keys(r).forEach((t=>{const e=function(t,e){let i=t;return"_index_"===t?i=e:"_value_"===t&&(i="x"===e?"y":"x"),i}(t,o),n=i[e+"AxisID"]||e;a[n]=a[n]||Object.create(null),b(a[n],[{axis:e},s[n],r[t]])}))})),Object.keys(a).forEach((t=>{const e=a[t];b(e,[ue.scales[e.type],ue.scale])})),a}function fn(t){const e=t.options||(t.options={});e.plugins=l(e.plugins,{}),e.scales=un(t,e)}function gn(t){return(t=t||{}).datasets=t.datasets||[],t.labels=t.labels||[],t}const pn=new Map,mn=new Set;function xn(t,e){let i=pn.get(t);return i||(i=e(),pn.set(t,i),mn.add(i)),i}const bn=(t,e,i)=>{const s=M(e,i);void 0!==s&&t.add(s)};class _n{constructor(t){this._config=function(t){return(t=t||{}).data=gn(t.data),fn(t),t}(t),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(t){this._config.type=t}get data(){return this._config.data}set data(t){this._config.data=gn(t)}get options(){return this._config.options}set options(t){this._config.options=t}get plugins(){return this._config.plugins}update(){const t=this._config;this.clearCache(),fn(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return xn(t,(()=>[[`datasets.${t}`,""]]))}datasetAnimationScopeKeys(t,e){return xn(`${t}.transition.${e}`,(()=>[[`datasets.${t}.transitions.${e}`,`transitions.${e}`],[`datasets.${t}`,""]]))}datasetElementScopeKeys(t,e){return xn(`${t}-${e}`,(()=>[[`datasets.${t}.elements.${e}`,`datasets.${t}`,`elements.${e}`,""]]))}pluginScopeKeys(t){const e=t.id;return xn(`${this.type}-plugin-${e}`,(()=>[[`plugins.${e}`,...t.additionalOptionScopes||[]]]))}_cachedScopes(t,e){const i=this._scopeCache;let s=i.get(t);return s&&!e||(s=new Map,i.set(t,s)),s}getOptionScopes(t,e,i){const{options:s,type:n}=this,o=this._cachedScopes(t,i),a=o.get(e);if(a)return a;const r=new Set;e.forEach((e=>{t&&(r.add(t),e.forEach((e=>bn(r,t,e)))),e.forEach((t=>bn(r,s,t))),e.forEach((t=>bn(r,re[n]||{},t))),e.forEach((t=>bn(r,ue,t))),e.forEach((t=>bn(r,le,t)))}));const l=Array.from(r);return 0===l.length&&l.push(Object.create(null)),mn.has(e)&&o.set(e,l),l}chartOptionScopes(){const{options:t,type:e}=this;return[t,re[e]||{},ue.datasets[e]||{},{type:e},ue,le]}resolveNamedOptions(t,e,i,s=[""]){const o={$shared:!0},{resolver:a,subPrefixes:r}=yn(this._resolverCache,t,s);let l=a;if(function(t,e){const{isScriptable:i,isIndexable:s}=Ye(t);for(const o of e){const e=i(o),a=s(o),r=(a||e)&&t[o];if(e&&(S(r)||vn(r))||a&&n(r))return!0}return!1}(a,e)){o.$shared=!1;l=$e(a,i=S(i)?i():i,this.createResolver(t,i,r))}for(const t of e)o[t]=l[t];return o}createResolver(t,e,i=[""],s){const{resolver:n}=yn(this._resolverCache,t,i);return o(e)?$e(n,e,void 0,s):n}}function yn(t,e,i){let s=t.get(e);s||(s=new Map,t.set(e,s));const n=i.join();let o=s.get(n);if(!o){o={resolver:je(e,i),subPrefixes:i.filter((t=>!t.toLowerCase().includes("hover")))},s.set(n,o)}return o}const vn=t=>o(t)&&Object.getOwnPropertyNames(t).some((e=>S(t[e])));const Mn=["top","bottom","left","right","chartArea"];function wn(t,e){return"top"===t||"bottom"===t||-1===Mn.indexOf(t)&&"x"===e}function kn(t,e){return function(i,s){return i[t]===s[t]?i[e]-s[e]:i[t]-s[t]}}function Sn(t){const e=t.chart,i=e.options.animation;e.notifyPlugins("afterRender"),d(i&&i.onComplete,[t],e)}function Pn(t){const e=t.chart,i=e.options.animation;d(i&&i.onProgress,[t],e)}function Dn(t){return fe()&&"string"==typeof t?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const Cn={},On=t=>{const e=Dn(t);return Object.values(Cn).filter((t=>t.canvas===e)).pop()};function An(t,e,i){const s=Object.keys(t);for(const n of s){const s=+n;if(s>=e){const o=t[n];delete t[n],(i>0||s>e)&&(t[s+i]=o)}}}class Tn{static defaults=ue;static instances=Cn;static overrides=re;static registry=nn;static version="4.6.1";static getChart=On;static register(...t){nn.add(...t),Ln()}static unregister(...t){nn.remove(...t),Ln()}constructor(t,e){const s=this.config=new _n(e),n=Dn(t),o=On(n);if(o)throw new Error("Canvas is already in use. Chart with ID '"+o.id+"' must be destroyed before the canvas with ID '"+o.canvas.id+"' can be reused.");const a=s.createResolver(s.chartOptionScopes(),this.getContext());this.platform=new(s.platform||Ps(n)),this.platform.updateConfig(s);const r=this.platform.acquireContext(n,a.aspectRatio),l=r&&r.canvas,h=l&&l.height,c=l&&l.width;this.id=i(),this.ctx=r,this.canvas=l,this.width=c,this.height=h,this._options=a,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new on,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=dt((t=>this.update(t)),a.resizeDelay||0),this._dataChanges=[],Cn[this.id]=this,r&&l?(bt.listen(this,"complete",Sn),bt.listen(this,"progress",Pn),this._initialize(),this.attached&&this.update()):console.error("Failed to create chart: can't acquire context from the given item")}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:e},width:i,height:n,_aspectRatio:o}=this;return s(t)?e&&o?o:n?i/n:null:t}get data(){return this.config.data}set data(t){this.config.data=t}get options(){return this._options}set options(t){this.config.options=t}get registry(){return nn}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():ke(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return Te(this.canvas,this.ctx),this}stop(){return bt.stop(this),this}resize(t,e){bt.running(this)?this._resizeBeforeDraw={width:t,height:e}:this._resize(t,e)}_resize(t,e){const i=this.options,s=this.canvas,n=i.maintainAspectRatio&&this.aspectRatio,o=this.platform.getMaximumSize(s,t,e,n),a=i.devicePixelRatio||this.platform.getDevicePixelRatio(),r=this.width?"resize":"attach";this.width=o.width,this.height=o.height,this._aspectRatio=this.aspectRatio,ke(this,a,!0)&&(this.notifyPlugins("resize",{size:o}),d(i.onResize,[this,o],this),this.attached&&this._doResize(r)&&this.render())}ensureScalesHaveIDs(){u(this.options.scales||{},((t,e)=>{t.id=e}))}buildOrUpdateScales(){const t=this.options,e=t.scales,i=this.scales,s=Object.keys(i).reduce(((t,e)=>(t[e]=!1,t)),{});let n=[];e&&(n=n.concat(Object.keys(e).map((t=>{const i=e[t],s=cn(t,i),n="r"===s,o="x"===s;return{options:i,dposition:n?"chartArea":o?"bottom":"left",dtype:n?"radialLinear":o?"category":"linear"}})))),u(n,(e=>{const n=e.options,o=n.id,a=cn(o,n),r=l(n.type,e.dtype);void 0!==n.position&&wn(n.position,a)===wn(e.dposition)||(n.position=e.dposition),s[o]=!0;let h=null;if(o in i&&i[o].type===r)h=i[o];else{h=new(nn.getScale(r))({id:o,type:r,ctx:this.ctx,chart:this}),i[h.id]=h}h.init(n,t)})),u(s,((t,e)=>{t||delete i[e]})),u(i,(t=>{ls.configure(this,t,t.options),ls.addBox(this,t)}))}_updateMetasets(){const t=this._metasets,e=this.data.datasets.length,i=t.length;if(t.sort(((t,e)=>t.index-e.index)),i>e){for(let t=e;te.length&&delete this._stacks,t.forEach(((t,i)=>{0===e.filter((e=>e===t._dataset)).length&&this._destroyDatasetMeta(i)}))}buildOrUpdateControllers(){const t=[],e=this.data.datasets;let i,s;for(this._removeUnreferencedMetasets(),i=0,s=e.length;i{this.getDatasetMeta(e).controller.reset()}),this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const e=this.config;e.update();const i=this._options=e.createResolver(e.chartOptionScopes(),this.getContext()),s=this._animationsDisabled=!i.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),!1===this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0}))return;const n=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let o=0;for(let t=0,e=this.data.datasets.length;t{t.reset()})),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(kn("z","_idx"));const{_active:a,_lastEvent:r}=this;r?this._eventHandler(r,!0):a.length&&this._updateHoverStyles(a,a,!0),this.render()}_updateScales(){u(this.scales,(t=>{ls.removeBox(this,t)})),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,e=new Set(Object.keys(this._listeners)),i=new Set(t.events);P(e,i)&&!!this._responsiveListeners===t.responsive||(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,e=this._getUniformDataChanges()||[];for(const{method:i,start:s,count:n}of e){An(t,s,"_removeElements"===i?-n:n)}}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const e=this.data.datasets.length,i=e=>new Set(t.filter((t=>t[0]===e)).map(((t,e)=>e+","+t.splice(1).join(",")))),s=i(0);for(let t=1;tt.split(","))).map((t=>({method:t[1],start:+t[2],count:+t[3]})))}_updateLayout(t){if(!1===this.notifyPlugins("beforeLayout",{cancelable:!0}))return;ls.update(this,this.width,this.height,t);const e=this.chartArea,i=e.width<=0||e.height<=0;this._layers=[],u(this.boxes,(t=>{i&&"chartArea"===t.position||(t.configure&&t.configure(),this._layers.push(...t._layers()))}),this),this._layers.forEach(((t,e)=>{t._idx=e})),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(!1!==this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})){for(let t=0,e=this.data.datasets.length;t=0;--e)this._drawDataset(t[e]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const e=this.ctx,i={meta:t,index:t.index,cancelable:!0},s=Wi(this,t);!1!==this.notifyPlugins("beforeDatasetDraw",i)&&(s&&Ie(e,s),t.controller.draw(),s&&ze(e),i.cancelable=!1,this.notifyPlugins("afterDatasetDraw",i))}isPointInArea(t){return Re(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,e,i,s){const n=Ki.modes[e];return"function"==typeof n?n(this,t,i,s):[]}getDatasetMeta(t){const e=this.data.datasets[t],i=this._metasets;let s=i.filter((t=>t&&t._dataset===e)).pop();return s||(s={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e&&e.order||0,index:t,_dataset:e,_parsed:[],_sorted:!1},i.push(s)),s}getContext(){return this.$context||(this.$context=Ci(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const e=this.data.datasets[t];if(!e)return!1;const i=this.getDatasetMeta(t);return"boolean"==typeof i.hidden?!i.hidden:!e.hidden}setDatasetVisibility(t,e){this.getDatasetMeta(t).hidden=!e}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,e,i){const s=i?"show":"hide",n=this.getDatasetMeta(t),o=n.controller._resolveAnimations(void 0,s);k(e)?(n.data[e].hidden=!i,this.update()):(this.setDatasetVisibility(t,i),o.update(n,{visible:i}),this.update((e=>e.datasetIndex===t?s:void 0)))}hide(t,e){this._updateVisibility(t,e,!1)}show(t,e){this._updateVisibility(t,e,!0)}_destroyDatasetMeta(t){const e=this._metasets[t];e&&e.controller&&e.controller._destroy(),delete this._metasets[t]}_stop(){let t,e;for(this.stop(),bt.remove(this),t=0,e=this.data.datasets.length;t{e.addEventListener(this,i,s),t[i]=s},s=(t,e,i)=>{t.offsetX=e,t.offsetY=i,this._eventHandler(t)};u(this.options.events,(t=>i(t,s)))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,e=this.platform,i=(i,s)=>{e.addEventListener(this,i,s),t[i]=s},s=(i,s)=>{t[i]&&(e.removeEventListener(this,i,s),delete t[i])},n=(t,e)=>{this.canvas&&this.resize(t,e)};let o;const a=()=>{s("attach",a),this.attached=!0,this.resize(),i("resize",n),i("detach",o)};o=()=>{this.attached=!1,s("resize",n),this._stop(),this._resize(0,0),i("attach",a)},e.isAttached(this.canvas)?a():o()}unbindEvents(){u(this._listeners,((t,e)=>{this.platform.removeEventListener(this,e,t)})),this._listeners={},u(this._responsiveListeners,((t,e)=>{this.platform.removeEventListener(this,e,t)})),this._responsiveListeners=void 0}updateHoverStyle(t,e,i){const s=i?"set":"remove";let n,o,a,r;for("dataset"===e&&(n=this.getDatasetMeta(t[0].datasetIndex),n.controller["_"+s+"DatasetHoverStyle"]()),a=0,r=t.length;a{const i=this.getDatasetMeta(t);if(!i)throw new Error("No dataset found at index "+t);return{datasetIndex:t,element:i.data[e],index:e}}));!f(i,e)&&(this._active=i,this._lastEvent=null,this._updateHoverStyles(i,e))}notifyPlugins(t,e,i){return this._plugins.notify(this,t,e,i)}isPluginEnabled(t){return 1===this._plugins._cache.filter((e=>e.plugin.id===t)).length}_updateHoverStyles(t,e,i){const s=this.options.hover,n=(t,e)=>t.filter((t=>!e.some((e=>t.datasetIndex===e.datasetIndex&&t.index===e.index)))),o=n(e,t),a=i?t:n(t,e);o.length&&this.updateHoverStyle(o,s.mode,!1),a.length&&s.mode&&this.updateHoverStyle(a,s.mode,!0)}_eventHandler(t,e){const i={event:t,replay:e,cancelable:!0,inChartArea:this.isPointInArea(t)},s=e=>(e.options.events||this.options.events).includes(t.native.type);if(!1===this.notifyPlugins("beforeEvent",i,s))return;const n=this._handleEvent(t,e,i.inChartArea);return i.cancelable=!1,this.notifyPlugins("afterEvent",i,s),(n||i.changed)&&this.render(),this}_handleEvent(t,e,i){const{_active:s=[],options:n}=this,o=e,a=this._getActiveElements(t,s,i,o),r=D(t),l=function(t,e,i,s){return i&&"mouseout"!==t.type?s?e:t:null}(t,this._lastEvent,i,r);i&&(this._lastEvent=null,d(n.onHover,[t,a,this],this),r&&d(n.onClick,[t,a,this],this));const h=!f(a,s);return(h||e)&&(this._active=a,this._updateHoverStyles(a,s,e)),this._lastEvent=l,h}_getActiveElements(t,e,i,s){if("mouseout"===t.type)return[];if(!i)return e;const n=this.options.hover;return this.getElementsAtEventForMode(t,n.mode,n,s)}}function Ln(){return u(Tn.instances,(t=>t._plugins.invalidate()))}function En(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class Rn{static override(t){Object.assign(Rn.prototype,t)}options;constructor(t){this.options=t||{}}init(){}formats(){return En()}parse(){return En()}format(){return En()}add(){return En()}diff(){return En()}startOf(){return En()}endOf(){return En()}}var In={_date:Rn};function zn(t){const e=t.iScale,i=function(t,e){if(!t._cache.$bar){const i=t.getMatchingVisibleMetas(e);let s=[];for(let e=0,n=i.length;et-e)))}return t._cache.$bar}(e,t.type);let s,n,o,a,r=e._length;const l=()=>{32767!==o&&-32768!==o&&(k(a)&&(r=Math.min(r,Math.abs(o-a)||r)),a=o)};for(s=0,n=i.length;sMath.abs(r)&&(l=r,h=a),e[i.axis]=h,e._custom={barStart:l,barEnd:h,start:n,end:o,min:a,max:r}}(t,e,i,s):e[i.axis]=i.parse(t,s),e}function Vn(t,e,i,s){const n=t.iScale,o=t.vScale,a=n.getLabels(),r=n===o,l=[];let h,c,d,u;for(h=i,c=i+s;ht.x,i="left",s="right"):(e=t.base"spacing"!==t&&"spacingMode"!==t,_indexable:t=>"spacing"!==t&&"spacingMode"!==t&&!t.startsWith("borderDash")&&!t.startsWith("hoverBorderDash")};static overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data,{labels:{pointStyle:i,textAlign:s,color:n,useBorderRadius:o,borderRadius:a}}=t.legend.options;return e.labels.length&&e.datasets.length?e.labels.map(((e,r)=>{const l=t.getDatasetMeta(0).controller.getStyle(r);return{text:e,fillStyle:l.backgroundColor,fontColor:n,hidden:!t.getDataVisibility(r),lineDash:l.borderDash,lineDashOffset:l.borderDashOffset,lineJoin:l.borderJoinStyle,lineWidth:l.borderWidth,strokeStyle:l.borderColor,textAlign:s,pointStyle:i,borderRadius:o&&(a||l.borderRadius),index:r}})):[]}},onClick(t,e,i){i.chart.toggleDataVisibility(e.index),i.chart.update()}}}};constructor(t,e){super(t,e),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(t,e){const i=this.getDataset().data,s=this._cachedMeta;if(!1===this._parsing)s._parsed=i;else{let n,a,r=t=>+i[t];if(o(i[t])){const{key:t="value"}=this._parsing;r=e=>+M(i[e],t)}for(n=t,a=t+e;nJ(t,r,l,!0)?1:Math.max(e,e*i,s,s*i),g=(t,e,s)=>J(t,r,l,!0)?-1:Math.min(e,e*i,s,s*i),p=f(0,h,d),m=f(E,c,u),x=g(C,h,d),b=g(C+E,c,u);s=(p-x)/2,n=(m-b)/2,o=-(p+x)/2,a=-(m+b)/2}return{ratioX:s,ratioY:n,offsetX:o,offsetY:a}}(u,d,r),x=(i.width-o)/f,b=(i.height-o)/g,_=Math.max(Math.min(x,b)/2,0),y=c(this.options.radius,_),v=(y-Math.max(y*r,0))/this._getVisibleDatasetWeightTotal();this.offsetX=p*y,this.offsetY=m*y,s.total=this.calculateTotal(),this.outerRadius=y-v*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-v*l,0),this.updateElements(n,0,n.length,t)}_circumference(t,e){const i=this.options,s=this._cachedMeta,n=this._getCircumference();return e&&i.animation.animateRotate||!this.chart.getDataVisibility(t)||null===s._parsed[t]||s.data[t].hidden?0:this.calculateCircumference(s._parsed[t]*n/O)}updateElements(t,e,i,s){const n="reset"===s,o=this.chart,a=o.chartArea,r=o.options.animation,l=(a.left+a.right)/2,h=(a.top+a.bottom)/2,c=n&&r.animateScale,d=c?0:this.innerRadius,u=c?0:this.outerRadius,{sharedOptions:f,includeOptions:g}=this._getSharedOptions(e,s);let p,m=this._getRotation();for(p=0;p0&&!isNaN(t)?O*(Math.abs(t)/e):0}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart,s=i.data.labels||[],n=ne(e._parsed[t],i.options.locale);return{label:s[t]||"",value:n}}getMaxBorderWidth(t){let e=0;const i=this.chart;let s,n,o,a,r;if(!t)for(s=0,n=i.data.datasets.length;s{const o=t.getDatasetMeta(0).controller.getStyle(n);return{text:e,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,fontColor:s,lineWidth:o.borderWidth,pointStyle:i,hidden:!t.getDataVisibility(n),index:n}}))}return[]}},onClick(t,e,i){i.chart.toggleDataVisibility(e.index),i.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}};constructor(t,e){super(t,e),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart,s=i.data.labels||[],n=ne(e._parsed[t].r,i.options.locale);return{label:s[t]||"",value:n}}parseObjectData(t,e,i,s){return ii.bind(this)(t,e,i,s)}update(t){const e=this._cachedMeta.data;this._updateRadius(),this.updateElements(e,0,e.length,t)}getMinMax(){const t=this._cachedMeta,e={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return t.data.forEach(((t,i)=>{const s=this.getParsed(i).r;!isNaN(s)&&this.chart.getDataVisibility(i)&&(se.max&&(e.max=s))})),e}_updateRadius(){const t=this.chart,e=t.chartArea,i=t.options,s=Math.min(e.right-e.left,e.bottom-e.top),n=Math.max(s/2,0),o=(n-Math.max(i.cutoutPercentage?n/100*i.cutoutPercentage:1,0))/t.getVisibleDatasetCount();this.outerRadius=n-o*this.index,this.innerRadius=this.outerRadius-o}updateElements(t,e,i,s){const n="reset"===s,o=this.chart,a=o.options.animation,r=this._cachedMeta.rScale,l=r.xCenter,h=r.yCenter,c=r.getIndexAngle(0)-.5*C;let d,u=c;const f=360/this.countVisibleElements();for(d=0;d{!isNaN(this.getParsed(i).r)&&this.chart.getDataVisibility(i)&&e++})),e}_computeAngle(t,e,i){return this.chart.getDataVisibility(t)?$(this.resolveDataElementOptions(t,e).angle||i):0}}var Un=Object.freeze({__proto__:null,BarController:class extends js{static id="bar";static defaults={datasetElementType:!1,dataElementType:"bar",categoryPercentage:.8,barPercentage:.9,grouped:!0,animations:{numbers:{type:"number",properties:["x","y","base","width","height"]}}};static overrides={scales:{_index_:{type:"category",offset:!0,grid:{offset:!0}},_value_:{type:"linear",beginAtZero:!0}}};parsePrimitiveData(t,e,i,s){return Vn(t,e,i,s)}parseArrayData(t,e,i,s){return Vn(t,e,i,s)}parseObjectData(t,e,i,s){const{iScale:n,vScale:o}=t,{xAxisKey:a="x",yAxisKey:r="y"}=this._parsing,l="x"===n.axis?a:r,h="x"===o.axis?a:r,c=[];let d,u,f,g;for(d=i,u=i+s;dt.controller.options.grouped)),o=i.options.stacked,a=[],r=this._cachedMeta.controller.getParsed(e),l=r&&r[i.axis],h=t=>{const e=t._parsed.find((t=>t[i.axis]===l)),n=e&&e[t.vScale.axis];if(s(n)||isNaN(n))return!0};for(const i of n)if((void 0===e||!h(i))&&((!1===o||-1===a.indexOf(i.stack)||void 0===o&&void 0===i.stack)&&a.push(i.stack),i.index===t))break;return a.length||a.push(void 0),a}_getStackCount(t){return this._getStacks(void 0,t).length}_getAxisCount(){return this._getAxis().length}getFirstScaleIdForIndexAxis(){const t=this.chart.scales,e=this.chart.options.indexAxis;return Object.keys(t).filter((i=>t[i].axis===e)).shift()}_getAxis(){const t={},e=this.getFirstScaleIdForIndexAxis();for(const i of this.chart.data.datasets)t[l("x"===this.chart.options.indexAxis?i.xAxisID:i.yAxisID,e)]=!0;return Object.keys(t)}_getStackIndex(t,e,i){const s=this._getStacks(t,i),n=void 0!==e?s.indexOf(e):-1;return-1===n?s.length-1:n}_getRuler(){const t=this.options,e=this._cachedMeta,i=e.iScale,s=[];let n,o;for(n=0,o=e.data.length;n=i?1:-1)}(u,e,r)*a,f===r&&(x-=u/2);const t=e.getPixelForDecimal(0),s=e.getPixelForDecimal(1),o=Math.min(t,s),h=Math.max(t,s);x=Math.max(Math.min(x,h),o),d=x+u,i&&!c&&(l._stacks[e.axis]._visualValues[n]=e.getValueForPixel(d)-e.getValueForPixel(x))}if(x===e.getPixelForValue(r)){const t=F(u)*e.getLineWidthForValue(r)/2;x+=t,u-=t}return{size:u,base:x,head:d,center:d+u/2}}_calculateBarIndexPixels(t,e){const i=e.scale,n=this.options,o=n.skipNull,a=l(n.maxBarThickness,1/0);let r,h;const c=this._getAxisCount();if(e.grouped){const i=o?this._getStackCount(t):e.stackCount,d="flex"===n.barThickness?function(t,e,i,s){const n=e.pixels,o=n[t];let a=t>0?n[t-1]:null,r=t=0;--i)e=Math.max(e,t[i].size(this.resolveDataElementOptions(i))/2);return e>0&&e}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart.data.labels||[],{xScale:s,yScale:n}=e,o=this.getParsed(t),a=s.getLabelForValue(o.x),r=n.getLabelForValue(o.y),l=o._custom;return{label:i[t]||"",value:"("+a+", "+r+(l?", "+l:"")+")"}}update(t){const e=this._cachedMeta.data;this.updateElements(e,0,e.length,t)}updateElements(t,e,i,s){const n="reset"===s,{iScale:o,vScale:a}=this._cachedMeta,{sharedOptions:r,includeOptions:l}=this._getSharedOptions(e,s),h=o.axis,c=a.axis;for(let d=e;d0&&this.getParsed(e-1);for(let i=0;i<_;++i){const g=t[i],_=x?g:{};if(i=b){_.skip=!0;continue}const v=this.getParsed(i),M=s(v[f]),w=_[u]=a.getPixelForValue(v[u],i),k=_[f]=o||M?r.getBasePixel():r.getPixelForValue(l?this.applyStack(r,v,l):v[f],i);_.skip=isNaN(w)||isNaN(k)||M,_.stop=i>0&&Math.abs(v[u]-y[u])>m,p&&(_.parsed=v,_.raw=h.data[i]),d&&(_.options=c||this.resolveDataElementOptions(i,g.active?"active":n)),x||this.updateElement(g,i,_,n),y=v}}getMaxOverflow(){const t=this._cachedMeta,e=t.dataset,i=e.options&&e.options.borderWidth||0,s=t.data||[];if(!s.length)return i;const n=s[0].size(this.resolveDataElementOptions(0)),o=s[s.length-1].size(this.resolveDataElementOptions(s.length-1));return Math.max(i,n,o)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}},PieController:class extends $n{static id="pie";static defaults={cutout:0,rotation:0,circumference:360,radius:"100%"}},PolarAreaController:Yn,RadarController:class extends js{static id="radar";static defaults={datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}};static overrides={aspectRatio:1,scales:{r:{type:"radialLinear"}}};getLabelAndValue(t){const e=this._cachedMeta.vScale,i=this.getParsed(t);return{label:e.getLabels()[t],value:""+e.getLabelForValue(i[e.axis])}}parseObjectData(t,e,i,s){return ii.bind(this)(t,e,i,s)}update(t){const e=this._cachedMeta,i=e.dataset,s=e.data||[],n=e.iScale.getLabels();if(i.points=s,"resize"!==t){const e=this.resolveDatasetElementOptions(t);this.options.showLine||(e.borderWidth=0);const o={_loop:!0,_fullLoop:n.length===s.length,options:e};this.updateElement(i,void 0,o,t)}this.updateElements(s,0,s.length,t)}updateElements(t,e,i,s){const n=this._cachedMeta.rScale,o="reset"===s;for(let a=e;a0&&this.getParsed(e-1);for(let c=e;c0&&Math.abs(i[f]-_[f])>x,m&&(p.parsed=i,p.raw=h.data[c]),u&&(p.options=d||this.resolveDataElementOptions(c,e.active?"active":n)),b||this.updateElement(e,c,p,n),_=i}this.updateSharedOptions(d,n,c)}getMaxOverflow(){const t=this._cachedMeta,e=t.data||[];if(!this.options.showLine){let t=0;for(let i=e.length-1;i>=0;--i)t=Math.max(t,e[i].size(this.resolveDataElementOptions(i))/2);return t>0&&t}const i=t.dataset,s=i.options&&i.options.borderWidth||0;if(!e.length)return s;const n=e[0].size(this.resolveDataElementOptions(0)),o=e[e.length-1].size(this.resolveDataElementOptions(e.length-1));return Math.max(s,n,o)/2}}});function Xn(t,e,i,s){const n=vi(t.options.borderRadius,["outerStart","outerEnd","innerStart","innerEnd"]);const o=(i-e)/2,a=Math.min(o,s*e/2),r=t=>{const e=(i-Math.min(o,t))*s/2;return Z(t,0,Math.min(o,e))};return{outerStart:r(n.outerStart),outerEnd:r(n.outerEnd),innerStart:Z(n.innerStart,0,a),innerEnd:Z(n.innerEnd,0,a)}}function qn(t,e,i,s){return{x:i+t*Math.cos(e),y:s+t*Math.sin(e)}}function Kn(t,e,i,s,n,o){const{x:a,y:r,startAngle:l,pixelMargin:h,innerRadius:c}=e,{spacingMode:d="angular"}=e.options,u=n-l;if(o&&e.options.selfJoin&&Math.abs(u)>=O-1e-4)return void function(t,e,i,s){const{x:n,y:o,startAngle:a,pixelMargin:r,innerRadius:l}=e,h=Math.max(e.outerRadius+s+i-r,0),c=l>0?l+s+i+r:0;t.beginPath(),t.arc(n,o,h,a,a+O),c>0&&(t.moveTo(n+Math.cos(a)*c,o+Math.sin(a)*c),t.arc(n,o,c,a+O,a,!0)),t.closePath()}(t,e,i,s);const f=Math.max(e.outerRadius+s+i-h,0);let g=c>0?c+s+i+h:0,p=0,m=0;const x=f>0?Math.max(.001,u*f-i/C)/f:.001,b=(u-x)/2;if(s){const t=((c>0?c-s:0)+(f>0?f-s:0))/2,e=(u-(0!==t?u*t/(t+s):u))/2,i=t>0?Math.asin(Math.min(1,s/t)):0,n=Math.max(0,x/2-.001),o=Math.sin(n);if("parallel"===d){if(0===g&&o>0){const t=s/o,e=Math.max(0,f-.001);g=Math.min(t,e)}const t=Math.min(f>0?f*o:Number.POSITIVE_INFINITY,g>0?g*o:Number.POSITIVE_INFINITY),e=Math.min(s,t);p=f>0?Math.asin(Math.min(1,e/f)):Math.min(n,i),m=g>0?Math.asin(Math.min(1,e/g)):p}else"proportional"===d?(p=Math.min(n,e),m=Math.min(n,e)):(p=Math.min(n,i),m=Math.min(n,i))}const _=l+b+p,y=n-b-p,v=l+b+m,M=n-b-m,w=Math.min(y-_,M-v),{outerStart:k,outerEnd:S,innerStart:P,innerEnd:D}=Xn(e,g,f,w),A=f-k,T=f-S,L=_+k/A,R=y-S/T,I=g+P,z=g+D,F=v+P/I,V=M-D/z;if(t.beginPath(),o){const e=(L+R)/2;if(t.arc(a,r,f,L,e),t.arc(a,r,f,e,R),S>0){const e=qn(T,R,a,r);t.arc(e.x,e.y,S,R,y+E)}const i=qn(z,M,a,r);if(t.lineTo(i.x,i.y),D>0){const e=qn(z,V,a,r);t.arc(e.x,e.y,D,M+E,V+Math.PI)}const s=(M-D/g+(v+P/g))/2;if(t.arc(a,r,g,M-D/g,s,!0),t.arc(a,r,g,s,v+P/g,!0),P>0){const e=qn(I,F,a,r);t.arc(e.x,e.y,P,F+Math.PI,v-E)}const n=qn(A,_,a,r);if(t.lineTo(n.x,n.y),k>0){const e=qn(A,L,a,r);t.arc(e.x,e.y,k,_-E,L)}}else{t.moveTo(a,r);const e=Math.cos(L)*f+a,i=Math.sin(L)*f+r;t.lineTo(e,i);const s=Math.cos(R)*f+a,n=Math.sin(R)*f+r;t.lineTo(s,n)}t.closePath()}function Gn(t,e,i,s,n){const{fullCircles:o,startAngle:a,circumference:r,options:l}=e,{borderWidth:h,borderJoinStyle:c,borderDash:d,borderDashOffset:u,borderRadius:f}=l,g="inner"===l.borderAlign;if(!h)return;t.setLineDash(d||[]),t.lineDashOffset=u,g?(t.lineWidth=2*h,t.lineJoin=c||"round"):(t.lineWidth=h,t.lineJoin=c||"bevel");let p=e.endAngle;const m=Math.abs(p-a)>=O-1e-4;if(o){Kn(t,e,i,s,p,n);for(let e=0;en?(h=n/l,t.arc(o,a,l,i+h,s-h,!0)):t.arc(o,a,n,i+E,s-E),t.closePath(),t.clip()}(t,e,p);!(m&&e.innerRadius>0)&&l.selfJoin&&p-a>=C&&0===f&&"miter"!==c&&function(t,e,i){const{startAngle:s,x:n,y:o,outerRadius:a,innerRadius:r,options:l}=e,{borderWidth:h,borderJoinStyle:c}=l,d=Math.min(h/a,G(s-i));if(t.beginPath(),t.arc(n,o,a-h/2,s+d/2,i-d/2),r>0){const e=Math.min(h/r,G(s-i));t.arc(n,o,r+h/2,i-e/2,s+e/2,!0)}else{const e=Math.min(h/2,a*G(s-i));if("round"===c)t.arc(n,o,e,i-C/2,s+C/2,!0);else if("bevel"===c){const a=2*e*e,r=-a*Math.cos(i+C/2)+n,l=-a*Math.sin(i+C/2)+o,h=a*Math.cos(s+C/2)+n,c=a*Math.sin(s+C/2)+o;t.lineTo(r,l),t.lineTo(h,c)}}t.closePath(),t.moveTo(0,0),t.rect(0,0,t.canvas.width,t.canvas.height),t.clip("evenodd")}(t,e,p),o||(Kn(t,e,i,s,p,n),t.stroke())}function Jn(t,e,i=e){t.lineCap=l(i.borderCapStyle,e.borderCapStyle),t.setLineDash(l(i.borderDash,e.borderDash)),t.lineDashOffset=l(i.borderDashOffset,e.borderDashOffset),t.lineJoin=l(i.borderJoinStyle,e.borderJoinStyle),t.lineWidth=l(i.borderWidth,e.borderWidth),t.strokeStyle=l(i.borderColor,e.borderColor)}function Zn(t,e,i){t.lineTo(i.x,i.y)}function Qn(t,e,i={}){const s=t.length,{start:n=0,end:o=s-1}=i,{start:a,end:r}=e,l=Math.max(n,a),h=Math.min(o,r),c=nr&&o>r;return{count:s,start:l,loop:e.loop,ilen:h(a+(h?r-t:t))%o,_=()=>{f!==g&&(t.lineTo(m,g),t.lineTo(m,f),t.lineTo(m,p))};for(l&&(d=n[b(0)],t.moveTo(d.x,d.y)),c=0;c<=r;++c){if(d=n[b(c)],d.skip)continue;const e=d.x,i=d.y,s=0|e;s===u?(ig&&(g=i),m=(x*m+e)/++x):(_(),t.lineTo(e,i),u=s,x=0,f=g=i),p=i}_()}function io(t){const e=t.options,i=e.borderDash&&e.borderDash.length;return!(t._decimated||t._loop||e.tension||"monotone"===e.cubicInterpolationMode||e.stepped||i)?eo:to}const so="function"==typeof Path2D;function no(t,e,i,s){so&&!e.options.segment?function(t,e,i,s){let n=e._path;n||(n=e._path=new Path2D,e.path(n,i,s)&&n.closePath()),Jn(t,e.options),t.stroke(n)}(t,e,i,s):function(t,e,i,s){const{segments:n,options:o}=e,a=io(e);for(const r of n)Jn(t,o,r.style),t.beginPath(),a(t,e,r,{start:i,end:i+s-1})&&t.closePath(),t.stroke()}(t,e,i,s)}class oo extends $s{static id="line";static defaults={borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0};static defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};static descriptors={_scriptable:!0,_indexable:t=>"borderDash"!==t&&"fill"!==t};constructor(t){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,t&&Object.assign(this,t)}updateControlPoints(t,e){const i=this.options;if((i.tension||"monotone"===i.cubicInterpolationMode)&&!i.stepped&&!this._pointsUpdated){const s=i.spanGaps?this._loop:this._fullLoop;hi(this._points,i,t,s,e),this._pointsUpdated=!0}}set points(t){this._points=t,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=zi(this,this.options.segment))}first(){const t=this.segments,e=this.points;return t.length&&e[t[0].start]}last(){const t=this.segments,e=this.points,i=t.length;return i&&e[t[i-1].end]}interpolate(t,e){const i=this.options,s=t[e],n=this.points,o=Ii(this,{property:e,start:s,end:s});if(!o.length)return;const a=[],r=function(t){return t.stepped?pi:t.tension||"monotone"===t.cubicInterpolationMode?mi:gi}(i);let l,h;for(l=0,h=o.length;l"borderDash"!==t};circumference;endAngle;fullCircles;innerRadius;outerRadius;pixelMargin;startAngle;circular;constructor(t){super(),this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,this.circular=!1,t&&Object.assign(this,t)}inRange(t,e,i){const s=this.getProps(["x","y"],i),{angle:n,distance:o}=X(s,{x:t,y:e}),{startAngle:a,endAngle:r,innerRadius:h,outerRadius:c,circumference:d}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],i),u=(this.options.spacing+this.options.borderWidth)/2,f=l(d,r-a),g=J(n,a,r)&&a!==r,p=f>=O||g,m=tt(o,h+u,c+u);return p&&m}getCenterPoint(t){const{x:e,y:i,startAngle:s,endAngle:n,innerRadius:o,outerRadius:a}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],t),{offset:r,spacing:l}=this.options,h=(s+n)/2,c=(o+a+l+r)/2;return{x:e+Math.cos(h)*c,y:i+Math.sin(h)*c}}tooltipPosition(t){return this.getCenterPoint(t)}draw(t){const{options:e,circumference:i}=this,s=(e.offset||0)/4,n=(e.spacing||0)/2,o=e.circular;if(this.pixelMargin="inner"===e.borderAlign?.33:0,this.fullCircles=i>O?Math.floor(i/O):0,0===i||this.innerRadius<0||this.outerRadius<0)return;t.save();const a=(this.startAngle+this.endAngle)/2;t.translate(Math.cos(a)*s,Math.sin(a)*s);const r=s*(1-Math.sin(Math.min(C,i||0)));t.fillStyle=e.backgroundColor,t.strokeStyle=e.borderColor,function(t,e,i,s,n){const{fullCircles:o,startAngle:a,circumference:r}=e;let l=e.endAngle;if(o){Kn(t,e,i,s,l,n);for(let e=0;e("string"==typeof e?(i=t.push(e)-1,s.unshift({index:i,label:e})):isNaN(e)&&(i=null),i))(t,e,i,s);return n!==t.lastIndexOf(e)?i:n}function mo(t){const e=this.getLabels();return t>=0&&ts=e?s:t,a=t=>n=i?n:t;if(t){const t=F(s),e=F(n);t<0&&e<0?a(0):t>0&&e>0&&o(0)}if(s===n){let e=0===n?1:Math.abs(.05*n);a(n+e),t||o(s-e)}this.min=s,this.max=n}getTickLimit(){const t=this.options.ticks;let e,{maxTicksLimit:i,stepSize:s}=t;return s?(e=Math.ceil(this.max/s)-Math.floor(this.min/s)+1,e>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${s} would result generating up to ${e} ticks. Limiting to 1000.`),e=1e3)):(e=this.computeTickLimit(),i=i||11),i&&(e=Math.min(i,e)),e}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,e=t.ticks;let i=this.getTickLimit();i=Math.max(2,i);const n=function(t,e){const i=[],{bounds:n,step:o,min:a,max:r,precision:l,count:h,maxTicks:c,maxDigits:d,includeBounds:u}=t,f=o||1,g=c-1,{min:p,max:m}=e,x=!s(a),b=!s(r),_=!s(h),y=(m-p)/(d+1);let v,M,w,k,S=B((m-p)/g/f)*f;if(S<1e-14&&!x&&!b)return[{value:p},{value:m}];k=Math.ceil(m/S)-Math.floor(p/S),k>g&&(S=B(k*S/g/f)*f),s(l)||(v=Math.pow(10,l),S=Math.ceil(S*v)/v),"ticks"===n?(M=Math.floor(p/S)*S,w=Math.ceil(m/S)*S):(M=p,w=m),x&&b&&o&&H((r-a)/o,S/1e3)?(k=Math.round(Math.min((r-a)/S,c)),S=(r-a)/k,M=a,w=r):_?(M=x?a:M,w=b?r:w,k=h-1,S=(w-M)/k):(k=(w-M)/S,k=V(k,Math.round(k),S/1e3)?Math.round(k):Math.ceil(k));const P=Math.max(U(S),U(M));v=Math.pow(10,s(l)?P:l),M=Math.round(M*v)/v,w=Math.round(w*v)/v;let D=0;for(x&&(u&&M!==a?(i.push({value:a}),Mr)break;i.push({value:t})}return b&&u&&w!==r?i.length&&V(i[i.length-1].value,r,xo(r,y,t))?i[i.length-1].value=r:i.push({value:r}):b&&w!==r||i.push({value:w}),i}({maxTicks:i,bounds:t.bounds,min:t.min,max:t.max,precision:e.precision,step:e.stepSize,count:e.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:e.minRotation||0,includeBounds:!1!==e.includeBounds},this._range||this);return"ticks"===t.bounds&&j(n,this,"value"),t.reverse?(n.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),n}configure(){const t=this.ticks;let e=this.min,i=this.max;if(super.configure(),this.options.offset&&t.length){const s=(i-e)/Math.max(t.length-1,1)/2;e-=s,i+=s}this._startValue=e,this._endValue=i,this._valueRange=i-e}getLabelForValue(t){return ne(t,this.chart.options.locale,this.options.ticks.format)}}class _o extends bo{static id="linear";static defaults={ticks:{callback:ae.formatters.numeric}};determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=a(t)?t:0,this.max=a(e)?e:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),e=t?this.width:this.height,i=$(this.options.ticks.minRotation),s=(t?Math.sin(i):Math.cos(i))||.001,n=this._resolveTickFontOptions(0);return Math.ceil(e/Math.min(40,n.lineHeight/s))}getPixelForValue(t){return null===t?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}const yo=t=>Math.floor(z(t)),vo=(t,e)=>Math.pow(10,yo(t)+e);function Mo(t){return 1===t/Math.pow(10,yo(t))}function wo(t,e,i){const s=Math.pow(10,i),n=Math.floor(t/s);return Math.ceil(e/s)-n}function ko(t,{min:e,max:i}){e=r(t.min,e);const s=[],n=yo(e);let o=function(t,e){let i=yo(e-t);for(;wo(t,e,i)>10;)i++;for(;wo(t,e,i)<10;)i--;return Math.min(i,yo(t))}(e,i),a=o<0?Math.pow(10,Math.abs(o)):1;const l=Math.pow(10,o),h=n>o?Math.pow(10,n):0,c=Math.round((e-h)*a)/a,d=Math.floor((e-h)/l/10)*l*10;let u=Math.floor((c-d)/Math.pow(10,o)),f=r(t.min,Math.round((h+d+u*Math.pow(10,o))*a)/a);for(;f=10?u=u<15?15:20:u++,u>=20&&(o++,u=2,a=o>=0?1:a),f=Math.round((h+d+u*Math.pow(10,o))*a)/a;const g=r(t.max,f);return s.push({value:g,major:Mo(g),significand:u}),s}class So extends tn{static id="logarithmic";static defaults={ticks:{callback:ae.formatters.logarithmic,major:{enabled:!0}}};constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(t,e){const i=bo.prototype.parse.apply(this,[t,e]);if(0!==i)return a(i)&&i>0?i:null;this._zero=!0}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=a(t)?Math.max(0,t):null,this.max=a(e)?Math.max(0,e):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!a(this._userMin)&&(this.min=t===vo(this.min,0)?vo(this.min,-1):vo(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let i=this.min,s=this.max;const n=e=>i=t?i:e,o=t=>s=e?s:t;i===s&&(i<=0?(n(1),o(10)):(n(vo(i,-1)),o(vo(s,1)))),i<=0&&n(vo(s,-1)),s<=0&&o(vo(i,1)),this.min=i,this.max=s}buildTicks(){const t=this.options,e=ko({min:this._userMin,max:this._userMax},this);return"ticks"===t.bounds&&j(e,this,"value"),t.reverse?(e.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),e}getLabelForValue(t){return void 0===t?"0":ne(t,this.chart.options.locale,this.options.ticks.format)}configure(){const t=this.min;super.configure(),this._startValue=z(t),this._valueRange=z(this.max)-z(t)}getPixelForValue(t){return void 0!==t&&0!==t||(t=this.min),null===t||isNaN(t)?NaN:this.getPixelForDecimal(t===this.min?0:(z(t)-this._startValue)/this._valueRange)}getValueForPixel(t){const e=this.getDecimalForPixel(t);return Math.pow(10,this._startValue+e*this._valueRange)}}function Po(t){const e=t.ticks;if(e.display&&t.display){const t=ki(e.backdropPadding);return l(e.font&&e.font.size,ue.font.size)+t.height}return 0}function Do(t,e,i,s,n){return t===s||t===n?{start:e-i/2,end:e+i/2}:tn?{start:e-i,end:e}:{start:e,end:e+i}}function Co(t){const e={l:t.left+t._padding.left,r:t.right-t._padding.right,t:t.top+t._padding.top,b:t.bottom-t._padding.bottom},i=Object.assign({},e),s=[],o=[],a=t._pointLabels.length,r=t.options.pointLabels,l=r.centerPointLabels?C/a:0;for(let u=0;ue.r&&(r=(s.end-e.r)/o,t.r=Math.max(t.r,e.r+r)),n.starte.b&&(l=(n.end-e.b)/a,t.b=Math.max(t.b,e.b+l))}function Ao(t,e,i){const s=t.drawingArea,{extra:n,additionalAngle:o,padding:a,size:r}=i,l=t.getPointPosition(e,s+n+a,o),h=Math.round(Y(G(l.angle+E))),c=function(t,e,i){90===i||270===i?t-=e/2:(i>270||i<90)&&(t-=e);return t}(l.y,r.h,h),d=function(t){if(0===t||180===t)return"center";if(t<180)return"left";return"right"}(h),u=function(t,e,i){"right"===i?t-=e:"center"===i&&(t-=e/2);return t}(l.x,r.w,d);return{visible:!0,x:l.x,y:c,textAlign:d,left:u,top:c,right:u+r.w,bottom:c+r.h}}function To(t,e){if(!e)return!0;const{left:i,top:s,right:n,bottom:o}=t;return!(Re({x:i,y:s},e)||Re({x:i,y:o},e)||Re({x:n,y:s},e)||Re({x:n,y:o},e))}function Lo(t,e,i){const{left:n,top:o,right:a,bottom:r}=i,{backdropColor:l}=e;if(!s(l)){const i=wi(e.borderRadius),s=ki(e.backdropPadding);t.fillStyle=l;const h=n-s.left,c=o-s.top,d=a-n+s.width,u=r-o+s.height;Object.values(i).some((t=>0!==t))?(t.beginPath(),He(t,{x:h,y:c,w:d,h:u,radius:i}),t.fill()):t.fillRect(h,c,d,u)}}function Eo(t,e,i,s){const{ctx:n}=t;if(i)n.arc(t.xCenter,t.yCenter,e,0,O);else{let i=t.getPointPosition(0,e);n.moveTo(i.x,i.y);for(let o=1;ot,padding:5,centerPointLabels:!1}};static defaultRoutes={"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"};static descriptors={angleLines:{_fallback:"grid"}};constructor(t){super(t),this.xCenter=void 0,this.yCenter=void 0,this.drawingArea=void 0,this._pointLabels=[],this._pointLabelItems=[]}setDimensions(){const t=this._padding=ki(Po(this.options)/2),e=this.width=this.maxWidth-t.width,i=this.height=this.maxHeight-t.height;this.xCenter=Math.floor(this.left+e/2+t.left),this.yCenter=Math.floor(this.top+i/2+t.top),this.drawingArea=Math.floor(Math.min(e,i)/2)}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!1);this.min=a(t)&&!isNaN(t)?t:0,this.max=a(e)&&!isNaN(e)?e:0,this.handleTickRangeOptions()}computeTickLimit(){return Math.ceil(this.drawingArea/Po(this.options))}generateTickLabels(t){bo.prototype.generateTickLabels.call(this,t),this._pointLabels=this.getLabels().map(((t,e)=>{const i=d(this.options.pointLabels.callback,[t,e],this);return i||0===i?i:""})).filter(((t,e)=>this.chart.getDataVisibility(e)))}fit(){const t=this.options;t.display&&t.pointLabels.display?Co(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(t,e,i,s){this.xCenter+=Math.floor((t-e)/2),this.yCenter+=Math.floor((i-s)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(t,e,i,s))}getIndexAngle(t){return G(t*(O/(this._pointLabels.length||1))+$(this.options.startAngle||0))}getDistanceFromCenterForValue(t){if(s(t))return NaN;const e=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-t)*e:(t-this.min)*e}getValueForDistanceFromCenter(t){if(s(t))return NaN;const e=t/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-e:this.min+e}getPointLabelContext(t){const e=this._pointLabels||[];if(t>=0&&t=0;n--){const e=t._pointLabelItems[n];if(!e.visible)continue;const o=s.setContext(t.getPointLabelContext(n));Lo(i,o,e);const a=Si(o.font),{x:r,y:l,textAlign:h}=e;We(i,t._pointLabels[n],r,l+a.lineHeight/2,a,{color:o.color,textAlign:h,textBaseline:"middle"})}}(this,o),s.display&&this.ticks.forEach(((t,e)=>{if(0!==e||0===e&&this.min<0){r=this.getDistanceFromCenterForValue(t.value);const i=this.getContext(e),a=s.setContext(i),l=n.setContext(i);!function(t,e,i,s,n){const o=t.ctx,a=e.circular,{color:r,lineWidth:l}=e;!a&&!s||!r||!l||i<0||(o.save(),o.strokeStyle=r,o.lineWidth=l,o.setLineDash(n.dash||[]),o.lineDashOffset=n.dashOffset,o.beginPath(),Eo(t,i,a,s),o.closePath(),o.stroke(),o.restore())}(this,a,r,o,l)}})),i.display){for(t.save(),a=o-1;a>=0;a--){const s=i.setContext(this.getPointLabelContext(a)),{color:n,lineWidth:o}=s;o&&n&&(t.lineWidth=o,t.strokeStyle=n,t.setLineDash(s.borderDash),t.lineDashOffset=s.borderDashOffset,r=this.getDistanceFromCenterForValue(e.reverse?this.min:this.max),l=this.getPointPosition(a,r),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(l.x,l.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,e=this.options,i=e.ticks;if(!i.display)return;const s=this.getIndexAngle(0);let n,o;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(s),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach(((s,a)=>{if(0===a&&this.min>=0&&!e.reverse)return;const r=i.setContext(this.getContext(a)),l=Si(r.font);if(n=this.getDistanceFromCenterForValue(this.ticks[a].value),r.showLabelBackdrop){t.font=l.string,o=t.measureText(s.label).width,t.fillStyle=r.backdropColor;const e=ki(r.backdropPadding);t.fillRect(-o/2-e.left,-n-l.size/2-e.top,o+e.width,l.size+e.height)}We(t,s.label,0,-n,l,{color:r.color,strokeColor:r.textStrokeColor,strokeWidth:r.textStrokeWidth})})),t.restore()}drawTitle(){}}const Io={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},zo=Object.keys(Io);function Fo(t,e){return t-e}function Vo(t,e){if(s(e))return null;const i=t._adapter,{parser:n,round:o,isoWeekday:r}=t._parseOpts;let l=e;return"function"==typeof n&&(l=n(l)),a(l)||(l="string"==typeof n?i.parse(l,n):i.parse(l)),null===l?null:(o&&(l="week"!==o||!W(r)&&!0!==r?i.startOf(l,o):i.startOf(l,"isoWeek",r)),+l)}function Bo(t,e,i,s){const n=zo.length;for(let o=zo.indexOf(t);o=e?i[s]:i[n]]=!0}}else t[e]=!0}function Wo(t,e,i){const s=[],n={},o=e.length;let a,r;for(a=0;a=0&&(e[l].major=!0);return e}(t,s,n,i):s}class Ho extends tn{static id="time";static defaults={bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",callback:!1,major:{enabled:!1}}};constructor(t){super(t),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(t,e={}){const i=t.time||(t.time={}),s=this._adapter=new In._date(t.adapters.date);s.init(e),b(i.displayFormats,s.formats()),this._parseOpts={parser:i.parser,round:i.round,isoWeekday:i.isoWeekday},super.init(t),this._normalized=e.normalized}parse(t,e){return void 0===t?null:Vo(this,t)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const t=this.options,e=this._adapter,i=t.time.unit||"day";let{min:s,max:n,minDefined:o,maxDefined:r}=this.getUserBounds();function l(t){o||isNaN(t.min)||(s=Math.min(s,t.min)),r||isNaN(t.max)||(n=Math.max(n,t.max))}o&&r||(l(this._getLabelBounds()),"ticks"===t.bounds&&"labels"===t.ticks.source||l(this.getMinMax(!1))),s=a(s)&&!isNaN(s)?s:+e.startOf(Date.now(),i),n=a(n)&&!isNaN(n)?n:+e.endOf(Date.now(),i)+1,this.min=Math.min(s,n-1),this.max=Math.max(s+1,n)}_getLabelBounds(){const t=this.getLabelTimestamps();let e=Number.POSITIVE_INFINITY,i=Number.NEGATIVE_INFINITY;return t.length&&(e=t[0],i=t[t.length-1]),{min:e,max:i}}buildTicks(){const t=this.options,e=t.time,i=t.ticks,s="labels"===i.source?this.getLabelTimestamps():this._generate();"ticks"===t.bounds&&s.length&&(this.min=this._userMin||s[0],this.max=this._userMax||s[s.length-1]);const n=this.min,o=nt(s,n,this.max);return this._unit=e.unit||(i.autoSkip?Bo(e.minUnit,this.min,this.max,this._getLabelCapacity(n)):function(t,e,i,s,n){for(let o=zo.length-1;o>=zo.indexOf(i);o--){const i=zo[o];if(Io[i].common&&t._adapter.diff(n,s,i)>=e-1)return i}return zo[i?zo.indexOf(i):0]}(this,o.length,e.minUnit,this.min,this.max)),this._majorUnit=i.major.enabled&&"year"!==this._unit?function(t){for(let e=zo.indexOf(t)+1,i=zo.length;e+t.value)))}initOffsets(t=[]){let e,i,s=0,n=0;this.options.offset&&t.length&&(e=this.getDecimalForValue(t[0]),s=1===t.length?1-e:(this.getDecimalForValue(t[1])-e)/2,i=this.getDecimalForValue(t[t.length-1]),n=1===t.length?i:(i-this.getDecimalForValue(t[t.length-2]))/2);const o=t.length<3?.5:.25;s=Z(s,0,o),n=Z(n,0,o),this._offsets={start:s,end:n,factor:1/(s+1+n)}}_generate(){const t=this._adapter,e=this.min,i=this.max,s=this.options,n=s.time,o=n.unit||Bo(n.minUnit,e,i,this._getLabelCapacity(e)),a=l(s.ticks.stepSize,1),r="week"===o&&n.isoWeekday,h=W(r)||!0===r,c={};let d,u,f=e;if(h&&(f=+t.startOf(f,"isoWeek",r)),f=+t.startOf(f,h?"day":o),t.diff(i,e,o)>1e5*a)throw new Error(e+" and "+i+" are too far apart with stepSize of "+a+" "+o);const g="data"===s.ticks.source&&this.getDataTimestamps();for(d=f,u=0;d+t))}getLabelForValue(t){const e=this._adapter,i=this.options.time;return i.tooltipFormat?e.format(t,i.tooltipFormat):e.format(t,i.displayFormats.datetime)}format(t,e){const i=this.options.time.displayFormats,s=this._unit,n=e||i[s];return this._adapter.format(t,n)}_tickFormatFunction(t,e,i,s){const n=this.options,o=n.ticks.callback;if(o)return d(o,[t,e,i],this);const a=n.time.displayFormats,r=this._unit,l=this._majorUnit,h=r&&a[r],c=l&&a[l],u=i[e],f=l&&c&&u&&u.major;return this._adapter.format(t,s||(f?c:h))}generateTickLabels(t){let e,i,s;for(e=0,i=t.length;e0?a:1}getDataTimestamps(){let t,e,i=this._cache.data||[];if(i.length)return i;const s=this.getMatchingVisibleMetas();if(this._normalized&&s.length)return this._cache.data=s[0].controller.getAllParsedValues(this);for(t=0,e=s.length;t=t[r].pos&&e<=t[l].pos&&({lo:r,hi:l}=it(t,"pos",e)),({pos:s,time:o}=t[r]),({pos:n,time:a}=t[l])):(e>=t[r].time&&e<=t[l].time&&({lo:r,hi:l}=it(t,"time",e)),({time:s,pos:o}=t[r]),({time:n,pos:a}=t[l]));const h=n-s;return h?o+(a-o)*(e-s)/h:o}var $o=Object.freeze({__proto__:null,CategoryScale:class extends tn{static id="category";static defaults={ticks:{callback:mo}};constructor(t){super(t),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(t){const e=this._addedLabels;if(e.length){const t=this.getLabels();for(const{index:i,label:s}of e)t[i]===s&&t.splice(i,1);this._addedLabels=[]}super.init(t)}parse(t,e){if(s(t))return null;const i=this.getLabels();return((t,e)=>null===t?null:Z(Math.round(t),0,e))(e=isFinite(e)&&i[e]===t?e:po(i,t,l(e,t),this._addedLabels),i.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let{min:i,max:s}=this.getMinMax(!0);"ticks"===this.options.bounds&&(t||(i=0),e||(s=this.getLabels().length-1)),this.min=i,this.max=s}buildTicks(){const t=this.min,e=this.max,i=this.options.offset,s=[];let n=this.getLabels();n=0===t&&e===n.length-1?n:n.slice(t,e+1),this._valueRange=Math.max(n.length-(i?0:1),1),this._startValue=this.min-(i?.5:0);for(let i=t;i<=e;i++)s.push({value:i});return s}getLabelForValue(t){return mo.call(this,t)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(t){return"number"!=typeof t&&(t=this.parse(t)),null===t?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}},LinearScale:_o,LogarithmicScale:So,RadialLinearScale:Ro,TimeScale:Ho,TimeSeriesScale:class extends Ho{static id="timeseries";static defaults=Ho.defaults;constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),e=this._table=this.buildLookupTable(t);this._minPos=jo(e,this.min),this._tableRange=jo(e,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:e,max:i}=this,s=[],n=[];let o,a,r,l,h;for(o=0,a=t.length;o=e&&l<=i&&s.push(l);if(s.length<2)return[{time:e,pos:0},{time:i,pos:1}];for(o=0,a=s.length;ot-e))}_getTimestampsForTable(){let t=this._cache.all||[];if(t.length)return t;const e=this.getDataTimestamps(),i=this.getLabelTimestamps();return t=e.length&&i.length?this.normalize(e.concat(i)):e.length?e:i,t=this._cache.all=t,t}getDecimalForValue(t){return(jo(this._table,t)-this._minPos)/this._tableRange}getValueForPixel(t){const e=this._offsets,i=this.getDecimalForPixel(t)/e.factor-e.end;return jo(this._table,i*this._tableRange+this._minPos,!0)}}});const Yo=["rgb(54, 162, 235)","rgb(255, 99, 132)","rgb(255, 159, 64)","rgb(255, 205, 86)","rgb(75, 192, 192)","rgb(153, 102, 255)","rgb(201, 203, 207)"],Uo=Yo.map((t=>t.replace("rgb(","rgba(").replace(")",", 0.5)")));function Xo(t){return Yo[t%Yo.length]}function qo(t){return Uo[t%Uo.length]}function Ko(t){let e=0;return(i,s)=>{const n=t.getDatasetMeta(s).controller;n instanceof $n?e=function(t,e){return t.backgroundColor=t.data.map((()=>Xo(e++))),e}(i,e):n instanceof Yn?e=function(t,e){return t.backgroundColor=t.data.map((()=>qo(e++))),e}(i,e):n&&(e=function(t,e){return t.borderColor=Xo(e),t.backgroundColor=qo(e),++e}(i,e))}}function Go(t){let e;for(e in t)if(t[e].borderColor||t[e].backgroundColor)return!0;return!1}var Jo={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(t,e,i){if(!i.enabled)return;const{data:{datasets:s},options:n}=t.config,{elements:o}=n,a=Go(s)||(r=n)&&(r.borderColor||r.backgroundColor)||o&&Go(o)||"rgba(0,0,0,0.1)"!==ue.borderColor||"rgba(0,0,0,0.1)"!==ue.backgroundColor;var r;if(!i.forceOverride&&a)return;const l=Ko(t);s.forEach(l)}};function Zo(t){if(t._decimated){const e=t._data;delete t._decimated,delete t._data,Object.defineProperty(t,"data",{configurable:!0,enumerable:!0,writable:!0,value:e})}}function Qo(t){t.data.datasets.forEach((t=>{Zo(t)}))}var ta={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(t,e,i)=>{if(!i.enabled)return void Qo(t);const n=t.width;t.data.datasets.forEach(((e,o)=>{const{_data:a,indexAxis:r}=e,l=t.getDatasetMeta(o),h=a||e.data;if("y"===Pi([r,t.options.indexAxis]))return;if(!l.controller.supportsDecimation)return;const c=t.scales[l.xAxisID];if("linear"!==c.type&&"time"!==c.type)return;if(t.options.parsing)return;let{start:d,count:u}=function(t,e){const i=e.length;let s,n=0;const{iScale:o}=t,{min:a,max:r,minDefined:l,maxDefined:h}=o.getUserBounds();return l&&(n=Z(it(e,o.axis,a).lo,0,i-1)),s=h?Z(it(e,o.axis,r).hi+1,n,i)-n:i-n,{start:n,count:s}}(l,h);if(u<=(i.threshold||4*n))return void Zo(e);let f;switch(s(a)&&(e._data=h,delete e.data,Object.defineProperty(e,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(t){this._data=t}})),i.algorithm){case"lttb":f=function(t,e,i,s,n){const o=n.samples||s;if(o>=i)return t.slice(e,e+i);const a=[],r=(i-2)/(o-2);let l=0;const h=e+i-1;let c,d,u,f,g,p=e;for(a[l++]=t[p],c=0;cu&&(u=f,d=t[s],g=s);a[l++]=d,p=g}return a[l++]=t[h],a}(h,d,u,n,i);break;case"min-max":f=function(t,e,i,n){let o,a,r,l,h,c,d,u,f,g,p=0,m=0;const x=[],b=e+i-1,_=t[e].x,y=t[b].x-_;for(o=e;og&&(g=l,d=o),p=(m*p+a.x)/++m;else{const i=o-1;if(!s(c)&&!s(d)){const e=Math.min(c,d),s=Math.max(c,d);e!==u&&e!==i&&x.push({...t[e],x:p}),s!==u&&s!==i&&x.push({...t[s],x:p})}o>0&&i!==u&&x.push(t[i]),x.push(a),h=e,m=0,f=g=l,c=d=u=o}}return x}(h,d,u,n);break;default:throw new Error(`Unsupported decimation algorithm '${i.algorithm}'`)}e._decimated=f}))},destroy(t){Qo(t)}};function ea(t,e,i,s){if(s)return;let n=e[t],o=i[t];return"angle"===t&&(n=G(n),o=G(o)),{property:t,start:n,end:o}}function ia(t,e,i){for(;e>t;e--){const t=i[e];if(!isNaN(t.x)&&!isNaN(t.y))break}return e}function sa(t,e,i,s){return t&&e?s(t[i],e[i]):t?t[i]:e?e[i]:0}function na(t,e){let i=[],s=!1;return n(t)?(s=!0,i=t):i=function(t,e){const{x:i=null,y:s=null}=t||{},n=e.points,o=[];return e.segments.forEach((({start:t,end:e})=>{e=ia(t,e,n);const a=n[t],r=n[e];null!==s?(o.push({x:a.x,y:s}),o.push({x:r.x,y:s})):null!==i&&(o.push({x:i,y:a.y}),o.push({x:i,y:r.y}))})),o}(t,e),i.length?new oo({points:i,options:{tension:0},_loop:s,_fullLoop:s}):null}function oa(t){return t&&!1!==t.fill}function aa(t,e,i){let s=t[e].fill;const n=[e];let o;if(!i)return s;for(;!1!==s&&-1===n.indexOf(s);){if(!a(s))return s;if(o=t[s],!o)return!1;if(o.visible)return s;n.push(s),s=o.fill}return!1}function ra(t,e,i){const s=function(t){const e=t.options,i=e.fill;let s=l(i&&i.target,i);void 0===s&&(s=!!e.backgroundColor);if(!1===s||null===s)return!1;if(!0===s)return"origin";return s}(t);if(o(s))return!isNaN(s.value)&&s;let n=parseFloat(s);return a(n)&&Math.floor(n)===n?function(t,e,i,s){"-"!==t&&"+"!==t||(i=e+i);if(i===e||i<0||i>=s)return!1;return i}(s[0],e,n,i):["origin","start","end","stack","shape"].indexOf(s)>=0&&s}function la(t,e,i){const s=[];for(let n=0;n=0;--e){const i=n[e].$filler;i&&(i.line.updateControlPoints(o,i.axis),s&&i.fill&&ua(t.ctx,i,o))}},beforeDatasetsDraw(t,e,i){if("beforeDatasetsDraw"!==i.drawTime)return;const s=t.getSortedVisibleDatasetMetas();for(let e=s.length-1;e>=0;--e){const i=s[e].$filler;oa(i)&&ua(t.ctx,i,t.chartArea)}},beforeDatasetDraw(t,e,i){const s=e.meta.$filler;oa(s)&&"beforeDatasetDraw"===i.drawTime&&ua(t.ctx,s,t.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const _a=(t,e)=>{let{boxHeight:i=e,boxWidth:s=e}=t;return t.usePointStyle&&(i=Math.min(i,e),s=t.pointStyleWidth||Math.min(s,e)),{boxWidth:s,boxHeight:i,itemHeight:Math.max(e,i)}};class ya extends $s{constructor(t){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e,i){this.maxWidth=t,this.maxHeight=e,this._margins=i,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const t=this.options.labels||{};let e=d(t.generateLabels,[this.chart],this)||[];t.filter&&(e=e.filter((e=>t.filter(e,this.chart.data)))),t.sort&&(e=e.sort(((e,i)=>t.sort(e,i,this.chart.data)))),this.options.reverse&&e.reverse(),this.legendItems=e}fit(){const{options:t,ctx:e}=this;if(!t.display)return void(this.width=this.height=0);const i=t.labels,s=Si(i.font),n=s.size,o=this._computeTitleHeight(),{boxWidth:a,itemHeight:r}=_a(i,n);let l,h;e.font=s.string,this.isHorizontal()?(l=this.maxWidth,h=this._fitRows(o,n,a,r)+10):(h=this.maxHeight,l=this._fitCols(o,s,a,r)+10),this.width=Math.min(l,t.maxWidth||this.maxWidth),this.height=Math.min(h,t.maxHeight||this.maxHeight)}_fitRows(t,e,i,s){const{ctx:n,maxWidth:o,options:{labels:{padding:a}}}=this,r=this.legendHitBoxes=[],l=this.lineWidths=[0],h=s+a;let c=t;n.textAlign="left",n.textBaseline="middle";let d=-1,u=-h;return this.legendItems.forEach(((t,f)=>{const g=i+e/2+n.measureText(t.text).width;(0===f||l[l.length-1]+g+2*a>o)&&(c+=h,l[l.length-(f>0?0:1)]=0,u+=h,d++),r[f]={left:0,top:u,row:d,width:g,height:s},l[l.length-1]+=g+a})),c}_fitCols(t,e,i,s){const{ctx:n,maxHeight:o,options:{labels:{padding:a}}}=this,r=this.legendHitBoxes=[],l=this.columnSizes=[],h=o-t;let c=a,d=0,u=0,f=0,g=0;return this.legendItems.forEach(((t,o)=>{const{itemWidth:p,itemHeight:m}=function(t,e,i,s,n){const o=function(t,e,i,s){let n=t.text;n&&"string"!=typeof n&&(n=n.reduce(((t,e)=>t.length>e.length?t:e)));return e+i.size/2+s.measureText(n).width}(s,t,e,i),a=function(t,e,i){let s=t;"string"!=typeof e.text&&(s=va(e,i));return s}(n,s,e.lineHeight);return{itemWidth:o,itemHeight:a}}(i,e,n,t,s);o>0&&u+m+2*a>h&&(c+=d+a,l.push({width:d,height:u}),f+=d+a,g++,d=u=0),r[o]={left:f,top:u,col:g,width:p,height:m},d=Math.max(d,p),u+=m+a})),c+=d,l.push({width:d,height:u}),c}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:e,options:{align:i,labels:{padding:s},rtl:n}}=this,o=Oi(n,this.left,this.width);if(this.isHorizontal()){let n=0,a=ft(i,this.left+s,this.right-this.lineWidths[n]);for(const r of e)n!==r.row&&(n=r.row,a=ft(i,this.left+s,this.right-this.lineWidths[n])),r.top+=this.top+t+s,r.left=o.leftForLtr(o.x(a),r.width),a+=r.width+s}else{let n=0,a=ft(i,this.top+t+s,this.bottom-this.columnSizes[n].height);for(const r of e)r.col!==n&&(n=r.col,a=ft(i,this.top+t+s,this.bottom-this.columnSizes[n].height)),r.top=a,r.left+=this.left+s,r.left=o.leftForLtr(o.x(r.left),r.width),a+=r.height+s}}isHorizontal(){return"top"===this.options.position||"bottom"===this.options.position}draw(){if(this.options.display){const t=this.ctx;Ie(t,this),this._draw(),ze(t)}}_draw(){const{options:t,columnSizes:e,lineWidths:i,ctx:s}=this,{align:n,labels:o}=t,a=ue.color,r=Oi(t.rtl,this.left,this.width),h=Si(o.font),{padding:c}=o,d=h.size,u=d/2;let f;this.drawTitle(),s.textAlign=r.textAlign("left"),s.textBaseline="middle",s.lineWidth=.5,s.font=h.string;const{boxWidth:g,boxHeight:p,itemHeight:m}=_a(o,d),x=this.isHorizontal(),b=this._computeTitleHeight();f=x?{x:ft(n,this.left+c,this.right-i[0]),y:this.top+c+b,line:0}:{x:this.left+c,y:ft(n,this.top+b+c,this.bottom-e[0].height),line:0},Ai(this.ctx,t.textDirection);const _=m+c;this.legendItems.forEach(((y,v)=>{s.strokeStyle=y.fontColor,s.fillStyle=y.fontColor;const M=s.measureText(y.text).width,w=r.textAlign(y.textAlign||(y.textAlign=o.textAlign)),k=g+u+M;let S=f.x,P=f.y;r.setWidth(this.width),x?v>0&&S+k+c>this.right&&(P=f.y+=_,f.line++,S=f.x=ft(n,this.left+c,this.right-i[f.line])):v>0&&P+_>this.bottom&&(S=f.x=S+e[f.line].width+c,f.line++,P=f.y=ft(n,this.top+b+c,this.bottom-e[f.line].height));if(function(t,e,i){if(isNaN(g)||g<=0||isNaN(p)||p<0)return;s.save();const n=l(i.lineWidth,1);if(s.fillStyle=l(i.fillStyle,a),s.lineCap=l(i.lineCap,"butt"),s.lineDashOffset=l(i.lineDashOffset,0),s.lineJoin=l(i.lineJoin,"miter"),s.lineWidth=n,s.strokeStyle=l(i.strokeStyle,a),s.setLineDash(l(i.lineDash,[])),o.usePointStyle){const a={radius:p*Math.SQRT2/2,pointStyle:i.pointStyle,rotation:i.rotation,borderWidth:n},l=r.xPlus(t,g/2);Ee(s,a,l,e+u,o.pointStyleWidth&&g)}else{const o=e+Math.max((d-p)/2,0),a=r.leftForLtr(t,g),l=wi(i.borderRadius);s.beginPath(),Object.values(l).some((t=>0!==t))?He(s,{x:a,y:o,w:g,h:p,radius:l}):s.rect(a,o,g,p),s.fill(),0!==n&&s.stroke()}s.restore()}(r.x(S),P,y),S=gt(w,S+g+u,x?S+k:this.right,t.rtl),function(t,e,i){We(s,i.text,t,e+m/2,h,{strikethrough:i.hidden,textAlign:r.textAlign(i.textAlign)})}(r.x(S),P,y),x)f.x+=k+c;else if("string"!=typeof y.text){const t=h.lineHeight;f.y+=va(y,t)+c}else f.y+=_})),Ti(this.ctx,t.textDirection)}drawTitle(){const t=this.options,e=t.title,i=Si(e.font),s=ki(e.padding);if(!e.display)return;const n=Oi(t.rtl,this.left,this.width),o=this.ctx,a=e.position,r=i.size/2,l=s.top+r;let h,c=this.left,d=this.width;if(this.isHorizontal())d=Math.max(...this.lineWidths),h=this.top+l,c=ft(t.align,c,this.right-d);else{const e=this.columnSizes.reduce(((t,e)=>Math.max(t,e.height)),0);h=l+ft(t.align,this.top,this.bottom-e-t.labels.padding-this._computeTitleHeight())}const u=ft(a,c,c+d);o.textAlign=n.textAlign(ut(a)),o.textBaseline="middle",o.strokeStyle=e.color,o.fillStyle=e.color,o.font=i.string,We(o,e.text,u,h,i)}_computeTitleHeight(){const t=this.options.title,e=Si(t.font),i=ki(t.padding);return t.display?e.lineHeight+i.height:0}_getLegendItemAt(t,e){let i,s,n;if(tt(t,this.left,this.right)&&tt(e,this.top,this.bottom))for(n=this.legendHitBoxes,i=0;it.chart.options.color,boxWidth:40,padding:10,generateLabels(t){const e=t.data.datasets,{labels:{usePointStyle:i,pointStyle:s,textAlign:n,color:o,useBorderRadius:a,borderRadius:r}}=t.legend.options;return t._getSortedDatasetMetas().map((t=>{const l=t.controller.getStyle(i?0:void 0),h=ki(l.borderWidth);return{text:e[t.index].label,fillStyle:l.backgroundColor,fontColor:o,hidden:!t.visible,lineCap:l.borderCapStyle,lineDash:l.borderDash,lineDashOffset:l.borderDashOffset,lineJoin:l.borderJoinStyle,lineWidth:(h.width+h.height)/4,strokeStyle:l.borderColor,pointStyle:s||l.pointStyle,rotation:l.rotation,textAlign:n||l.textAlign,borderRadius:a&&(r||l.borderRadius),datasetIndex:t.index}}),this)}},title:{color:t=>t.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:t=>!t.startsWith("on"),labels:{_scriptable:t=>!["generateLabels","filter","sort"].includes(t)}}};class wa extends $s{constructor(t){super(),this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e){const i=this.options;if(this.left=0,this.top=0,!i.display)return void(this.width=this.height=this.right=this.bottom=0);this.width=this.right=t,this.height=this.bottom=e;const s=n(i.text)?i.text.length:1;this._padding=ki(i.padding);const o=s*Si(i.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=o:this.width=o}isHorizontal(){const t=this.options.position;return"top"===t||"bottom"===t}_drawArgs(t){const{top:e,left:i,bottom:s,right:n,options:o}=this,a=o.align;let r,l,h,c=0;return this.isHorizontal()?(l=ft(a,i,n),h=e+t,r=n-i):("left"===o.position?(l=i+t,h=ft(a,s,e),c=-.5*C):(l=n-t,h=ft(a,e,s),c=.5*C),r=s-e),{titleX:l,titleY:h,maxWidth:r,rotation:c}}draw(){const t=this.ctx,e=this.options;if(!e.display)return;const i=Si(e.font),s=i.lineHeight/2+this._padding.top,{titleX:n,titleY:o,maxWidth:a,rotation:r}=this._drawArgs(s);We(t,e.text,0,0,i,{color:e.color,maxWidth:a,rotation:r,textAlign:ut(e.align),textBaseline:"middle",translation:[n,o]})}}var ka={id:"title",_element:wa,start(t,e,i){!function(t,e){const i=new wa({ctx:t.ctx,options:e,chart:t});ls.configure(t,i,e),ls.addBox(t,i),t.titleBlock=i}(t,i)},stop(t){const e=t.titleBlock;ls.removeBox(t,e),delete t.titleBlock},beforeUpdate(t,e,i){const s=t.titleBlock;ls.configure(t,s,i),s.options=i},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Sa=new WeakMap;var Pa={id:"subtitle",start(t,e,i){const s=new wa({ctx:t.ctx,options:i,chart:t});ls.configure(t,s,i),ls.addBox(t,s),Sa.set(t,s)},stop(t){ls.removeBox(t,Sa.get(t)),Sa.delete(t)},beforeUpdate(t,e,i){const s=Sa.get(t);ls.configure(t,s,i),s.options=i},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Da={average(t){if(!t.length)return!1;let e,i,s=new Set,n=0,o=0;for(e=0,i=t.length;et+e))/s.size,y:n/o}},nearest(t,e){if(!t.length)return!1;let i,s,n,o=e.x,a=e.y,r=Number.POSITIVE_INFINITY;for(i=0,s=t.length;i-1?t.split("\n"):t}function Aa(t,e){const{element:i,datasetIndex:s,index:n}=e,o=t.getDatasetMeta(s).controller,{label:a,value:r}=o.getLabelAndValue(n);return{chart:t,label:a,parsed:o.getParsed(n),raw:t.data.datasets[s].data[n],formattedValue:r,dataset:o.getDataset(),dataIndex:n,datasetIndex:s,element:i}}function Ta(t,e){const i=t.chart.ctx,{body:s,footer:n,title:o}=t,{boxWidth:a,boxHeight:r}=e,l=Si(e.bodyFont),h=Si(e.titleFont),c=Si(e.footerFont),d=o.length,f=n.length,g=s.length,p=ki(e.padding);let m=p.height,x=0,b=s.reduce(((t,e)=>t+e.before.length+e.lines.length+e.after.length),0);if(b+=t.beforeBody.length+t.afterBody.length,d&&(m+=d*h.lineHeight+(d-1)*e.titleSpacing+e.titleMarginBottom),b){m+=g*(e.displayColors?Math.max(r,l.lineHeight):l.lineHeight)+(b-g)*l.lineHeight+(b-1)*e.bodySpacing}f&&(m+=e.footerMarginTop+f*c.lineHeight+(f-1)*e.footerSpacing);let _=0;const y=function(t){x=Math.max(x,i.measureText(t).width+_)};return i.save(),i.font=h.string,u(t.title,y),i.font=l.string,u(t.beforeBody.concat(t.afterBody),y),_=e.displayColors?a+2+e.boxPadding:0,u(s,(t=>{u(t.before,y),u(t.lines,y),u(t.after,y)})),_=0,i.font=c.string,u(t.footer,y),i.restore(),x+=p.width,{width:x,height:m}}function La(t,e,i,s){const{x:n,width:o}=i,{width:a,chartArea:{left:r,right:l}}=t;let h="center";return"center"===s?h=n<=(r+l)/2?"left":"right":n<=o/2?h="left":n>=a-o/2&&(h="right"),function(t,e,i,s){const{x:n,width:o}=s,a=i.caretSize+i.caretPadding;return"left"===t&&n+o+a>e.width||"right"===t&&n-o-a<0||void 0}(h,t,e,i)&&(h="center"),h}function Ea(t,e,i){const s=i.yAlign||e.yAlign||function(t,e){const{y:i,height:s}=e;return it.height-s/2?"bottom":"center"}(t,i);return{xAlign:i.xAlign||e.xAlign||La(t,e,i,s),yAlign:s}}function Ra(t,e,i,s){const{caretSize:n,caretPadding:o,cornerRadius:a}=t,{xAlign:r,yAlign:l}=i,h=n+o,{topLeft:c,topRight:d,bottomLeft:u,bottomRight:f}=wi(a);let g=function(t,e){let{x:i,width:s}=t;return"right"===e?i-=s:"center"===e&&(i-=s/2),i}(e,r);const p=function(t,e,i){let{y:s,height:n}=t;return"top"===e?s+=i:s-="bottom"===e?n+i:n/2,s}(e,l,h);return"center"===l?"left"===r?g+=h:"right"===r&&(g-=h):"left"===r?g-=Math.max(c,u)+n:"right"===r&&(g+=Math.max(d,f)+n),{x:Z(g,0,s.width-e.width),y:Z(p,0,s.height-e.height)}}function Ia(t,e,i){const s=ki(i.padding);return"center"===e?t.x+t.width/2:"right"===e?t.x+t.width-s.right:t.x+s.left}function za(t){return Ca([],Oa(t))}function Fa(t,e){const i=e&&e.dataset&&e.dataset.tooltip&&e.dataset.tooltip.callbacks;return i?t.override(i):t}const Va={beforeTitle:e,title(t){if(t.length>0){const e=t[0],i=e.chart.data.labels,s=i?i.length:0;if(this&&this.options&&"dataset"===this.options.mode)return e.dataset.label||"";if(e.label)return e.label;if(s>0&&e.dataIndex{const e={before:[],lines:[],after:[]},n=Fa(i,t);Ca(e.before,Oa(Ba(n,"beforeLabel",this,t))),Ca(e.lines,Ba(n,"label",this,t)),Ca(e.after,Oa(Ba(n,"afterLabel",this,t))),s.push(e)})),s}getAfterBody(t,e){return za(Ba(e.callbacks,"afterBody",this,t))}getFooter(t,e){const{callbacks:i}=e,s=Ba(i,"beforeFooter",this,t),n=Ba(i,"footer",this,t),o=Ba(i,"afterFooter",this,t);let a=[];return a=Ca(a,Oa(s)),a=Ca(a,Oa(n)),a=Ca(a,Oa(o)),a}_createItems(t){const e=this._active,i=this.chart.data,s=[],n=[],o=[];let a,r,l=[];for(a=0,r=e.length;at.filter(e,s,n,i)))),t.itemSort&&(l=l.sort(((e,s)=>t.itemSort(e,s,i)))),u(l,(e=>{const i=Fa(t.callbacks,e);s.push(Ba(i,"labelColor",this,e)),n.push(Ba(i,"labelPointStyle",this,e)),o.push(Ba(i,"labelTextColor",this,e))})),this.labelColors=s,this.labelPointStyles=n,this.labelTextColors=o,this.dataPoints=l,l}update(t,e){const i=this.options.setContext(this.getContext()),s=this._active;let n,o=[];if(s.length){const t=Da[i.position].call(this,s,this._eventPosition);o=this._createItems(i),this.title=this.getTitle(o,i),this.beforeBody=this.getBeforeBody(o,i),this.body=this.getBody(o,i),this.afterBody=this.getAfterBody(o,i),this.footer=this.getFooter(o,i);const e=this._size=Ta(this,i),a=Object.assign({},t,e),r=Ea(this.chart,i,a),l=Ra(i,a,r,this.chart);this.xAlign=r.xAlign,this.yAlign=r.yAlign,n={opacity:1,x:l.x,y:l.y,width:e.width,height:e.height,caretX:t.x,caretY:t.y}}else 0!==this.opacity&&(n={opacity:0});this._tooltipItems=o,this.$context=void 0,n&&this._resolveAnimations().update(this,n),t&&i.external&&i.external.call(this,{chart:this.chart,tooltip:this,replay:e})}drawCaret(t,e,i,s){const n=this.getCaretPosition(t,i,s);e.lineTo(n.x1,n.y1),e.lineTo(n.x2,n.y2),e.lineTo(n.x3,n.y3)}getCaretPosition(t,e,i){const{xAlign:s,yAlign:n}=this,{caretSize:o,cornerRadius:a}=i,{topLeft:r,topRight:l,bottomLeft:h,bottomRight:c}=wi(a),{x:d,y:u}=t,{width:f,height:g}=e;let p,m,x,b,_,y;return"center"===n?(_=u+g/2,"left"===s?(p=d,m=p-o,b=_+o,y=_-o):(p=d+f,m=p+o,b=_-o,y=_+o),x=p):(m="left"===s?d+Math.max(r,h)+o:"right"===s?d+f-Math.max(l,c)-o:this.caretX,"top"===n?(b=u,_=b-o,p=m-o,x=m+o):(b=u+g,_=b+o,p=m+o,x=m-o),y=b),{x1:p,x2:m,x3:x,y1:b,y2:_,y3:y}}drawTitle(t,e,i){const s=this.title,n=s.length;let o,a,r;if(n){const l=Oi(i.rtl,this.x,this.width);for(t.x=Ia(this,i.titleAlign,i),e.textAlign=l.textAlign(i.titleAlign),e.textBaseline="middle",o=Si(i.titleFont),a=i.titleSpacing,e.fillStyle=i.titleColor,e.font=o.string,r=0;r0!==t))?(t.beginPath(),t.fillStyle=n.multiKeyBackground,He(t,{x:e,y:g,w:h,h:l,radius:r}),t.fill(),t.stroke(),t.fillStyle=a.backgroundColor,t.beginPath(),He(t,{x:i,y:g+1,w:h-2,h:l-2,radius:r}),t.fill()):(t.fillStyle=n.multiKeyBackground,t.fillRect(e,g,h,l),t.strokeRect(e,g,h,l),t.fillStyle=a.backgroundColor,t.fillRect(i,g+1,h-2,l-2))}t.fillStyle=this.labelTextColors[i]}drawBody(t,e,i){const{body:s}=this,{bodySpacing:n,bodyAlign:o,displayColors:a,boxHeight:r,boxWidth:l,boxPadding:h}=i,c=Si(i.bodyFont);let d=c.lineHeight,f=0;const g=Oi(i.rtl,this.x,this.width),p=function(i){e.fillText(i,g.x(t.x+f),t.y+d/2),t.y+=d+n},m=g.textAlign(o);let x,b,_,y,v,M,w;for(e.textAlign=o,e.textBaseline="middle",e.font=c.string,t.x=Ia(this,m,i),e.fillStyle=i.bodyColor,u(this.beforeBody,p),f=a&&"right"!==m?"center"===o?l/2+h:l+2+h:0,y=0,M=s.length;y0&&e.stroke()}_updateAnimationTarget(t){const e=this.chart,i=this.$animations,s=i&&i.x,n=i&&i.y;if(s||n){const i=Da[t.position].call(this,this._active,this._eventPosition);if(!i)return;const o=this._size=Ta(this,t),a=Object.assign({},i,this._size),r=Ea(e,t,a),l=Ra(t,a,r,e);s._to===l.x&&n._to===l.y||(this.xAlign=r.xAlign,this.yAlign=r.yAlign,this.width=o.width,this.height=o.height,this.caretX=i.x,this.caretY=i.y,this._resolveAnimations().update(this,l))}}_willRender(){return!!this.opacity}draw(t){const e=this.options.setContext(this.getContext());let i=this.opacity;if(!i)return;this._updateAnimationTarget(e);const s={width:this.width,height:this.height},n={x:this.x,y:this.y};i=Math.abs(i)<.001?0:i;const o=ki(e.padding),a=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;e.enabled&&a&&(t.save(),t.globalAlpha=i,this.drawBackground(n,t,s,e),Ai(t,e.textDirection),n.y+=o.top,this.drawTitle(n,t,e),this.drawBody(n,t,e),this.drawFooter(n,t,e),Ti(t,e.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,e){const i=this._active,s=t.map((({datasetIndex:t,index:e})=>{const i=this.chart.getDatasetMeta(t);if(!i)throw new Error("Cannot find a dataset at index "+t);return{datasetIndex:t,element:i.data[e],index:e}})),n=!f(i,s),o=this._positionChanged(s,e);(n||o)&&(this._active=s,this._eventPosition=e,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,e,i=!0){if(e&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const s=this.options,n=this._active||[],o=this._getActiveElements(t,n,e,i),a=this._positionChanged(o,t),r=e||!f(o,n)||a;return r&&(this._active=o,(s.enabled||s.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,e))),r}_getActiveElements(t,e,i,s){const n=this.options;if("mouseout"===t.type)return[];if(!s)return e.filter((t=>this.chart.data.datasets[t.datasetIndex]&&void 0!==this.chart.getDatasetMeta(t.datasetIndex).controller.getParsed(t.index)));const o=this.chart.getElementsAtEventForMode(t,n.mode,n,i);return n.reverse&&o.reverse(),o}_positionChanged(t,e){const{caretX:i,caretY:s,options:n}=this,o=Da[n.position].call(this,t,e);return!1!==o&&(i!==o.x||s!==o.y)}}var Wa={id:"tooltip",_element:Na,positioners:Da,afterInit(t,e,i){i&&(t.tooltip=new Na({chart:t,options:i}))},beforeUpdate(t,e,i){t.tooltip&&t.tooltip.initialize(i)},reset(t,e,i){t.tooltip&&t.tooltip.initialize(i)},afterDraw(t){const e=t.tooltip;if(e&&e._willRender()){const i={tooltip:e};if(!1===t.notifyPlugins("beforeTooltipDraw",{...i,cancelable:!0}))return;e.draw(t.ctx),t.notifyPlugins("afterTooltipDraw",i)}},afterEvent(t,e){if(t.tooltip){const i=e.replay;t.tooltip.handleEvent(e.event,i,e.inChartArea)&&(e.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(t,e)=>e.bodyFont.size,boxWidth:(t,e)=>e.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:Va},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:t=>"filter"!==t&&"itemSort"!==t&&"external"!==t,_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};return Tn.register(Un,$o,go,t),Tn.helpers={...Hi},Tn._adapters=In,Tn.Animation=As,Tn.Animations=Ts,Tn.animator=bt,Tn.controllers=nn.controllers.items,Tn.DatasetController=js,Tn.Element=$s,Tn.elements=go,Tn.Interaction=Ki,Tn.layouts=ls,Tn.platforms=Ds,Tn.Scale=tn,Tn.Ticks=ae,Object.assign(Tn,Un,$o,go,t,Ds),Tn.Chart=Tn,"undefined"!=typeof window&&(window.Chart=Tn),Tn})); //# sourceMappingURL=chart.umd.min.js.map